On 06/03/2014 15:51, Gregory CLEMENT wrote: > On 06/03/2014 15:46, Andrew Lunn wrote: >>>>>> I think you can use aliases to get the order correct, independent of >>>>>> how you list them in DT. That should be a lot safer than assuming >>>>>> things are instantiated from top to bottom. >>>>> >>>>> It sounds interesting, how would you do this? >>>> >>>> As there already is in armada-370-xp.dtsi >>>> >>>> aliases { >>>> eth0 = ð0; >>>> eth1 = ð1; >>>> }; >>>> >>>> >>>> eth0: ethernet@70000 { >>>> } >>>> eth1: ethernet@74000 { >>>> } >>>> >>>> This at least works for i2c devices. The pdev->id is set using the >>>> alias number. >>> >>> Well I think it doesn't work with ethernet devices because we already do >>> this in aramda-38x.dtsi: >>> >>> aliases { >>> gpio0 = &gpio0; >>> gpio1 = &gpio1; >>> eth0 = ð0; >>> eth1 = ð1; >>> eth2 = ð2; >>> }; >>> >>> eth1: ethernet@30000 { >>> } >>> eth2: ethernet@34000 { >>> } >>> eth0: ethernet@70000 { >>> } >> >> Ah, Erm, O.K. >> >> It seems to be an i2c thing. Take a look at i2c_add_adapter(). >> >> if (dev->of_node) { >> id = of_alias_get_id(dev->of_node, "i2c"); >> >> You could put something similar into the ethernet driver. >> > > > Actually even what I did, didn't work as I expected. The order should have been changed in > the dsi file. > > I will have a look on the ethernet driver. Well the naming is done in __dev_alloc_name() and it depends on the probe order. So I really wonder if we should not put the ethernet@70000 before the othe Ethernet node in the armada-38x.dts file. Otherwise it is very misleading to have eth0 for the second interface, eth1 for the third one, and eth2 for the first one. Thanks, Gregory > > > Thanks, > > Gregory > > >> Andrew >> > > -- Gregory Clement, Free Electrons Kernel, drivers, real-time and embedded Linux development, consulting, training and support. http://free-electrons.com -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html