diff options
Diffstat (limited to 'drivers/net/ethernet/broadcom/bgmac.c')
-rw-r--r-- | drivers/net/ethernet/broadcom/bgmac.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/net/ethernet/broadcom/bgmac.c b/drivers/net/ethernet/broadcom/bgmac.c index 05c6af6c418f..3007d95fbb9f 100644 --- a/drivers/net/ethernet/broadcom/bgmac.c +++ b/drivers/net/ethernet/broadcom/bgmac.c | |||
@@ -1167,10 +1167,10 @@ static int bgmac_poll(struct napi_struct *napi, int weight) | |||
1167 | bgmac->int_status = 0; | 1167 | bgmac->int_status = 0; |
1168 | } | 1168 | } |
1169 | 1169 | ||
1170 | if (handled < weight) | 1170 | if (handled < weight) { |
1171 | napi_complete(napi); | 1171 | napi_complete(napi); |
1172 | 1172 | bgmac_chip_intrs_on(bgmac); | |
1173 | bgmac_chip_intrs_on(bgmac); | 1173 | } |
1174 | 1174 | ||
1175 | return handled; | 1175 | return handled; |
1176 | } | 1176 | } |
@@ -1515,6 +1515,8 @@ static int bgmac_probe(struct bcma_device *core) | |||
1515 | if (core->bus->sprom.boardflags_lo & BGMAC_BFL_ENETADM) | 1515 | if (core->bus->sprom.boardflags_lo & BGMAC_BFL_ENETADM) |
1516 | bgmac_warn(bgmac, "Support for ADMtek ethernet switch not implemented\n"); | 1516 | bgmac_warn(bgmac, "Support for ADMtek ethernet switch not implemented\n"); |
1517 | 1517 | ||
1518 | netif_napi_add(net_dev, &bgmac->napi, bgmac_poll, BGMAC_WEIGHT); | ||
1519 | |||
1518 | err = bgmac_mii_register(bgmac); | 1520 | err = bgmac_mii_register(bgmac); |
1519 | if (err) { | 1521 | if (err) { |
1520 | bgmac_err(bgmac, "Cannot register MDIO\n"); | 1522 | bgmac_err(bgmac, "Cannot register MDIO\n"); |
@@ -1529,8 +1531,6 @@ static int bgmac_probe(struct bcma_device *core) | |||
1529 | 1531 | ||
1530 | netif_carrier_off(net_dev); | 1532 | netif_carrier_off(net_dev); |
1531 | 1533 | ||
1532 | netif_napi_add(net_dev, &bgmac->napi, bgmac_poll, BGMAC_WEIGHT); | ||
1533 | |||
1534 | return 0; | 1534 | return 0; |
1535 | 1535 | ||
1536 | err_mii_unregister: | 1536 | err_mii_unregister: |
@@ -1549,9 +1549,9 @@ static void bgmac_remove(struct bcma_device *core) | |||
1549 | { | 1549 | { |
1550 | struct bgmac *bgmac = bcma_get_drvdata(core); | 1550 | struct bgmac *bgmac = bcma_get_drvdata(core); |
1551 | 1551 | ||
1552 | netif_napi_del(&bgmac->napi); | ||
1553 | unregister_netdev(bgmac->net_dev); | 1552 | unregister_netdev(bgmac->net_dev); |
1554 | bgmac_mii_unregister(bgmac); | 1553 | bgmac_mii_unregister(bgmac); |
1554 | netif_napi_del(&bgmac->napi); | ||
1555 | bgmac_dma_free(bgmac); | 1555 | bgmac_dma_free(bgmac); |
1556 | bcma_set_drvdata(core, NULL); | 1556 | bcma_set_drvdata(core, NULL); |
1557 | free_netdev(bgmac->net_dev); | 1557 | free_netdev(bgmac->net_dev); |