[U-Boot-Users] [RFC][PATCH] fdt fixup
Grant Likely
grant.likely at secretlab.ca
Fri Nov 2 05:55:18 CET 2007
On 11/2/07, Kumar Gala <galak at kernel.crashing.org> wrote:
>
> On Nov 1, 2007, at 11:00 PM, Grant Likely wrote:
>
> > On 11/2/07, Kumar Gala <galak at kernel.crashing.org> wrote:
> >>> [snip a bunch more setter functions]
> >>>
> >>> Hi Kumar,
> >>>
> >>> The direction Grant Likely went with 5xxx and where Sergej was
> >>> heading with 82xx (if only I got around to applying his patch) and
> >>> where I want to go is to replace the table-driven methodology with
> >>> direct calls to more generic functions, eliminating the hordes of
> >>> specialized "setter" functions (all nearly identical).
> >>>
> >>> Discussions and patches:
> >>> <http://thread.gmane.org/gmane.comp.boot-loaders.u-boot/32573/
> >>> focus=32573>
> >>> <http://thread.gmane.org/gmane.comp.boot-loaders.u-boot/32577>
> >>>
> >>> If we get the mpc5xxx style setter functions combined with your
> >>> fdt_node_offset_by_prop_and_compat() finding changes, I think we
> >>> would be in fat city.
> >>
> >> So we can easily extend what I have to include generic call backs and
> >> remove the specific set props. The problem I have with the 5xxx
> >> mechanism is its requires too much knowledge of how the device tree
> >> is laid out since it uses explicit paths to the nodes.
> >
> > Yes, I agree. The hard coded paths are stinky. Looking for
> > device_type or compatible might be better.
> >
> > However, even with using some combination of property values, figuring
> > out which device is which is still a problem. (ie, which network
> > device is eth0 and which is eth1?). Relying on the implicit order in
> > the device tree is just as fragile as using the full path. At least
> > with using the full path, you don't run the risk of getting the wrong
> > node (you just don't find the node at all).
>
> I wasn't thinking of using implicit order, We can use reg or the
> node name in addition to compat.
Ah, okay. I wasn't sure if name was optional in your last email.
However, if name is specified does compatible even matter?
Or, on the other hand, is name specific enough? For example; is it
still possible to wire up two 82xx chips back to back and have one CPU
control both socs? In which case you could end up with 2 identical
devices with identical node names in the tree.
Cheers,
g.
--
Grant Likely, B.Sc., P.Eng.
Secret Lab Technologies Ltd.
grant.likely at secretlab.ca
(403) 399-0195
More information about the U-Boot
mailing list