[PATCH v7 1/5] leds: populate the device's of_node when possible

Jacek Anaszewski jacek.anaszewski at gmail.com
Wed Oct 2 19:47:18 UTC 2019


Hi Jean,

On 10/2/19 3:58 PM, Jean-Jacques Hiblot wrote:
> Hi Jacek,
> 
> On 24/09/2019 23:03, Jacek Anaszewski wrote:
>> Hi Jean,
>>
>> Thank you for rebasing the set
>>
>> On 9/18/19 4:57 PM, Jean-Jacques Hiblot wrote:
>>> If initialization data is available and its fwnode is actually a
>>> of_node,
>>> store this information in the led device's structure. This will allow
>>> the
>>> device to use or provide OF-based API such (devm_xxx).
>>>
>>> Signed-off-by: Jean-Jacques Hiblot <jjhiblot at ti.com>
>>> ---
>>>   drivers/leds/led-class.c | 5 ++++-
>>>   1 file changed, 4 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/drivers/leds/led-class.c b/drivers/leds/led-class.c
>>> index 647b1263c579..c2167b66b61f 100644
>>> --- a/drivers/leds/led-class.c
>>> +++ b/drivers/leds/led-class.c
>>> @@ -276,8 +276,11 @@ int led_classdev_register_ext(struct device
>>> *parent,
>>>           mutex_unlock(&led_cdev->led_access);
>>>           return PTR_ERR(led_cdev->dev);
>>>       }
>>> -    if (init_data && init_data->fwnode)
>>> +    if (init_data && init_data->fwnode) {
>>>           led_cdev->dev->fwnode = init_data->fwnode;
>>> +        if (is_of_node(init_data->fwnode))
>>> +            led_cdev->dev->of_node = to_of_node(init_data->fwnode);
>> It would be step backwards. You can do the conversion in the place of
>> use i.e. in devm_led_get().
> 
> Could be done. But it would break another use case I have. I'm also
> working on the regulator support and for this one, of_node needs to be
> populated.

I thought that regulator core can do the conversion to of_node itself,
but this seems not to be the case.

> Is there a problem populating of_node if the LED is indeed described in
> the DT ?

No, if it is not possible to do it otherwise.

-- 
Best regards,
Jacek Anaszewski


More information about the dri-devel mailing list