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 = &eth0;
>>>>                 eth1 = &eth1;
>>>>         };
>>>>
>>>>
>>>>    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 = &eth0;
>>>             eth1 = &eth1;
>>>             eth2 = &eth2;
>>>     };
>>>
>>>     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 linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to