summaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/ti/netcp_core.c
diff options
context:
space:
mode:
authorKaricheri, Muralidharan2015-07-16 21:32:14 +0200
committerDavid S. Miller2015-07-21 05:37:39 +0200
commit194ac06e39238685abc0eeb436efa82e6571b90f (patch)
tree57731b702ecc40e5e6abecadfe32ffdd60d85c52 /drivers/net/ethernet/ti/netcp_core.c
parentbonding: correct the MAC address for "follow" fail_over_mac policy (diff)
downloadkernel-qcow2-linux-194ac06e39238685abc0eeb436efa82e6571b90f.tar.gz
kernel-qcow2-linux-194ac06e39238685abc0eeb436efa82e6571b90f.tar.xz
kernel-qcow2-linux-194ac06e39238685abc0eeb436efa82e6571b90f.zip
net: netcp: fix improper initialization in netcp_ndo_open()
The keystone qmss will raise interrupt when packet arrive at the receive queue. Only control available to avoid interrupt from happening is to keep the free descriptor queue (FDQ) empty in the receive side. So the filling of descriptors into the FDQ has to happen after request_irq() call is made as part of knav_queue_enable_notify(). So move the function netcp_rxpool_refill() after this call. Signed-off-by: Murali Karicheri <m-karicheri2@ti.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/ti/netcp_core.c')
-rw-r--r--drivers/net/ethernet/ti/netcp_core.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/ethernet/ti/netcp_core.c b/drivers/net/ethernet/ti/netcp_core.c
index 5ec4ed3f6c8d..ec8ed30196f3 100644
--- a/drivers/net/ethernet/ti/netcp_core.c
+++ b/drivers/net/ethernet/ti/netcp_core.c
@@ -1617,11 +1617,11 @@ static int netcp_ndo_open(struct net_device *ndev)
}
mutex_unlock(&netcp_modules_lock);
- netcp_rxpool_refill(netcp);
napi_enable(&netcp->rx_napi);
napi_enable(&netcp->tx_napi);
knav_queue_enable_notify(netcp->tx_compl_q);
knav_queue_enable_notify(netcp->rx_queue);
+ netcp_rxpool_refill(netcp);
netif_tx_wake_all_queues(ndev);
dev_dbg(netcp->ndev_dev, "netcp device %s opened\n", ndev->name);
return 0;