Here's another patch to try, for PNIC.  Feedback welcome.
-- 
Jeff Garzik      | Game called on account of naked chick
Building 1024    |
MandrakeSoft     |
diff -ur 2.4/drivers/net/tulip/media.c build-2.4/drivers/net/tulip/media.c
--- 2.4/drivers/net/tulip/media.c       Fri May 11 22:12:51 2001
+++ build-2.4/drivers/net/tulip/media.c Fri May 11 22:10:03 2001
@@ -409,8 +409,6 @@
        struct tulip_private *tp = dev->priv;
        unsigned int bmsr, lpa, negotiated, new_csr6;
 
-       if (tp->full_duplex_lock)
-               return 0;
        bmsr = tulip_mdio_read(dev, tp->phys[0], MII_BMSR);
        lpa = tulip_mdio_read(dev, tp->phys[0], MII_LPA);
        if (tulip_debug > 1)
@@ -428,7 +426,7 @@
                }
        }
        negotiated = lpa & tp->advertising[0];
-       tp->full_duplex = (mii_nway_result(negotiated) & LPA_DUPLEX) ? 1 : 0;
+       tp->full_duplex = tp->full_duplex_lock | (mii_nway_result(negotiated) & 
+LPA_DUPLEX) ? 1 : 0;
 
        new_csr6 = tp->csr6;
 

Reply via email to