summaryrefslogtreecommitdiff
path: root/sys/pccard/pccard.c
diff options
context:
space:
mode:
authorcvs2svn <cvs2svn@FreeBSD.org>1999-01-21 00:55:32 +0000
committercvs2svn <cvs2svn@FreeBSD.org>1999-01-21 00:55:32 +0000
commit76b5366091f76c9bc73570149ef5055648fc2c39 (patch)
tree590d020e0f2a5bea6e09d66d951a674443b21d67 /sys/pccard/pccard.c
parent4b4d01da6f07f7754ff6a6e4f5223e9f0984d1a6 (diff)
Diffstat (limited to 'sys/pccard/pccard.c')
-rw-r--r--sys/pccard/pccard.c45
1 files changed, 12 insertions, 33 deletions
diff --git a/sys/pccard/pccard.c b/sys/pccard/pccard.c
index 6220a89cc582f..333b04e81435c 100644
--- a/sys/pccard/pccard.c
+++ b/sys/pccard/pccard.c
@@ -28,7 +28,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $Id: pccard.c,v 1.67 1998/11/09 09:30:55 peter Exp $
+ * $Id: pccard.c,v 1.65 1998/09/08 18:09:51 brian Exp $
*/
#include "opt_devfs.h"
@@ -50,7 +50,6 @@
#include <i386/isa/isa_device.h>
#include <i386/isa/icu.h>
-#include <i386/isa/intr_machdep.h>
#include "apm.h"
#if NAPM > 0
@@ -99,9 +98,6 @@ static void remove_device(struct pccard_devinfo *);
static inthand2_t slot_irq_handler;
static void power_off_slot(void *);
-static void pccard_configure(void *);
-SYSINIT(pccard, SI_SUB_CONFIGURE, SI_ORDER_MIDDLE + 1, pccard_configure, NULL);
-
#if NAPM > 0
/*
* For the APM stuff, the apmhook structure is kept
@@ -151,41 +147,24 @@ static struct cdevsw crd_cdevsw =
* Each controller indicates the number of slots
* that it sees, and these are mapped to a master
* slot number accessed via the character device entries.
- *
- * XXX this is a relic. Each controller has it's own probe
- * configuration hook. Printing a list of configured devices
- * with pccard support probably isn't all that useful.
*/
-static void
-pccard_configure(dummy)
- void *dummy;
+void
+pccard_configure(void)
{
- struct pccard_device **driver, *drv;
+ struct pccard_device **drivers, *drv;
- /* This isn't strictly correct, but works because of initialize order */
- driver = &drivers;
+#include "pcic.h"
+#if NPCIC > 0
+ pcic_probe();
+#endif
+
+ drivers = (struct pccard_device **)pccarddrv_set.ls_items;
printf("Initializing PC-card drivers:");
- while ((drv = *driver++))
+ while ((drv = *drivers++)) {
printf(" %s", drv->name);
- printf("\n");
-}
-
-int
-pccard_module_handler(module_t mod, int what, void *arg)
-{
- struct pccard_device *drv = (struct pccard_device *)arg;
-
- switch(what) {
- case MOD_LOAD:
pccard_add_driver(drv);
- break;
- case MOD_UNLOAD:
- pccard_remove_driver(drv);
- break;
- default:
- break;
}
- return 0;
+ printf("\n");
}
/*