diff options
author | wilko <wilko@FreeBSD.org> | 2003-09-20 10:53:08 +0000 |
---|---|---|
committer | wilko <wilko@FreeBSD.org> | 2003-09-20 10:53:08 +0000 |
commit | 3d954f412f973cdef480c3711423fcadd2760349 (patch) | |
tree | cdb2a8a3cec0a4df31f4f70dc242b3e215c2ae39 /sys/dev/mii/e1000phyreg.h | |
parent | 6e6824e4bcd845d2681902b69bf6bd16809bbc05 (diff) | |
download | FreeBSD-src-3d954f412f973cdef480c3711423fcadd2760349.zip FreeBSD-src-3d954f412f973cdef480c3711423fcadd2760349.tar.gz |
Add support for SK-9521 V2.0 and 3COM 3C940.
Tested at 100Mbit only, using Asus P4P800 onboard 3C940.
The -stable version of this patch I have in use for ~2 weeks now, and works
just fine for me.
Based on: Nathan L. Binkert's patch for OpenBSD
Patch submitted by and thanks to: Jung-uk Kim <jkim@niksun.com>
MFC after: 2 weeks
Diffstat (limited to 'sys/dev/mii/e1000phyreg.h')
-rw-r--r-- | sys/dev/mii/e1000phyreg.h | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/sys/dev/mii/e1000phyreg.h b/sys/dev/mii/e1000phyreg.h index e7dfb36..bdfc665 100644 --- a/sys/dev/mii/e1000phyreg.h +++ b/sys/dev/mii/e1000phyreg.h @@ -107,6 +107,7 @@ #define E1000_ID2 0x03 /* ID register 2 */ #define E1000_ID_88E1000 0x01410C50 #define E1000_ID_88E1000S 0x01410C40 +#define E1000_ID_88E1011 0x01410C20 #define E1000_ID_MASK 0xFFFFFFF0 #define E1000_AR 0x04 /* autonegotiation advertise reg */ @@ -122,6 +123,15 @@ #define E1000_AR_NEXT_PAGE 0x8000 #define E1000_AR_SPEED_MASK 0x01E0 +/* Autonegotiation register bits for fiber cards (Alaska Only!) */ +#define E1000_FA_1000X_FD 0x0020 +#define E1000_FA_1000X 0x0040 +#define E1000_FA_SYM_PAUSE 0x0080 +#define E1000_FA_ASYM_PAUSE 0x0100 +#define E1000_FA_FAULT1 0x1000 +#define E1000_FA_FAULT2 0x2000 +#define E1000_FA_NEXT_PAGE 0x8000 + #define E1000_LPAR 0x05 /* autoneg link partner abilities reg */ #define E1000_LPAR_SELECTOR_FIELD 0x0001 #define E1000_LPAR_10T 0x0020 @@ -135,6 +145,16 @@ #define E1000_LPAR_ACKNOWLEDGE 0x4000 #define E1000_LPAR_NEXT_PAGE 0x8000 +/* autoneg link partner ability register bits for fiber cards (Alaska Only!) */ +#define E1000_FPAR_1000X_FD 0x0020 +#define E1000_FPAR_1000X 0x0040 +#define E1000_FPAR_SYM_PAUSE 0x0080 +#define E1000_FPAR_ASYM_PAUSE 0x0100 +#define E1000_FPAR_FAULT1 0x1000 +#define E1000_FPAR_FAULT2 0x2000 +#define E1000_FPAR_ACK 0x4000 +#define E1000_FPAR_NEXT_PAGE 0x8000 + #define E1000_ER 0x06 /* autoneg expansion reg */ #define E1000_ER_LP_NWAY 0x0001 #define E1000_ER_PAGE_RXD 0x0002 @@ -284,3 +304,11 @@ #define E1000_LCR_PULSE_340_670MS 0x5000 #define E1000_LCR_PULSE_670_13S 0x6000 #define E1000_LCR_PULSE_13_26S 0x7000 + +/* The following register is found only on the 88E1011 Alaska PHY */ +#define E1000_ESSR 0x1B /* Extended PHY specific sts */ +#define E1000_ESSR_FIBER_LINK 0x2000 +#define E1000_ESSR_GMII_COPPER 0x000f +#define E1000_ESSR_GMII_FIBER 0x0007 +#define E1000_ESSR_TBI_COPPER 0x000d +#define E1000_ESSR_TBI_FIBER 0x0005 |