]> git.baikalelectronics.ru Git - kernel.git/commit
net: phy: micrel: add Asym Pause workaround
authorAntoine Tenart <antoine.tenart@bootlin.com>
Tue, 16 Apr 2019 10:10:20 +0000 (12:10 +0200)
committerDavid S. Miller <davem@davemloft.net>
Wed, 17 Apr 2019 04:36:40 +0000 (21:36 -0700)
commit1a9757c46d77a09d5af524a3b29230f9e6849ac6
tree1975307d7f0fff4e866c590c9c64c9eb6531f9b6
parent8ffa477cc1c30b013f9132775c9a30f563b5f403
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.

Signed-off-by: Antoine Tenart <antoine.tenart@bootlin.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/phy/micrel.c