summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorpeter <peter@FreeBSD.org>1997-11-08 14:19:16 +0000
committerpeter <peter@FreeBSD.org>1997-11-08 14:19:16 +0000
commit4093d193b6d8d3e06ee377e3dcad6b2e17d8bbf2 (patch)
treebe92052c4cd6781f769bae31359119e78d1d6aff /sys
parentd3c47076ad15754ed2b2f28cee5070517f734f46 (diff)
downloadFreeBSD-src-4093d193b6d8d3e06ee377e3dcad6b2e17d8bbf2.zip
FreeBSD-src-4093d193b6d8d3e06ee377e3dcad6b2e17d8bbf2.tar.gz
Import de-971020 from Matt's www.3am-software.com pages.
Diffstat (limited to 'sys')
-rw-r--r--sys/pci/if_de.c13
-rw-r--r--sys/pci/if_devar.h3
2 files changed, 11 insertions, 5 deletions
diff --git a/sys/pci/if_de.c b/sys/pci/if_de.c
index 86dc829..b4fbe53 100644
--- a/sys/pci/if_de.c
+++ b/sys/pci/if_de.c
@@ -1,4 +1,4 @@
-/* $NetBSD: if_de.c,v 1.55 1997/10/16 22:02:27 matt Exp $ */
+/* $NetBSD: if_de.c,v 1.56 1997/10/20 14:32:46 matt Exp $ */
/*-
* Copyright (c) 1994-1997 Matt Thomas (matt@3am-software.com)
@@ -2779,7 +2779,7 @@ tulip_read_macaddr(
* SROM CRC is valid therefore it must be in the
* new format.
*/
- sc->tulip_features |= TULIP_HAVE_ISVSROM;
+ sc->tulip_features |= TULIP_HAVE_ISVSROM|TULIP_HAVE_OKSROM;
} else if (sc->tulip_rombuf[126] == 0xff && sc->tulip_rombuf[127] == 0xFF) {
/*
* No checksum is present. See if the SROM id checks out;
@@ -2792,6 +2792,9 @@ tulip_read_macaddr(
}
if (idx == 18 && sc->tulip_rombuf[18] == 1 && sc->tulip_rombuf[19] != 0)
sc->tulip_features |= TULIP_HAVE_ISVSROM;
+ } else if (sc->tulip_chipid >= TULIP_21142) {
+ sc->tulip_features |= TULIP_HAVE_ISVSROM;
+ sc->tulip_boardsw = &tulip_2114x_isv_boardsw;
}
if ((sc->tulip_features & TULIP_HAVE_ISVSROM) && tulip_srom_decode(sc)) {
if (sc->tulip_chipid != TULIP_21041)
@@ -4645,12 +4648,14 @@ tulip_attach(
#if defined(__bsdi__)
"\n"
#endif
- TULIP_PRINTF_FMT ": %s%s pass %d.%d\n",
+ TULIP_PRINTF_FMT ": %s%s pass %d.%d%s\n",
TULIP_PRINTF_ARGS,
sc->tulip_boardid,
tulip_chipdescs[sc->tulip_chipid],
(sc->tulip_revinfo & 0xF0) >> 4,
- sc->tulip_revinfo & 0x0F);
+ sc->tulip_revinfo & 0x0F,
+ (sc->tulip_features & (TULIP_HAVE_ISVSROM|TULIP_HAVE_OKSROM))
+ == TULIP_HAVE_ISVSROM ? " (invalid EESPROM checksum)" : "");
printf(TULIP_PRINTF_FMT ": address " TULIP_EADDR_FMT "\n",
TULIP_PRINTF_ARGS,
TULIP_EADDR_ARGS(sc->tulip_enaddr));
diff --git a/sys/pci/if_devar.h b/sys/pci/if_devar.h
index 84cd82a..c9dd032 100644
--- a/sys/pci/if_devar.h
+++ b/sys/pci/if_devar.h
@@ -1,4 +1,4 @@
-/* $NetBSD: if_devar.h,v 1.21 1997/10/16 22:02:32 matt Exp $ */
+/* $NetBSD: if_devar.h,v 1.22 1997/10/20 14:33:01 matt Exp $ */
/*-
* Copyright (c) 1994-1997 Matt Thomas (matt@3am-software.com)
@@ -551,6 +551,7 @@ struct _tulip_softc_t {
#define TULIP_HAVE_NOMEDIA 0x00004000 /* did not detect any media */
#define TULIP_HAVE_STOREFWD 0x00008000 /* have CMD_STOREFWD */
#define TULIP_HAVE_SIA100 0x00010000 /* has LS100 in SIA status */
+#define TULIP_HAVE_OKSROM 0x00020000 /* SROM CRC is OK */
u_int32_t tulip_intrmask; /* our copy of csr_intr */
u_int32_t tulip_cmdmode; /* our copy of csr_cmdmode */
u_int32_t tulip_last_system_error : 3; /* last system error (only value is TULIP_SYSTEMERROR is also set) */
OpenPOWER on IntegriCloud