net: mvneta: clear interface link status on port disable
authorYelena Krivosheev <[email protected]>
Tue, 19 Dec 2017 16:59:45 +0000 (17:59 +0100)
committerDavid S. Miller <[email protected]>
Wed, 20 Dec 2017 17:24:11 +0000 (12:24 -0500)
When port connect to PHY in polling mode (with poll interval 1 sec),
port and phy link status must be synchronize in order don't loss link
change event.

[[email protected]: add fixes tag]
Cc: <[email protected]>
Fixes: c5aff18204da ("net: mvneta: driver for Marvell Armada 370/XP network unit")
Signed-off-by: Yelena Krivosheev <[email protected]>
Tested-by: Dmitri Epshtein <[email protected]>
Signed-off-by: Gregory CLEMENT <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
drivers/net/ethernet/marvell/mvneta.c

index bc93b69cfd1edcf62d11cd24d41a9ca74b8f0dcc..16b2bfb2cf5172fc8cb80739df4c6093721fa9a4 100644 (file)
@@ -1214,6 +1214,10 @@ static void mvneta_port_disable(struct mvneta_port *pp)
        val &= ~MVNETA_GMAC0_PORT_ENABLE;
        mvreg_write(pp, MVNETA_GMAC_CTRL_0, val);
 
+       pp->link = 0;
+       pp->duplex = -1;
+       pp->speed = 0;
+
        udelay(200);
 }