diff options
| author | Mike Silbersack <silby@FreeBSD.org> | 2002-11-12 06:21:45 +0000 |
|---|---|---|
| committer | Mike Silbersack <silby@FreeBSD.org> | 2002-11-12 06:21:45 +0000 |
| commit | 64629d54dacc127877b376e185f737d74f606a73 (patch) | |
| tree | 2eadf61d7db6deae60d20587b46a11ae8b828cc2 /sys/pci | |
| parent | 9fb79314661fceccb187088d6e54e8258967369f (diff) | |
Notes
Diffstat (limited to 'sys/pci')
| -rw-r--r-- | sys/pci/if_xl.c | 7 | ||||
| -rw-r--r-- | sys/pci/if_xlreg.h | 3 |
2 files changed, 10 insertions, 0 deletions
diff --git a/sys/pci/if_xl.c b/sys/pci/if_xl.c index 9301c5e3b65e..2928908e1cae 100644 --- a/sys/pci/if_xl.c +++ b/sys/pci/if_xl.c @@ -1280,6 +1280,8 @@ xl_attach(dev) XL_FLAG_INVERT_LED_PWR | XL_FLAG_INVERT_MII_PWR; if (pci_get_device(dev) == TC_DEVICEID_HURRICANE_556) sc->xl_flags |= XL_FLAG_8BITROM; + if (pci_get_device(dev) == TC_DEVICEID_HURRICANE_556B) + sc->xl_flags |= XL_FLAG_NO_XCVR_PWR; if (pci_get_device(dev) == TC_DEVICEID_HURRICANE_575A || pci_get_device(dev) == TC_DEVICEID_HURRICANE_575B || @@ -1632,6 +1634,11 @@ xl_attach(dev) done: + if (sc->xl_flags & XL_FLAG_NO_XCVR_PWR) { + XL_SEL_WIN(0); + CSR_WRITE_2(sc, XL_W0_MFG_ID, XL_NO_XCVR_PWR_MAGICBITS); + } + /* * Call MI attach routine. */ diff --git a/sys/pci/if_xlreg.h b/sys/pci/if_xlreg.h index 99a5ddfc61fb..64d99bc09adc 100644 --- a/sys/pci/if_xlreg.h +++ b/sys/pci/if_xlreg.h @@ -560,6 +560,9 @@ struct xl_mii_frame { #define XL_FLAG_8BITROM 0x0010 #define XL_FLAG_INVERT_LED_PWR 0x0020 #define XL_FLAG_INVERT_MII_PWR 0x0040 +#define XL_FLAG_NO_XCVR_PWR 0x0080 + +#define XL_NO_XCVR_PWR_MAGICBITS 0x0900 struct xl_softc { struct arpcom arpcom; /* interface info */ |
