Janusz Krzysztofik <[email protected]> writes:

> On Tue 07 Jun 2011 at 23:17:49 Kevin Hilman wrote:
>> Janusz Krzysztofik <[email protected]> writes:
>> > ... Or should
>> > arch/arm/mach-omap1/pm_bus.c be always built in and
>> > pm_runtime_clk_add_notifier() called from there in order to enable
>> > clocks on device initialization even if CONFIG_PM_RUNTIME is not
>> > set? Or still a better solution?
>> 
>> You're on the right track already.
>> 
>> Yes, the notifier init should be done even on the !PM_RUNTIME case so
>> that clocks are enabled when the device is added and disabled when
>> the device is removed.
>> 
>> Can you try the patch below (only compile tested)
>
> It's OK, but kind of no-op unless something like below is also applied. 

Indeed.

> With it appended to your patch, you can add my Tested-by or what-else-by 
> you may find appropriate.

Thanks, will fold your diff into the patch, add your Tested-by and
submit as a PM fix for v3.0.

Thanks,

Kevin

> Thanks,
> Janusz
>
> ---
> --- git/arch/arm/mach-omap1/Makefile.orig     2011-06-06 18:06:57.000000000 
> +0200
> +++ git/arch/arm/mach-omap1/Makefile  2011-06-07 23:40:11.000000000 +0200
> @@ -4,14 +4,14 @@
>  
>  # Common support
>  obj-y := io.o id.o sram.o time.o irq.o mux.o flash.o serial.o devices.o dma.o
> -obj-y += clock.o clock_data.o opp_data.o reset.o
> +obj-y += clock.o clock_data.o opp_data.o reset.o pm_bus.o
>  
>  obj-$(CONFIG_OMAP_MCBSP) += mcbsp.o
>  
>  obj-$(CONFIG_OMAP_32K_TIMER) += timer32k.o
>  
>  # Power Management
> -obj-$(CONFIG_PM) += pm.o sleep.o pm_bus.o
> +obj-$(CONFIG_PM) += pm.o sleep.o
>  
>  # DSP
>  obj-$(CONFIG_OMAP_MBOX_FWK)  += mailbox_mach.o
> --
>
>> If it works, and with your Tested-by, I'll queue this as a fix for
>> v3.0-rc.
>> 
>> Thanks,
>> 
>> Kevin
>> 
>> >From 971a6b1ba5cbca7b38fb14ae834b124c6e7bf9b5 Mon Sep 17 00:00:00
>> >2001
>> 
>> From: Kevin Hilman <[email protected]>
>> Date: Tue, 7 Jun 2011 14:13:33 -0700
>> Subject: [PATCH] OMAP1: PM: register notifiers with generic clock ops
>> even when !PM_RUNTIME
>> 
>> When runtime PM is disabled, device clocks need to be enabled on
>> device add and disabled on device remove.  This currently is not
>> happening because in the !PM_RUNTIME case, no notifiers are
>> registered for OMAP1 devices.
>> 
>> Fix this by ensuring notifiers are registered, even in the
>> !PM_RUNTIME case.
>> 
>> Reported-by: Janusz Krzysztofik <[email protected]>
>> Signed-off-by: Kevin Hilman <[email protected]>
>> ---
>>  arch/arm/mach-omap1/pm_bus.c |    8 ++++++--
>>  1 files changed, 6 insertions(+), 2 deletions(-)
>> 
>> diff --git a/arch/arm/mach-omap1/pm_bus.c
>> b/arch/arm/mach-omap1/pm_bus.c index fe31d93..334fb88 100644
>> --- a/arch/arm/mach-omap1/pm_bus.c
>> +++ b/arch/arm/mach-omap1/pm_bus.c
>> @@ -56,9 +56,13 @@ static struct dev_power_domain
>> default_power_domain = { USE_PLATFORM_PM_SLEEP_OPS
>>      },
>>  };
>> +#define OMAP1_PWR_DOMAIN (&default_power_domain)
>> +#else
>> +#define OMAP1_PWR_DOMAIN NULL
>> +#endif /* CONFIG_PM_RUNTIME */
>> 
>>  static struct pm_clk_notifier_block platform_bus_notifier = {
>> -    .pwr_domain = &default_power_domain,
>> +    .pwr_domain = OMAP1_PWR_DOMAIN,
>>      .con_ids = { "ick", "fck", NULL, },
>>  };
>> 
>> @@ -72,4 +76,4 @@ static int __init omap1_pm_runtime_init(void)
>>      return 0;
>>  }
>>  core_initcall(omap1_pm_runtime_init);
>> -#endif /* CONFIG_PM_RUNTIME */
>> +
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to