Skip to content

Commit

Permalink
sky2: dual port NAPI problem
Browse files Browse the repository at this point in the history
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>
  • Loading branch information
Stephen Hemminger authored and Jeff Garzik committed Dec 26, 2006
1 parent ce9f7fe commit 25d82d7
Showing 1 changed file with 7 additions and 0 deletions.
7 changes: 7 additions & 0 deletions drivers/net/sky2.c
Original file line number Diff line number Diff line change
Expand Up @@ -1511,6 +1511,13 @@ static int sky2_down(struct net_device *dev)
imask &= ~portirq_msk[port];
sky2_write32(hw, B0_IMSK, imask);

/*
* Both ports share the NAPI poll on port 0, so if necessary undo the
* the disable that is done in dev_close.
*/
if (sky2->port == 0 && hw->ports > 1)
netif_poll_enable(dev);

sky2_gmac_reset(hw, port);

/* Stop transmitter */
Expand Down

0 comments on commit 25d82d7

Please sign in to comment.