2006-08-17 08:01:55

by Jesse Huang

[permalink] [raw]
Subject: [PATCH 6/7] ip1000: Add IPG_AC_FIFO flag when Tx reset

From: Jesse Huang <[email protected]>

This is a bug when Tx underrun happen, Tx reset without IPG_AC_FIFO will
cause Tx hold and can't transmit packet again.

Change Logs:
1. Tx reset when Tx Under run will cause Tx fail
2. ipg_nic_txcleanup() add "IPG_AC_FIFO" when Tx reset

---

drivers/net/ipg.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

7e88cf9432ea466a76f7b26d11a280300c8735f2
diff --git a/drivers/net/ipg.c b/drivers/net/ipg.c
index 56ffc80..ae22fa8 100644
--- a/drivers/net/ipg.c
+++ b/drivers/net/ipg.c
@@ -1036,7 +1036,7 @@ static void ipg_nic_txcleanup(struct net
IPG_DEBUG_MSG("Transmitter underrun.\n");
sp->stats.tx_fifo_errors++;
ipg_reset(dev, IPG_AC_TX_RESET |
- IPG_AC_DMA | IPG_AC_NETWORK);
+ IPG_AC_DMA | IPG_AC_NETWORK| IPG_AC_FIFO);

/* Re-configure after DMA reset. */
if ((ipg_io_config(dev) < 0) ||
--
1.3.GIT