diff options
author | Henning Brauer <henning@cvs.openbsd.org> | 2002-10-20 16:46:29 +0000 |
---|---|---|
committer | Henning Brauer <henning@cvs.openbsd.org> | 2002-10-20 16:46:29 +0000 |
commit | dccdd51b88c74c7a74272545ae72bd99f77406ce (patch) | |
tree | 9e5af00ffa4c9aeb6a0214ca5192308d30113cb2 /sys/dev/ic/dc.c | |
parent | 11abdfebcfbd965d8eaf56da7e752c9e213f702f (diff) |
add support for intel 21145
This chip is some strange abnormal 21143 variant. It really only works with
10 MBit/s halfduplex only and autonegotiation is totally broken in hardware.
Should also have a HomePNA phy, but we don't support that.
for now requires and explicit "media 10BaseT".
if anybody has such a chip please mail me.
nick@ is the only one who has the hardware and did an incredible amount of
testing. Thanks for all the help, Nick!
some hints and ok jason@
Diffstat (limited to 'sys/dev/ic/dc.c')
-rw-r--r-- | sys/dev/ic/dc.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/dev/ic/dc.c b/sys/dev/ic/dc.c index 8ac6916f15c..8493b0d7e81 100644 --- a/sys/dev/ic/dc.c +++ b/sys/dev/ic/dc.c @@ -1,4 +1,4 @@ -/* $OpenBSD: dc.c,v 1.51 2002/07/05 13:45:21 aaron Exp $ */ +/* $OpenBSD: dc.c,v 1.52 2002/10/20 16:46:27 henning Exp $ */ /* * Copyright (c) 1997, 1998, 1999 @@ -1637,6 +1637,7 @@ void dc_attach(sc) break; case DC_TYPE_DM9102: case DC_TYPE_21143: + case DC_TYPE_21145: case DC_TYPE_ASIX: dc_read_eeprom(sc, (caddr_t)&sc->sc_arpcom.ac_enaddr, DC_EE_NODEADDR, 3, 0); @@ -1759,6 +1760,8 @@ hasmac: error = ENXIO; ifmedia_add(&sc->sc_mii.mii_media, IFM_ETHER|IFM_NONE, 0, NULL); ifmedia_set(&sc->sc_mii.mii_media, IFM_ETHER|IFM_NONE); + } else if (sc->dc_type == DC_TYPE_21145) { + ifmedia_set(&sc->sc_mii.mii_media, IFM_ETHER|IFM_10_T); } else ifmedia_set(&sc->sc_mii.mii_media, IFM_ETHER|IFM_AUTO); |