aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/dsa/microchip/ksz9477.c
diff options
context:
space:
mode:
authorPaul Barker <pbarker@konsulko.com>2020-09-09 11:04:16 +0100
committerDavid S. Miller <davem@davemloft.net>2020-09-09 11:26:32 -0700
commitade64eb5be9768e40c90ecb01295416abb2ddbac (patch)
treeedc9bd568e562bf15532ec2788c99848f588ad48 /drivers/net/dsa/microchip/ksz9477.c
parentnet: dsa: microchip: Improve phy mode message (diff)
downloadlinux-dev-ade64eb5be9768e40c90ecb01295416abb2ddbac.tar.xz
linux-dev-ade64eb5be9768e40c90ecb01295416abb2ddbac.zip
net: dsa: microchip: Disable RGMII in-band status on KSZ9893
We can't assume that the link partner supports the in-band status reporting which is enabled by default on the KSZ9893 when using RGMII for the upstream port. Signed-off-by: Paul Barker <pbarker@konsulko.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>
Diffstat (limited to '')
-rw-r--r--drivers/net/dsa/microchip/ksz9477.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/dsa/microchip/ksz9477.c b/drivers/net/dsa/microchip/ksz9477.c
index d9030820f406..b62dd64470a8 100644
--- a/drivers/net/dsa/microchip/ksz9477.c
+++ b/drivers/net/dsa/microchip/ksz9477.c
@@ -1235,6 +1235,9 @@ static void ksz9477_port_setup(struct ksz_device *dev, int port, bool cpu_port)
if (dev->interface == PHY_INTERFACE_MODE_RGMII_ID ||
dev->interface == PHY_INTERFACE_MODE_RGMII_TXID)
data8 |= PORT_RGMII_ID_EG_ENABLE;
+ /* On KSZ9893, disable RGMII in-band status support */
+ if (dev->features & IS_9893)
+ data8 &= ~PORT_MII_MAC_MODE;
p->phydev.speed = SPEED_1000;
break;
}