linux-mips
[Top] [All Lists]

[2.4 PATCH] pcnet32.c - tx underflow error

To: linux-mips@oss.sgi.com, Ralf Baechle <ralf@oss.sgi.com>
Subject: [2.4 PATCH] pcnet32.c - tx underflow error
From: Jun Sun <jsun@mvista.com>
Date: Wed, 10 Jul 2002 14:56:08 -0700
Sender: owner-linux-mips@oss.sgi.com
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:0.9.2.1) Gecko/20010901
This patch fixes a tx underflow error for 79c973 chip. It essentially delay the transmission until the whole packet is received into the on-chip sdram.

The patch is already accepted by Marcelo for the 2.4 tree, I think.

Jun
diff -Nru linux/drivers/net/pcnet32.c.orig linux/drivers/net/pcnet32.c
--- linux/drivers/net/pcnet32.c.orig    Tue Jul  9 15:05:55 2002
+++ linux/drivers/net/pcnet32.c Tue Jul  9 18:28:19 2002
@@ -569,7 +569,7 @@
        break;
     case 0x2625:
        chipname = "PCnet/FAST III 79C973"; /* PCI */
-       fdx = 1; mii = 1;
+       fdx = 1; mii = 1; fset = 1;
        break;
     case 0x2626:
        chipname = "PCnet/Home 79C978"; /* PCI */
@@ -613,7 +613,7 @@
     if(fset)
     {
        a->write_bcr(ioaddr, 18, (a->read_bcr(ioaddr, 18) | 0x0800));
-       a->write_csr(ioaddr, 80, (a->read_csr(ioaddr, 80) & 0x0C00) | 0x0c00);
+       a->write_csr(ioaddr, 80, (a->read_csr(ioaddr, 80) & ~0x0C00) | 0x0c00);
        dxsuflo = 1;
        ltint = 1;
     }
<Prev in Thread] Current Thread [Next in Thread>