sky2: turn off pause during shutdown
authorStephen Hemminger <shemminger@vyatta.com>
Wed, 17 Jun 2009 07:30:32 +0000 (07:30 +0000)
committerDavid S. Miller <davem@davemloft.net>
Thu, 18 Jun 2009 01:46:48 +0000 (18:46 -0700)
This unblocks the chip if it is stuck in pause cycle during
shutdown.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/sky2.c

index c6ceba95ace76f53484cb6ee697636022a689bd0..5de2a9063b2b74ab863ac9c67db880e09197636a 100644 (file)
@@ -1808,7 +1808,8 @@ static int sky2_down(struct net_device *dev)
 
        synchronize_irq(hw->pdev->irq);
 
-       sky2_gmac_reset(hw, port);
+       /* Force flow control off */
+       sky2_write8(hw, SK_REG(port, GMAC_CTRL), GMC_PAUSE_OFF);
 
        /* Stop transmitter */
        sky2_write32(hw, Q_ADDR(txqaddr[port], Q_CSR), BMU_STOP);