Commit e242040d authored by Jesse Huang's avatar Jesse Huang Committed by Jeff Garzik

[PATCH] sundance: remove TxStartThresh and RxEarlyThresh

For patent issue need to remove TxStartThresh and RxEarlyThresh.  This patent
is cut-through patent.  If use this function, Tx will start to transmit after
few data be move in to Tx FIFO.  We are not allow to use those function in
DFE530/DFE550/DFE580/DL10050/IP100/IP100A.  It will decrease a little
performance.
Signed-off-by: default avatarJesse Huang <jesse@icplus.com.tw>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarJeff Garzik <jeff@garzik.org>
parent ac7468e9
...@@ -264,8 +264,6 @@ enum alta_offsets { ...@@ -264,8 +264,6 @@ enum alta_offsets {
ASICCtrl = 0x30, ASICCtrl = 0x30,
EEData = 0x34, EEData = 0x34,
EECtrl = 0x36, EECtrl = 0x36,
TxStartThresh = 0x3c,
RxEarlyThresh = 0x3e,
FlashAddr = 0x40, FlashAddr = 0x40,
FlashData = 0x44, FlashData = 0x44,
TxStatus = 0x46, TxStatus = 0x46,
...@@ -1111,6 +1109,7 @@ static irqreturn_t intr_handler(int irq, void *dev_instance) ...@@ -1111,6 +1109,7 @@ static irqreturn_t intr_handler(int irq, void *dev_instance)
int tx_cnt; int tx_cnt;
int tx_status; int tx_status;
int handled = 0; int handled = 0;
int i;
do { do {
...@@ -1153,17 +1152,14 @@ static irqreturn_t intr_handler(int irq, void *dev_instance) ...@@ -1153,17 +1152,14 @@ static irqreturn_t intr_handler(int irq, void *dev_instance)
np->stats.tx_fifo_errors++; np->stats.tx_fifo_errors++;
if (tx_status & 0x02) if (tx_status & 0x02)
np->stats.tx_window_errors++; np->stats.tx_window_errors++;
/* /*
** This reset has been verified on ** This reset has been verified on
** DFE-580TX boards ! phdm@macqel.be. ** DFE-580TX boards ! phdm@macqel.be.
*/ */
if (tx_status & 0x10) { /* TxUnderrun */ if (tx_status & 0x10) { /* TxUnderrun */
unsigned short txthreshold;
txthreshold = ioread16 (ioaddr + TxStartThresh);
/* Restart Tx FIFO and transmitter */ /* Restart Tx FIFO and transmitter */
sundance_reset(dev, (NetworkReset|FIFOReset|TxReset) << 16); sundance_reset(dev, (NetworkReset|FIFOReset|TxReset) << 16);
iowrite16 (txthreshold, ioaddr + TxStartThresh);
/* No need to reset the Tx pointer here */ /* No need to reset the Tx pointer here */
} }
/* Restart the Tx. */ /* Restart the Tx. */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment