Re: [PATCH v3 06/12] power: pwrseq: simple: Add support for regulator and generic property

From: Krzysztof Kozlowski
Date: Thu Jun 09 2016 - 01:11:49 EST


On 06/09/2016 04:34 AM, Chen-Yu Tsai wrote:
> Hi
>
> On Thu, Jun 9, 2016 at 3:03 AM, Rob Herring <robh@xxxxxxxxxx> wrote:
>> On Tue, Jun 07, 2016 at 11:29:02AM +0200, Krzysztof Kozlowski wrote:
>>> On 06/03/2016 04:02 AM, Rob Herring wrote:
>>>>> Optional properties:
>>>>> - reset-gpios : contains a list of GPIO specifiers. The reset GPIOs are asserted
>>>>> @@ -16,6 +22,7 @@ Optional properties:
>>>>> See ../clocks/clock-bindings.txt for details.
>>>>> - clock-names : Must include the following entry:
>>>>> "ext_clock" (External clock provided to the card).
>>>>> +- ext-supply : External regulator supply
>>>>
>>>> What happens when there are 2 supplies?
>>>>
>>>> I'd prefer the name not be genericish and use the real supply names.
>>>> Then the power seq code should just turn on all supplies it finds. If
>>>> the order or timing to turn on matters, then sorry, no generic sequence.
>>>
>>> I think the generic part for regulators might be a problem. Regulator
>>> API requires a name for the supply... it cannot get "something" or
>>> "everything".
>>
>> That's the downside of variable property names...
>>
>>> The driver could attach itself to any kind of node (where power-sequence
>>> property exists) so the supply name depends on the bindings of device
>>> (not bindings of power sequence driver).
>>>
>>> The power sequence driver could however iterate over child properties
>>> and get the names of all supplies. It is a little bit ugly...
>>
>> Yes. Like this, right?
>>
>> for_each_property_of_node(np, pp) {
>> if (!strstr(pp->name, "-supply"))
>> continue;
>> // found supply
>> }
>>
>> The uglyness can always be improved with a function to do this parsing.
>
> There's already a version of this in simplefb. Maybe it's time to move
> this to a common function?

Thanks, I'll make a generic one and let's see how Mark will respond to it.

Best regards,
Krzysztof