On Wed, Oct 10, 2018 at 9:52 AM Lucas Stach <l.stach@xxxxxxxxxxxxxx> wrote: > > Hi Andrey, > > Am Dienstag, den 09.10.2018, 10:37 -0700 schrieb Andrey Smirnov: > > Code implementing of_device_make_bus_id() in Barebox uses rather old > > implementation from Linux kernel and has a very significan limitation > > in that it will produce identical names for different DT nodes that > > happen to have the same node name as well as "reg" property. > > > > > One such example, that tirggered this change, is "switch@0" nodes that > > can be found in dts/src/arm/vf610-zii-dev-rev-c.dts > > > > This commit replaces original code with the current Linux kernel > > implementation that traverses DT hierarchy from leaf node to its root > > concatenating node names in the process. > > I think this change is what is breaking the imx_thermal driver here. > > This is a bad interaction between the AIODEV framework using the > hwdev->device_node->name as the device name for the aoidev and the > parent device getting the same name with this change. Before this > change the tempmon platform device (which doesn't has an address by > itself) would get a made up bus_no_reg_magic appended. > > Due to both devices having the same name, the device registration for > the aiodev now fails. I've fixed it locally by not using the node name > in the AIODEV framework, but you may prefer to fix this differently. > Something to keep in mind for v3 of this series. > Thanks for finding this out! Added on my things to fix in v3 list. Thanks, Andrey Smirnov _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox