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;