LINUX.ORG.RU

непонятки с сетевыми интерфейсами в dts на ядре 5.4

 , , , ,


0

1

«никогда такого не было и вот опять!»
в смысле, на ядре 4.4 нижеописаная проблема не наблюдается...

в dts-файле явно написано

aliases {                                                                    
    ethernet0 = &eth0;                                                       
    ethernet1 = &eth1;                                                       
};
...

eth0: ethernet0@ff700000 {                                               
    compatible = "altr,socfpga-stmmac", "snps,dwmac-3.70a", "snps,dwmac", "synopsys,dwmac-14.0";
    altr,sysmgr-syscon = <&sysmgr 0x60 1>;                               
    reg = <0xff700000 0x2000>;
    ...
}

eth1: ethernet1@ff702000 {                                               
    compatible = "altr,socfpga-stmmac", "snps,dwmac-3.70a", "snps,dwmac", "synopsys,dwmac-14.0";
    altr,sysmgr-syscon = <&sysmgr 0x60 2>;
    reg = <0xff702000 0x2000>;
    ...
}

но в половине случаев интерфейсы путаются и получается такая фигня:
[    6.557009] socfpga-dwmac ff702000.ethernet1 eth0: PHY [stmmac-1:01] driver [Micrel KSZ9021 Gigabit PHY]
...
[    6.743780] socfpga-dwmac ff700000.ethernet0 eth1: PHY [stmmac-0:04] driver [max24287++]



поскажите, пожалуйста, как вразумить систему?
// прибегать к созданию udev-правила, наверное, было бы некошерно... :-\

[upd]:
а иногда поднимается только один интерфейс, но и он с неправильным именем:
[    6.724040] socfpga-dwmac ff700000.ethernet0 eth1: PHY [stmmac-0:04] driver [max24287++]
[    6.732881] socfpga-dwmac ff700000.ethernet0 eth1: No Safety Features support found
[    6.740793] socfpga-dwmac ff700000.ethernet0 eth1: registered PTP clock
[    6.747500] socfpga-dwmac ff700000.ethernet0 eth1: configuring for phy/rgmii-id link mode
[    6.760773] socfpga-dwmac ff700000.ethernet0 eth1: Link is Up - 100Mbps/Full - flow control off

Ответ на: комментарий от UVV

простите, протупил %)

но указывают на то, что нужно:

root@socfpga ~# cat /sys/firmware/devicetree/base/aliases/ethernet0
/soc/ethernet0@ff700000
root@socfpga ~# cat /sys/firmware/devicetree/base/aliases/ethernet1
/soc/ethernet1@ff702000


но
[    6.618019] socfpga-dwmac ff702000.ethernet1 eth0: No Safety Features support found
[    6.625916] socfpga-dwmac ff702000.ethernet1 eth0: registered PTP clock
[    6.632532] socfpga-dwmac ff702000.ethernet1 eth0: configuring for phy/rgmii link mode
[    6.768784] max24287_config_init: MII_BMSR = 0x7969
[    6.773911] max24287_config_init: basex features off
[    6.778928] max24287++ stmmac-0:04: max24287++: fake_mii_bus = 0
[    6.785007] socfpga-dwmac ff700000.ethernet0 eth1: PHY [stmmac-0:04] driver [max24287++]

при загрузке...

p.s. по-ходу, без udev-a не обойтись... ;((

metawishmaster ★★★★ ()
Последнее исправление: metawishmaster (всего исправлений: 1)
Ответ на: комментарий от metawishmaster

p.s. по-ходу, без udev-a не обойтись… ;((

Ну у меня вроде бы без udev’a как-то работает. Правда у меня пока не 5.4, а 4.19. Но это изменение прилетело в 4.14 что ли (ЕМНИП).

UVV ★★★★★ ()

Включи device tree overlay, пропиши им обоим для начала

status = "disabled";

и при загрузке из init-скриптов подгружай оверлеи со

status = "ok";

в нужной последовательности ! :)

alx777 ()