summaryrefslogtreecommitdiffstats
path: root/sys/dev/isa/isapnp.c
diff options
context:
space:
mode:
authorcsapuntz <csapuntz@openbsd.org>1998-07-28 13:26:48 +0000
committercsapuntz <csapuntz@openbsd.org>1998-07-28 13:26:48 +0000
commit403e909090ece2646b0963e54b70ae2edd0a69d8 (patch)
treeccfbcf94951eb34c20025fe4e3f979a7061b65be /sys/dev/isa/isapnp.c
parentdocument EINVAL due to overflow (diff)
downloadwireguard-openbsd-403e909090ece2646b0963e54b70ae2edd0a69d8.tar.xz
wireguard-openbsd-403e909090ece2646b0963e54b70ae2edd0a69d8.zip
Disable ISA PNP devices before ISA scan
Diffstat (limited to 'sys/dev/isa/isapnp.c')
-rw-r--r--sys/dev/isa/isapnp.c32
1 files changed, 31 insertions, 1 deletions
diff --git a/sys/dev/isa/isapnp.c b/sys/dev/isa/isapnp.c
index bdc7adb2336..ce9811e90ed 100644
--- a/sys/dev/isa/isapnp.c
+++ b/sys/dev/isa/isapnp.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: isapnp.c,v 1.18 1998/06/02 18:23:33 deraadt Exp $ */
+/* $OpenBSD: isapnp.c,v 1.19 1998/07/28 13:26:50 csapuntz Exp $ */
/* $NetBSD: isapnp.c,v 1.9.4.3 1997/10/29 00:40:43 thorpej Exp $ */
/*
@@ -792,6 +792,36 @@ isapnp_configure(sc, ipa)
}
+/*
+ * Some BIOSes take the liberty of configuring our ISA cards for us.
+ *
+ * Disable this so that ISA scan doesn't detect ISAPNP cards
+ *
+ */
+
+void
+isapnp_isa_attach_hook(isa_sc)
+ struct isa_softc *isa_sc;
+
+{
+ struct isapnp_softc sc;
+
+ sc.sc_iot = isa_sc->sc_iot;
+ sc.sc_ncards = 0;
+
+ if (isapnp_map(&sc))
+ return;
+
+ printf ("isapnp: putting PNP cards to sleep\n");
+
+ isapnp_init(&sc);
+
+ isapnp_write_reg(&sc, ISAPNP_CONFIG_CONTROL, ISAPNP_CC_RESET_DRV);
+ DELAY(2000);
+
+ isapnp_unmap(&sc);
+}
+
/* isapnp_match():
* Probe routine
*/