summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Cox <alan@lxorguk.ukuu.org.uk>2007-03-07 16:37:38 +0000
committerJeff Garzik <jeff@garzik.org>2007-03-09 11:51:44 -0500
commitfe79745507593941adb44a6b2e392645c54ca1c2 (patch)
tree8535fb3359185b9b685f213b840d1754193a3a09
parent2efa53f373ed811d4860904f5205b8a3b376e253 (diff)
downloadlinux-3.10-fe79745507593941adb44a6b2e392645c54ca1c2.tar.gz
linux-3.10-fe79745507593941adb44a6b2e392645c54ca1c2.tar.bz2
linux-3.10-fe79745507593941adb44a6b2e392645c54ca1c2.zip
z85230: Fix FIFO handling
We must exit immediately on a FIFO fill not take the end of packet path otherwise each underrun in PIO transmit mode causes a runt packet and the data is lost. Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
-rw-r--r--drivers/net/wan/z85230.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/wan/z85230.c b/drivers/net/wan/z85230.c
index 8dbcf83bb5f..8b4540bfc1b 100644
--- a/drivers/net/wan/z85230.c
+++ b/drivers/net/wan/z85230.c
@@ -407,7 +407,7 @@ static void z8530_tx(struct z8530_channel *c)
while(c->txcount) {
/* FIFO full ? */
if(!(read_zsreg(c, R0)&4))
- break;
+ return;
c->txcount--;
/*
* Shovel out the byte