ath79: add QCA955x SGMII link loss workaround
authorDavid Bauer <mail@david-bauer.net>
Thu, 11 Apr 2019 15:59:43 +0000 (17:59 +0200)
committerAdrian Schmutzler <freifunk@adrianschmutzler.de>
Thu, 23 Jan 2020 14:28:03 +0000 (15:28 +0100)
commit0d416a8d3b990e3b78628f0e7546527709c877f7
tree4de19d42cee647765574ae1a0dc337e22a83a7ef
parent7d39946ea0fe954bcd0c4d52fffc6d9dc6248cf6
ath79: add QCA955x SGMII link loss workaround

This commit adds a workaround for the loss of the SGMII link observed on
the QCA955x generation of SoCs. The workaround originates part from the
U-Boot source code, part from the implementation from AVM found in the
GPL tarball for the AVM FRITZ!WLAN Repeater 450E.

The bug results in a stuck SGMII link between the PHY device and the SoC
side. This has only been observed with the Atheros AR8033 PHY and most
likely all devices using such combination are affected.

It is worked around by reading a hidden SGMII status register and
issuing a SGMII PHY reset until the link becomes useable again.

Signed-off-by: David Bauer <mail@david-bauer.net>
target/linux/ath79/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_main.c
target/linux/ath79/patches-4.14/0038-MIPS-ath79-add-missing-QCA955x-GMAC-registers.patch [new file with mode: 0644]
target/linux/ath79/patches-4.19/0038-MIPS-ath79-add-missing-QCA955x-GMAC-registers.patch [new file with mode: 0644]