summaryrefslogtreecommitdiffstats
path: root/sys/dev/fxp
diff options
context:
space:
mode:
authormux <mux@FreeBSD.org>2004-12-20 10:18:21 +0000
committermux <mux@FreeBSD.org>2004-12-20 10:18:21 +0000
commit747bbb41c47df3f972647431e7d0d2ea74be65c1 (patch)
tree0e75ce1b1e2f7dc0e63071863dff49a21d0f8f63 /sys/dev/fxp
parent1c86b95b10d2e6a22d2ac94e07b975796c52ce38 (diff)
downloadFreeBSD-src-747bbb41c47df3f972647431e7d0d2ea74be65c1.zip
FreeBSD-src-747bbb41c47df3f972647431e7d0d2ea74be65c1.tar.gz
Only try to use the 82503 serial interface for the 82557 chipsets. The
datasheet says it is only valid for such chipsets and shouldn't be used with others. This fixes some 82559 based cards which otherwise only work at 10Mbit. MFC after: 5 days Tested by: krion
Diffstat (limited to 'sys/dev/fxp')
-rw-r--r--sys/dev/fxp/if_fxp.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/dev/fxp/if_fxp.c b/sys/dev/fxp/if_fxp.c
index 7d482c9..70dc184 100644
--- a/sys/dev/fxp/if_fxp.c
+++ b/sys/dev/fxp/if_fxp.c
@@ -452,8 +452,8 @@ fxp_attach(device_t dev)
* Determine whether we must use the 503 serial interface.
*/
fxp_read_eeprom(sc, &data, 6, 1);
- if ((data & FXP_PHY_DEVICE_MASK) != 0 &&
- (data & FXP_PHY_SERIAL_ONLY))
+ if (sc->revision == FXP_REV_82557 && (data & FXP_PHY_DEVICE_MASK) != 0
+ && (data & FXP_PHY_SERIAL_ONLY))
sc->flags |= FXP_FLAG_SERIAL_MEDIA;
SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev),
OpenPOWER on IntegriCloud