summaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/ezchip
diff options
context:
space:
mode:
authorNoam Camus <noamc@ezchip.com>2015-08-20 07:00:04 +0200
committerDavid S. Miller <davem@davemloft.net>2015-08-24 01:08:54 +0200
commit3d99b74ab3c4b7e529d5820ccadabfb81085f020 (patch)
tree32c701bd16e819f9299a8890d2acb04ab94413c6 /drivers/net/ethernet/ezchip
parentNET: nps_enet: drop control frames (diff)
downloadlinux-3d99b74ab3c4b7e529d5820ccadabfb81085f020.tar.xz
linux-3d99b74ab3c4b7e529d5820ccadabfb81085f020.zip
NET: nps_enet: TX done acknowledge.
This is needed for when TX done interrupt is in "level mode". For example it is true for some simulators of this device. Signed-off-by: Noam Camus <noamc@ezchip.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/ezchip')
-rw-r--r--drivers/net/ethernet/ezchip/nps_enet.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/ethernet/ezchip/nps_enet.c b/drivers/net/ethernet/ezchip/nps_enet.c
index e553e6aa0e74..69b9129357fd 100644
--- a/drivers/net/ethernet/ezchip/nps_enet.c
+++ b/drivers/net/ethernet/ezchip/nps_enet.c
@@ -150,6 +150,9 @@ static void nps_enet_tx_handler(struct net_device *ndev)
if (!priv->tx_packet_sent || tx_ctrl.ct)
return;
+ /* Ack Tx ctrl register */
+ nps_enet_reg_set(priv, NPS_ENET_REG_TX_CTL, 0);
+
/* Check Tx transmit error */
if (unlikely(tx_ctrl.et)) {
ndev->stats.tx_errors++;