Broken ethernet on SolidRun cubox-i
Michael Walle
michael at walle.cc
Sat Dec 26 07:18:01 EST 2020
Hi Russell,
Ethernet is broken on 5.8+ kernel for "some" cubox-i boards. Some users
reached out to me because they suspected my commit 0465d8f830dc ("net:
phy:
at803x: fix PHY ID masks") for the breakage. But it turned out not to be
the case. Instead on faulty boards the PHY was always on PHY address 4:
[ 4.008024] libphy: fec_enet_mii_bus: probed
[ 4.008151] mdio_bus 2188000.ethernet-1: MDIO device at address 0 is
missing.
[ 4.010155] fec 2188000.ethernet eth0: registered PHC device 0
[..]
[ 19.172510] fec 2188000.ethernet eth0: Unable to connect to phy
# cat
/sys/devices/soc0/soc/2100000.bus/2188000.ethernet/mdio_bus/2188000.ethernet-1/2188000.ethernet-1:04/phy_id
0x004dd072
Thus I suspect your commit 86b08bd5b994 ("ARM: dts: imx6-sr-som: add
ethernet PHY configuration") to be the culprit ;) This will pin the
PHY to address 0. I don't know how it was done before; like was there
autoprobing if there is no "phy-handle" or did the bootloader fix that
inplace. I don't have any cubox-i.
Anyway, I'm not sure what boards have the PHY at address 4. If it is
just per model and affects only the quad-core iMX.6 one or if it is
worse and the exact same model has it on 0 or 4. [1] might imply the
latter. If that is the case, SolidRun has added/removed a pull-down
on LED_ACT sometime during the board revisions.
I've looked at the vendor bootloader and it seems they scan the bus
for the PHY [2].
[1]
https://forum.armbian.com/topic/15418-upgrading-cubox-i-buster-from-kernel-57y-to-58y-breaks-ethernet/?do=findComment&comment=116114
[2]
https://github.com/SolidRun/u-boot/blob/v2018.01-solidrun-a38x/board/solidrun/mx6cuboxi/mx6cuboxi.c#L160
-michael
More information about the linux-arm-kernel
mailing list