path: root/drivers/net/ethernet/aeroflex/greth.h
diff options
authorDaniel Hellstrom <daniel@gaisler.com>2014-09-05 13:13:48 +0200
committerDavid S. Miller <davem@davemloft.net>2014-09-05 21:57:09 -0700
commite1743a16a043f3d6b707730e46ba33ca931fb553 (patch)
tree4efe72f85939140ee111c5992743a24f8bc66a27 /drivers/net/ethernet/aeroflex/greth.h
parentcnic : Cleanup CONFIG_IPV6 & VLAN check (diff)
greth: moved TX ring cleaning to NAPI rx poll func
This patch does not affect the 10/100 GRETH MAC. Before all GBit GRETH TX descriptor ring cleaning was done in start_xmit(), when descriptor list became full it activated TX interrupt to start the NAPI rx poll function to do TX ring cleaning. With this patch the TX descriptor ring is always cleaned from the NAPI rx poll function, triggered via TX or RX interrupt. Otherwise we could end up in TX frames being sent but not reported to the stack being sent. On the 10/100 GRETH this is not an issue since the SKB is copied&aligned into private buffers so that the SKB can be freed directly on start_xmit() Signed-off-by: Daniel Hellstrom <daniel@gaisler.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/aeroflex/greth.h')
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/ethernet/aeroflex/greth.h b/drivers/net/ethernet/aeroflex/greth.h
index 232a622a85b7..ae16ac94daf8 100644
--- a/drivers/net/ethernet/aeroflex/greth.h
+++ b/drivers/net/ethernet/aeroflex/greth.h
@@ -107,7 +107,7 @@ struct greth_private {
u16 tx_next;
u16 tx_last;
- u16 tx_free;
+ u16 tx_free; /* only used on 10/100Mbit */
u16 rx_cur;
struct greth_regs *regs; /* Address of controller registers. */