Re: [PATCH 1/1] i2c-omap: add mpu wake up latency constraint in i2c

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



* Kevin Hilman <khilman@xxxxxxxxxxxxxxxxxxx> [100426 15:57]:
> Tony Lindgren <tony@xxxxxxxxxxx> writes:
>  
> +#ifdef CONFIG_ARCH_OMAP3
> +/*
> + * omap_i2c_set_wfc_mpu_wkup_lat - sets mpu wake up constraint
> + * @dev:	i2c bus device pointer
> + * @val:	latency constraint to set, -1 to disable constraint
> + *
> + * When waiting for completion of a i2c transfer, we need to set a wake up
> + * latency constraint for the MPU. This is to ensure quick enough wakeup from
> + * idle, when transfer completes.
> + */
> +static void omap_i2c_set_wfc_mpu_wkup_lat(struct device *dev, int val)
> +{
> +	omap_pm_set_max_mpu_wakeup_lat(dev, val);
> +}
> +#endif
> +

Can't you leave out the above too?

> +	struct omap_i2c_bus_platform_data *pd;
>  	struct resource *res;
>  	resource_size_t base, irq;
>  
>  	pdev = &omap_i2c_devices[bus_id - 1];
> +	pd = pdev->dev.platform_data;
>  	if (bus_id == 1) {
>  		res = pdev->resource;
>  		if (cpu_class_is_omap1()) {
> @@ -122,6 +143,8 @@ static int __init omap_i2c_add_bus(int bus_id)
>  		omap1_i2c_mux_pins(bus_id);
>  	if (cpu_class_is_omap2())
>  		omap2_i2c_mux_pins(bus_id);
> +	if (cpu_is_omap34xx())
> +		pd->set_mpu_wkup_lat = omap_i2c_set_wfc_mpu_wkup_lat;

And then just set
		pd->set_mpu_wkup_lat = omap_pm_set_max_mpu_wakeup_lat;

Here instead?

BTW, in your version looks like compile will break if CONFIG_ARCH_OMAP3
is not set.

Tony
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux