diff options
author | Stephen Hemminger <shemminger@osdl.org> | 2006-12-20 16:06:33 -0500 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2006-12-26 16:36:42 -0500 |
commit | 25d82d7a2fc20cc4be414d738139594dc0adf179 (patch) | |
tree | fdfa5c375fb27be9d93a525aa1f16870d95a5b45 /drivers/net/sky2.c | |
parent | ce9f7fe3c3f5b9ed1d3e91db78c45d0df5672816 (diff) |
sky2: dual port NAPI problem
Shutting down port 0 disables the NAPI poll used by both ports.
The long term fix will be to separate NAPI object from net device
until then just reenable if needed.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'drivers/net/sky2.c')
-rw-r--r-- | drivers/net/sky2.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/net/sky2.c b/drivers/net/sky2.c index fb1d2c30c1bb..4fb3db99bcd1 100644 --- a/drivers/net/sky2.c +++ b/drivers/net/sky2.c | |||
@@ -1511,6 +1511,13 @@ static int sky2_down(struct net_device *dev) | |||
1511 | imask &= ~portirq_msk[port]; | 1511 | imask &= ~portirq_msk[port]; |
1512 | sky2_write32(hw, B0_IMSK, imask); | 1512 | sky2_write32(hw, B0_IMSK, imask); |
1513 | 1513 | ||
1514 | /* | ||
1515 | * Both ports share the NAPI poll on port 0, so if necessary undo the | ||
1516 | * the disable that is done in dev_close. | ||
1517 | */ | ||
1518 | if (sky2->port == 0 && hw->ports > 1) | ||
1519 | netif_poll_enable(dev); | ||
1520 | |||
1514 | sky2_gmac_reset(hw, port); | 1521 | sky2_gmac_reset(hw, port); |
1515 | 1522 | ||
1516 | /* Stop transmitter */ | 1523 | /* Stop transmitter */ |