diff options
author | mux <mux@FreeBSD.org> | 2004-12-20 10:18:21 +0000 |
---|---|---|
committer | mux <mux@FreeBSD.org> | 2004-12-20 10:18:21 +0000 |
commit | 747bbb41c47df3f972647431e7d0d2ea74be65c1 (patch) | |
tree | 0e75ce1b1e2f7dc0e63071863dff49a21d0f8f63 /sys | |
parent | 1c86b95b10d2e6a22d2ac94e07b975796c52ce38 (diff) | |
download | FreeBSD-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')
-rw-r--r-- | sys/dev/fxp/if_fxp.c | 4 |
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), |