On Fri, Sep 13, 2019 at 10:42:38AM -0400, Paul Thomas wrote: > Hello, > > I think I'm seeing an issue with the PHY hardware or PHY driver. What > happens is sometimes (but not always) when I do 'ip link set eth0 > down' followed by 'ip link set eth0 up' I don't ever see an > auto-negotiation again. LEDs don't come on, ethtool reports 'Link > detected: no'. Even physically unplugging and plugging the network > cable doesn't bring it back. I have to do a reboot to get the > networking back. > > When the networking is started I don't see any issue forcing > negotiations by unplugging and plugging the cable. I get standard > messages like this all day long: > [ 21.031793] 003: macb ff0b0000.ethernet eth0: link down > [ 26.142835] 003: macb ff0b0000.ethernet eth0: link up (1000/Full) > > One thing that makes me think this is the PHY is that we have another > Ethernet port using the DP83867 PHY and I can always do ifdown/ifup > with it. > > This is using a 5.2.10 kernel on arm64 zynqmp platform with the macb driver. > > Is this something anyone else has seen? I know there is some Errata > with this part, but I'm hoping there is something to fix or work > around this. Any thoughts on where to look or add debugging would > appreciated.
Hi Paul Are you using interrupts, or polling? If interrupts, try polling? Seems unlikely, but you could be missing an interrupt. There is a fix from Antoine Tenart which suggests asym pause can be an issue? What pause setup are you using? But this is a known issue, which 5.2 should have the fix for. Andrew