Subject: [PATCH v4 1/2] ARM: keystone: pm: switch to use generic pm domains

From: [email-masked] (Kevin Hilman)
Date: Thu, 20 Nov 2014 13:48:40 -0800

Geert Uytterhoeven <[email-masked]> writes:

> Hi Kevin,
>
> On Thu, Nov 20, 2014 at 9:22 PM, Kevin Hilman <[email-masked]> wrote:
>> Grygorii Strashko <[email-masked]> writes:
>>> On 11/20/2014 03:32 PM, Geert Uytterhoeven wrote:
>>>> On Thu, Nov 20, 2014 at 2:12 PM, Ulf Hansson <[email-masked]> wrote:
>>
>> [...]
>>
>>>>> So I really think we need to decide on how to address the split of the
>>>>> device clocks. Before that's done, I don't think it make sense to add
>>>>> a "simple-pmdomain" compatible, since it will likely not be that many
>>>>> SoC that can use it.
>>>>>
>>>>> So, does anyone have a suggestion on how to deal with the split of the
>>>>> device clocks into "functional" clocks and into "PM" clocks?
>>>
>>> Would it be better to say "functional" and "optional"? In my opinion
>>> "PM" == "functional". Also, such clock's separation is used in TRM/DM/UMs on HW.
>>
>> Yes!  I really don't like the name "PM" clock, since it's not at all
>> obvious what that means.  To me, "PM" == "functional" as well.
>>
>> So what exactly are we talking about with "PM" clocks, and why are they
>> "special" when it comes to PM domains?  IOW, why are the clocks to be
>> managed during PM domain transitions for a given device any different
>> than the clocks that need to be managed for a runtime suspend/resume (or
>> system suspend/resume) sequence for the same device?
>
> (Speaking for my case, shmobile)
>
> They're not. The clocks to be managed during PM domain transitions are the
> same as the clocks that need to be managed for a runtime suspend/resume
> (or system suspend/resume) sequence.
>
> The special thing is that this is more a platform than a driver thing: the same
> module may have a "PM/functional" clock (that is documented to enable/disable
> the module) on one Soc, but not on another.

So why isn't the presence or absence of the clock described in the .dtsi
for the SoC instead of being handled by special PM domain logic?

Kevin