sunxi: cortexa7: fix ethernet link detection on a20-olinuxino-lime2
authorPetr Štetiar <ynezz@true.cz>
Tue, 8 Mar 2022 09:41:24 +0000 (10:41 +0100)
committerPetr Štetiar <ynezz@true.cz>
Mon, 21 Mar 2022 22:05:27 +0000 (23:05 +0100)
commitffa1088f63267f817a3adf34c84b8e8089b1a938
tree2f1ab69a0c3b1767a2abdd0f0991e1aadf5d90ac
parentfa676395136b17d753fd90137e58f02a4fcdb09e
sunxi: cortexa7: fix ethernet link detection on a20-olinuxino-lime2

a20-olinuxino-lime2 is currently having hard time with link detection of
certain 1000Mbit partners due to usage of generic PHY driver, probably
due to following missing workaround introduced in upstream in commit
3aed3e2a143c ("net: phy: micrel: add Asym Pause workaround"):

 The Micrel KSZ9031 PHY may fail to establish a link when the Asymmetric
 Pause capability is set. This issue is described in a Silicon Errata
 (DS80000691D or DS80000692D), which advises to always disable the
 capability. This patch implements the workaround by defining a KSZ9031
 specific get_feature callback to force the Asymmetric Pause capability
 bit to be cleared.

 This fixes issues where the link would not come up at boot time, or when
 the Asym Pause bit was set later on.

As a20-olinuxino-lime2 has Micrel KSZ9031RNXCC-TR Gigabit PHY since
revision H, so we need to use Micrel PHY driver on those devices.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
target/linux/sunxi/cortexa7/config-5.10