Messages in this thread | | | Subject | Re: [PATCH net v2] net: bcmgenet: Clear ID_MODE_DIS in EXT_RGMII_OOB_CTRL when not needed | From | Florian Fainelli <> | Date | Thu, 7 May 2020 08:54:28 -0700 |
| |
On 5/7/2020 3:03 AM, Marek Szyprowski wrote: > Hi > > On 07.05.2020 11:46, Marek Szyprowski wrote: >> On 25.02.2020 14:11, Nicolas Saenz Julienne wrote: >>> Outdated Raspberry Pi 4 firmware might configure the external PHY as >>> rgmii although the kernel currently sets it as rgmii-rxid. This makes >>> connections unreliable as ID_MODE_DIS is left enabled. To avoid this, >>> explicitly clear that bit whenever we don't need it. >>> >>> Fixes: da38802211cc ("net: bcmgenet: Add RGMII_RXID support") >>> Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de> >> >> I've finally bisected the network issue I have on my RPi4 used for >> testing mainline builds. The bisect pointed to this patch. Once it got >> applied in v5.7-rc1, the networking is broken on my RPi4 in ARM32bit >> mode and kernel compiled from bcm2835_defconfig. I'm using u-boot to >> tftp zImage/dtb/initrd there. After reverting this patch network is >> working fine again. The strange thing is that networking works fine if >> kernel is compiled from multi_v7_defconfig but I don't see any obvious >> difference there. >> >> I'm not sure if u-boot is responsible for this break, but kernel >> definitely should be able to properly reset the hardware to the valid >> state. >> >> I can provide more information, just let me know what is needed. Here >> is the log, I hope it helps: >> >> [ 11.881784] bcmgenet fd580000.ethernet eth0: Link is Up - >> 1Gbps/Full - flow control off >> [ 11.889935] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready >> >> root@target:~# ping host >> PING host (192.168.100.1) 56(84) bytes of data. >> From 192.168.100.53 icmp_seq=1 Destination Host Unreachable >> ... > > Okay, I've played a bit more with this and found that enabling > CONFIG_BROADCOM_PHY fixes this network issue. I wonder if Genet driver > should simply select CONFIG_BROADCOM_PHY the same way as it selects > CONFIG_BCM7XXX_PHY.
Historically GENET has been deployed with an internal PHY and this is still 90% of the GENET users out there on classic Broadcom STB platforms, not counting the 2711. For external PHYs, there is a variety of options here, so selecting CONFIG_BROADCOM_PHY would be just one of the possibilities, I would rather fix this with the bcm2835_defconfig and multi_v7_defconfig update. Would that work for you? -- Florian
| |