From fbbc0a48e32714b77e16461fa9a4247d45e39574 Mon Sep 17 00:00:00 2001 From: wpaul Date: Wed, 31 May 2000 05:40:53 +0000 Subject: Rework the support for the internal autonegotiation on the 21143 and workalike chips (Macronix 98713A/98715 and PNIC II). Timing is somewhat critical: you need to bring the link as soon as possible after NWAY is done, and the old one second polling interval was too long. Now we poll every 10th of a second until NWAY completes (at which point we return to the 1 second interval again to keep an eye on the link state). I tested all the other cards I had on hand to make sure I didn't bust any of them and they seem to work (including the MII-based 21143 card). This should fix some autoneg problems with DE500-BA cards and the built-in 10/100 ethernet on some alpha systems. (Now before anyone asks why I never noticed this before, the old code worked just find with the Intel swich I used for testing back in NY. Apparently not all switches are as picky about the timing.) --- sys/pci/if_dcreg.h | 1 + 1 file changed, 1 insertion(+) (limited to 'sys/pci/if_dcreg.h') diff --git a/sys/pci/if_dcreg.h b/sys/pci/if_dcreg.h index 9620e10..486a2e2 100644 --- a/sys/pci/if_dcreg.h +++ b/sys/pci/if_dcreg.h @@ -671,6 +671,7 @@ struct dc_softc { #define DC_TX_STORENFWD 0x00000100 #define DC_REDUCED_MII_POLL 0x00000200 #define DC_TX_INTR_ALWAYS 0x00000400 +#define DC_21143_NWAY 0x00000800 /* * register space access macros -- cgit v1.1