[PATCH 4/4] mfd: tps65217: Instantiate sub-devices from device tree

Javier Martinez Canillas javier at dowhile0.org
Thu Jun 8 17:00:01 PDT 2017


Hello Grygorii,

[snip]

>>
>> For tps65218 couldn't instead of using mfd_add_devices() for all the
>> sub-devs, had used of_platform_populate() for the ones that have
>> device nodes and mfd_add_devices() only for the "tps65218-regulator"?
>>
>> The commit talks about nodes without compatibles but's actually about
>> sub-devices without an associated device node. For me it makes sense
>> to use of_platform_populate() when the MFD has device nodes for their
>> sub-devices and mfd_add_devices() when DT knows nothing about the
>> sub-devices.
>
> FYI. Below is link discussion I'm referring to between Mark Brown and Andrew F. Davis
> https://lkml.org/lkml/2015/10/22/823
> the same - https://groups.google.com/forum/#!topic/linux.kernel/wQsdSpPMroQ
>

Thanks a lot for the pointer. There's a subtle difference between the
argument you made and the one that Mark is making in this thread
though.

Because you said (sorry if I misunderstood) that mfd_add_devices()
should be used instead of of_device_populate() even when sub-devices
are described as DT nodes (as is the case in the commit you shared)
while Mark is saying that if the sub-devs IP blocks are part of the
MFD, then it shouldn't be exposed in the DT and be instantiated via
mfd_add_devices() and I absolutely agree with that.

So I was arguing for using of_device_populate() if the sub-devices are
described in the DT. If that makes sense or not to expose the
sub-devices in the DT for this particular driver is a different
discussion and I can't comment on that since I'm not familiar with the
HW.

Best regards,
Javier



More information about the linux-arm-kernel mailing list