aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/net/pcnet32.c5
-rw-r--r--drivers/net/r8169.c2
-rw-r--r--drivers/net/sky2.c3
3 files changed, 10 insertions, 0 deletions
diff --git a/drivers/net/pcnet32.c b/drivers/net/pcnet32.c
index ff92aca0a7b..90498ffe26f 100644
--- a/drivers/net/pcnet32.c
+++ b/drivers/net/pcnet32.c
@@ -455,9 +455,14 @@ static void pcnet32_netif_start(struct net_device *dev)
455{ 455{
456#ifdef CONFIG_PCNET32_NAPI 456#ifdef CONFIG_PCNET32_NAPI
457 struct pcnet32_private *lp = netdev_priv(dev); 457 struct pcnet32_private *lp = netdev_priv(dev);
458 ulong ioaddr = dev->base_addr;
459 u16 val;
458#endif 460#endif
459 netif_wake_queue(dev); 461 netif_wake_queue(dev);
460#ifdef CONFIG_PCNET32_NAPI 462#ifdef CONFIG_PCNET32_NAPI
463 val = lp->a.read_csr(ioaddr, CSR3);
464 val &= 0x00ff;
465 lp->a.write_csr(ioaddr, CSR3, val);
461 napi_enable(&lp->napi); 466 napi_enable(&lp->napi);
462#endif 467#endif
463} 468}
diff --git a/drivers/net/r8169.c b/drivers/net/r8169.c
index 5863190894c..af8030981f1 100644
--- a/drivers/net/r8169.c
+++ b/drivers/net/r8169.c
@@ -2398,6 +2398,8 @@ static void rtl8169_wait_for_quiescence(struct net_device *dev)
2398 rtl8169_irq_mask_and_ack(ioaddr); 2398 rtl8169_irq_mask_and_ack(ioaddr);
2399 2399
2400#ifdef CONFIG_R8169_NAPI 2400#ifdef CONFIG_R8169_NAPI
2401 tp->intr_mask = 0xffff;
2402 RTL_W16(IntrMask, tp->intr_event);
2401 napi_enable(&tp->napi); 2403 napi_enable(&tp->napi);
2402#endif 2404#endif
2403} 2405}
diff --git a/drivers/net/sky2.c b/drivers/net/sky2.c
index a74fc11a648..52ec89b82f6 100644
--- a/drivers/net/sky2.c
+++ b/drivers/net/sky2.c
@@ -1168,6 +1168,7 @@ static void sky2_vlan_rx_register(struct net_device *dev, struct vlan_group *grp
1168 TX_VLAN_TAG_OFF); 1168 TX_VLAN_TAG_OFF);
1169 } 1169 }
1170 1170
1171 sky2_read32(hw, B0_Y2_SP_LISR);
1171 napi_enable(&hw->napi); 1172 napi_enable(&hw->napi);
1172 netif_tx_unlock_bh(dev); 1173 netif_tx_unlock_bh(dev);
1173} 1174}
@@ -2043,6 +2044,7 @@ static int sky2_change_mtu(struct net_device *dev, int new_mtu)
2043 err = sky2_rx_start(sky2); 2044 err = sky2_rx_start(sky2);
2044 sky2_write32(hw, B0_IMSK, imask); 2045 sky2_write32(hw, B0_IMSK, imask);
2045 2046
2047 sky2_read32(hw, B0_Y2_SP_LISR);
2046 napi_enable(&hw->napi); 2048 napi_enable(&hw->napi);
2047 2049
2048 if (err) 2050 if (err)
@@ -3861,6 +3863,7 @@ static int sky2_debug_show(struct seq_file *seq, void *v)
3861 last = sky2_read16(hw, Y2_QADDR(rxqaddr[port], PREF_UNIT_PUT_IDX)), 3863 last = sky2_read16(hw, Y2_QADDR(rxqaddr[port], PREF_UNIT_PUT_IDX)),
3862 sky2_read16(hw, Y2_QADDR(rxqaddr[port], PREF_UNIT_LAST_IDX))); 3864 sky2_read16(hw, Y2_QADDR(rxqaddr[port], PREF_UNIT_LAST_IDX)));
3863 3865
3866 sky2_read32(hw, B0_Y2_SP_LISR);
3864 napi_enable(&hw->napi); 3867 napi_enable(&hw->napi);
3865 return 0; 3868 return 0;
3866} 3869}