summaryrefslogtreecommitdiffstats
path: root/sys/isa/isa_common.c
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2003-07-08 18:56:58 +0000
committerjhb <jhb@FreeBSD.org>2003-07-08 18:56:58 +0000
commit810e95d9a74415521fcdc42fec34f678a610e04a (patch)
tree2c8ec1ca0802f7a41f339b63f59cd44e147b3eee /sys/isa/isa_common.c
parent6c736e55e449a0fa1a9047c02939778d0d4687a4 (diff)
downloadFreeBSD-src-810e95d9a74415521fcdc42fec34f678a610e04a.zip
FreeBSD-src-810e95d9a74415521fcdc42fec34f678a610e04a.tar.gz
- Make the isab devclass global to allow for multiple ISA bridge drivers.
- Factor out code common to all ISA bridge drivers attach methods into a isab_attach() function. - Rename the PCI-ISA bridge driver's attach function to pci_isab_attach() and have it call isab_attach().
Diffstat (limited to 'sys/isa/isa_common.c')
-rw-r--r--sys/isa/isa_common.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/sys/isa/isa_common.c b/sys/isa/isa_common.c
index 3e36a52..4f84093 100644
--- a/sys/isa/isa_common.c
+++ b/sys/isa/isa_common.c
@@ -1117,3 +1117,20 @@ DRIVER_MODULE(isa, eisab, isa_driver, isa_devclass, 0, 0);
DRIVER_MODULE(isa, legacy, isa_driver, isa_devclass, 0, 0);
#endif
MODULE_VERSION(isa, 1);
+
+/*
+ * Code common to ISA bridges.
+ */
+
+devclass_t isab_devclass;
+
+int
+isab_attach(device_t dev)
+{
+ device_t child;
+
+ child = device_add_child(dev, "isa", 0);
+ if (child != NULL)
+ return (bus_generic_attach(dev));
+ return (ENXIO);
+}
OpenPOWER on IntegriCloud