diff --git a/src/drivers/net/forcedeth.c b/src/drivers/net/forcedeth.c index 6876b005..918f502f 100644 --- a/src/drivers/net/forcedeth.c +++ b/src/drivers/net/forcedeth.c @@ -967,6 +967,12 @@ static void forcedeth_link_status ( struct net_device *netdev ) { struct forcedeth_private *priv = netdev_priv ( netdev ); + void *ioaddr = priv->mmio_addr; + u32 mii_status; + + /* Clear the MII link change status */ + mii_status = readl ( ioaddr + NvRegMIIStatus ); + writel ( NVREG_MIISTAT_LINKCHANGE, ioaddr + NvRegMIIStatus ); if ( nv_update_linkspeed ( priv ) == 1 ) netdev_link_up ( netdev );