nuport-mac: delay call to napi_start() until fully able to process RX
authorFlorian Fainelli <florian@openwrt.org>
Fri, 10 Aug 2012 07:04:21 +0000 (07:04 +0000)
committerFlorian Fainelli <florian@openwrt.org>
Fri, 10 Aug 2012 07:04:21 +0000 (07:04 +0000)
SVN-Revision: 33079

target/linux/mcs814x/files-3.3/drivers/net/ethernet/mcs8140/nuport_mac.c

index a2f7ee2cd548c4adfcbec53ea49040069abf454f..b14019d578d341fbab51c48ac09ecdeb3072242a 100644 (file)
@@ -786,8 +786,6 @@ static int nuport_mac_open(struct net_device *dev)
 
        phy_start(priv->phydev);
 
-       napi_enable(&priv->napi);
-
        ret = request_irq(priv->rx_irq, &nuport_mac_rx_interrupt,
                                0, dev->name, dev);
        if (ret) {
@@ -813,6 +811,8 @@ static int nuport_mac_open(struct net_device *dev)
        ret = nuport_mac_start_rx_dma(priv, priv->rx_skb[0]);
        spin_unlock_irqrestore(&priv->lock, flags);
 
+       napi_enable(&priv->napi);
+
        return ret;
 
 out_rx_skb: