net: bcmgenet: Workaround #2 for Pi4 Ethernet fail
authorPhil Elwell <phil@raspberrypi.org>
Fri, 9 Aug 2019 07:51:43 +0000 (08:51 +0100)
committerDom Cobley <popcornmix@gmail.com>
Mon, 19 Feb 2024 11:32:54 +0000 (11:32 +0000)
commitfc69d9520fefc62dedc7a9059986171d56ec0bd3
tree8b5a475fcdee35c160c3c72d546e8502b4511d5b
parent5aa8f53e9960fe61ba07bfd8eb7cbea54966fa5e
net: bcmgenet: Workaround #2 for Pi4 Ethernet fail

Some combinations of Pi 4Bs and Ethernet switches don't reliably get a
DCHP-assigned IP address, leaving the unit with a self=assigned 169.254
address. In the failure case, the Pi is left able to receive packets
but not send them, suggesting that the MAC<->PHY link is getting into
a bad state.

It has been found empirically that skipping a reset step by the genet
driver prevents the failures. No downsides have been discovered yet,
and unlike the forced renegotiation it doesn't increase the time to
get an IP address, so the workaround is enabled by default; add

  genet.skip_umac_reset=n

to the command line to disable it.

See: https://github.com/raspberrypi/linux/issues/3108

Signed-off-by: Phil Elwell <phil@raspberrypi.org>
drivers/net/ethernet/broadcom/genet/bcmgenet.c