Re: [PATCH v2 09/17] of: Port latest of_device_make_bus_id() implementation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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



[Index of Archives]     [Linux Embedded]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux