summaryrefslogtreecommitdiffstats
path: root/sys/i386/eisa
diff options
context:
space:
mode:
authorwollman <wollman@FreeBSD.org>1994-10-19 01:59:11 +0000
committerwollman <wollman@FreeBSD.org>1994-10-19 01:59:11 +0000
commit24e218260af83b7292524d1581b8dfcf5d3c8c5b (patch)
tree5d1fe7fa29fd95ce356cefa187ddba64b0b97b6d /sys/i386/eisa
parentc2771d0d1bd4ee9f81f73a838d7aa075897c1b71 (diff)
downloadFreeBSD-src-24e218260af83b7292524d1581b8dfcf5d3c8c5b.zip
FreeBSD-src-24e218260af83b7292524d1581b8dfcf5d3c8c5b.tar.gz
Add support for devconf to a large number of device drivers, and do
the right thing in dev_goawayall() when kdc_goaway is null.
Diffstat (limited to 'sys/i386/eisa')
-rw-r--r--sys/i386/eisa/aha1742.c20
1 files changed, 19 insertions, 1 deletions
diff --git a/sys/i386/eisa/aha1742.c b/sys/i386/eisa/aha1742.c
index 88c0009..945e8ea 100644
--- a/sys/i386/eisa/aha1742.c
+++ b/sys/i386/eisa/aha1742.c
@@ -14,7 +14,7 @@
*
* commenced: Sun Sep 27 18:14:01 PDT 1992
*
- * $Id: aha1742.c,v 1.21 1994/08/31 23:32:32 se Exp $
+ * $Id: aha1742.c,v 1.22 1994/09/16 13:33:34 davidg Exp $
*/
#include <sys/types.h>
@@ -33,6 +33,7 @@
#endif /*KERNEL */
#include <scsi/scsi_all.h>
#include <scsi/scsiconf.h>
+#include <sys/devconf.h>
/* */
@@ -316,6 +317,22 @@ struct scsi_device ahb_dev =
{ 0, 0 }
};
+static struct kern_devconf kdc_ahb[NAHB] = { {
+ 0, 0, 0, /* filled in by dev_attach */
+ "ahb", 0, { "isa0", MDDT_ISA, 0 },
+ isa_generic_externalize, 0, 0, ISA_EXTERNALLEN
+} };
+
+static inline void
+ahb_registerdev(struct isa_device *id)
+{
+ if(id->id_unit)
+ kdc_ahb[id->id_unit] = kdc_ahb[0];
+ kdc_ahb[id->id_unit].kdc_unit = id->id_unit;
+ kdc_ahb[id->id_unit].kdc_isa = id;
+ dev_attach(&kdc_ahb[id->id_unit]);
+}
+
#endif /*KERNEL */
#ifndef KERNEL
@@ -518,6 +535,7 @@ ahb_attach(dev)
ahb->sc_link.adapter = &ahb_switch;
ahb->sc_link.device = &ahb_dev;
+ ahb_registerdev(dev);
/*
* ask the adapter what subunits are present
*/
OpenPOWER on IntegriCloud