summaryrefslogtreecommitdiffstats
path: root/sys/dev/re
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2005-10-14 18:51:30 +0000
committerjhb <jhb@FreeBSD.org>2005-10-14 18:51:30 +0000
commitf63b585ffb04635ade225be42c5ca855a3eb7c12 (patch)
tree84fbefd69ba2e386c760aa0c23598b002628fdd8 /sys/dev/re
parentebae8f6ee41b833c83a2aa9705df852e74c55ed2 (diff)
downloadFreeBSD-src-f63b585ffb04635ade225be42c5ca855a3eb7c12.zip
FreeBSD-src-f63b585ffb04635ade225be42c5ca855a3eb7c12.tar.gz
Only allow the sk(4) driver to attach to revision 2 of the LinkSys EG1032
cards and teach the re(4) driver to attach to revision 3 cards. Submitted by: Fredrik Lindberg fli+freebsd-current at shapeshifter dot se MFC after: 2 weeks Reviewed by: imp, mdodd
Diffstat (limited to 'sys/dev/re')
-rw-r--r--sys/dev/re/if_re.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/sys/dev/re/if_re.c b/sys/dev/re/if_re.c
index 820415d..daf348c 100644
--- a/sys/dev/re/if_re.c
+++ b/sys/dev/re/if_re.c
@@ -177,6 +177,8 @@ static struct rl_type re_devs[] = {
"RealTek 8110S Single-chip Gigabit Ethernet" },
{ COREGA_VENDORID, COREGA_DEVICEID_CGLAPCIGT, RL_HWREV_8169S,
"Corega CG-LAPCIGT (RTL8169S) Gigabit Ethernet" },
+ { LINKSYS_VENDORID, LINKSYS_DEVICEID_EG1032, RL_HWREV_8169S,
+ "Linksys EG1032 (RTL8169S) Gigabit Ethernet" },
{ 0, 0, 0, NULL }
};
@@ -826,6 +828,17 @@ re_probe(dev)
while (t->rl_name != NULL) {
if ((pci_get_vendor(dev) == t->rl_vid) &&
(pci_get_device(dev) == t->rl_did)) {
+ /*
+ * Only attach to rev. 3 of the Linksys EG1032 adapter.
+ * Rev. 2 i supported by sk(4).
+ */
+ if ((t->rl_vid == LINKSYS_VENDORID) &&
+ (t->rl_did == LINKSYS_DEVICEID_EG1032) &&
+ (pci_get_subdevice(dev) !=
+ LINKSYS_SUBDEVICE_EG1032_REV3)) {
+ t++;
+ continue;
+ }
/*
* Temporarily map the I/O space
OpenPOWER on IntegriCloud