On Tue, Feb 20, 2018 at 6:34 PM, Andy Shevchenko
<[email protected]> wrote:
> On Tue, Feb 20, 2018 at 5:03 PM, Pierre Bourdon <[email protected]> wrote:
>> max17042_get_status uses the core power_supply_am_i_supplied. That
>> function relies on DT properties to figure out the power supply
>> topology, and will error out without DT.
>
>> +       psy_cfg.of_node = dev->of_node;
>
> Perhaps do this in general manner, see how GPIOLIB takes care of it:
>
> $ git grep -n -A4 -w CONFIG_OF_GPIO -- drivers/gpio/gpiolib.c
> drivers/gpio/gpiolib.c:1161:#ifdef CONFIG_OF_GPIO
> drivers/gpio/gpiolib.c-1162-    /* If the gpiochip has an assigned OF
> node this takes precedence */
> drivers/gpio/gpiolib.c-1163-    if (chip->of_node)
> drivers/gpio/gpiolib.c-1164-            gdev->dev.of_node = chip->of_node;
> drivers/gpio/gpiolib.c-1165-#endif
> ...

Makes sense. From a quick look in existing drivers, it looks like the
only values being used currently as psy_cfg.of_node are the nodes from
the parent device, so it seems like it could be made generic.

Are we aware of any driver that is not propagating the of_node on
purpose? Is this something that should be supported? If not, I guess
we could get rid of power_supply_config.of_node and always use the one
from the parent device in __power_supply_register.

(I'm very new to this codebase, sorry for the possibly dumb questions!)

-- 
Pierre Bourdon (delroth@)

Reply via email to