diff options
author | Stephen Hemminger <shemminger@vyatta.com> | 2009-06-17 07:30:32 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-06-17 18:46:48 -0700 |
commit | d104acaf0540aee527d22eafd14b0a3d30be7f81 (patch) | |
tree | 022233f61b944f888a943e8ed5352db89c1662fd | |
parent | 4bb3f522077f6b10531451f50c376d6137ebd364 (diff) |
sky2: turn off pause during shutdown
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>
-rw-r--r-- | drivers/net/sky2.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/sky2.c b/drivers/net/sky2.c index c6ceba95ace..5de2a9063b2 100644 --- a/drivers/net/sky2.c +++ b/drivers/net/sky2.c @@ -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); |