summaryrefslogtreecommitdiff
path: root/sys/dev/mca
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev/mca')
-rw-r--r--sys/dev/mca/edc_mca.c16
-rw-r--r--sys/dev/mca/mca.c18
2 files changed, 15 insertions, 19 deletions
diff --git a/sys/dev/mca/edc_mca.c b/sys/dev/mca/edc_mca.c
index 62a8c2ee2e4..687af9ae459 100644
--- a/sys/dev/mca/edc_mca.c
+++ b/sys/dev/mca/edc_mca.c
@@ -1,4 +1,4 @@
-/* $NetBSD: edc_mca.c,v 1.28 2005/02/27 00:27:21 perry Exp $ */
+/* $NetBSD: edc_mca.c,v 1.29 2005/08/25 18:35:39 drochner Exp $ */
/*
* Copyright (c) 2001 The NetBSD Foundation, Inc.
@@ -50,7 +50,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: edc_mca.c,v 1.28 2005/02/27 00:27:21 perry Exp $");
+__KERNEL_RCSID(0, "$NetBSD: edc_mca.c,v 1.29 2005/08/25 18:35:39 drochner Exp $");
#include "rnd.h"
@@ -153,11 +153,11 @@ edc_mca_probe(parent, match, aux)
static int
edcsubmatch(struct device *parent, struct cfdata *cf,
- const locdesc_t *ldesc, void *aux)
+ const locdesc_t *locs, void *aux)
{
if (cf->cf_loc[EDCCF_DRIVE] != EDCCF_DRIVE_DEFAULT &&
- cf->cf_loc[EDCCF_DRIVE] != ldesc->locs[EDCCF_DRIVE])
+ cf->cf_loc[EDCCF_DRIVE] != locs[EDCCF_DRIVE])
return (0);
return (config_match(parent, cf, aux));
@@ -175,8 +175,7 @@ edc_mca_attach(parent, self, aux)
int irq, drq, iobase;
const char *typestr;
int devno, error;
- int help[2];
- locdesc_t *ldesc = (void *)help; /* XXX */
+ int locs[EDCCF_NLOCS];
pos2 = mca_conf_read(ma->ma_mc, ma->ma_slot, 2);
pos3 = mca_conf_read(ma->ma_mc, ma->ma_slot, 3);
@@ -324,10 +323,9 @@ edc_mca_attach(parent, self, aux)
/* check for attached disks */
for (devno = 0; devno < sc->sc_maxdevs; devno++) {
eda.edc_drive = devno;
- ldesc->len = 1;
- ldesc->locs[EDCCF_DRIVE] = devno;
+ locs[EDCCF_DRIVE] = devno;
sc->sc_ed[devno] =
- (void *) config_found_sm_loc(self, "edc", ldesc, &eda,
+ (void *) config_found_sm_loc(self, "edc", locs, &eda,
NULL, edcsubmatch);
/* If initialization did not succeed, NULL the pointer. */
diff --git a/sys/dev/mca/mca.c b/sys/dev/mca/mca.c
index caec15560d8..c5e13933524 100644
--- a/sys/dev/mca/mca.c
+++ b/sys/dev/mca/mca.c
@@ -1,4 +1,4 @@
-/* $NetBSD: mca.c,v 1.17 2005/02/04 02:10:43 perry Exp $ */
+/* $NetBSD: mca.c,v 1.18 2005/08/25 18:35:39 drochner Exp $ */
/*-
* Copyright (c) 2000, 2001 The NetBSD Foundation, Inc.
@@ -42,7 +42,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: mca.c,v 1.17 2005/02/04 02:10:43 perry Exp $");
+__KERNEL_RCSID(0, "$NetBSD: mca.c,v 1.18 2005/08/25 18:35:39 drochner Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -118,15 +118,15 @@ mca_print(aux, pnp)
}
int
-mca_submatch(parent, cf, ldesc, aux)
+mca_submatch(parent, cf, locs, aux)
struct device *parent;
struct cfdata *cf;
- const locdesc_t *ldesc;
+ const locdesc_t *locs;
void *aux;
{
if (cf->cf_loc[MCACF_SLOT] != MCACF_SLOT_DEFAULT &&
- cf->cf_loc[MCACF_SLOT] != ldesc->locs[MCACF_SLOT])
+ cf->cf_loc[MCACF_SLOT] != locs[MCACF_SLOT])
return 0;
return (config_match(parent, cf, aux));
}
@@ -162,8 +162,7 @@ mca_attach(parent, self, aux)
for (slot = 0; slot < MCA_MAX_SLOTS; slot++) {
struct mca_attach_args ma;
int reg;
- int help[2];
- locdesc_t *ldesc = (void *)help; /* XXX */
+ int locs[MCACF_NLOCS];
ma.ma_iot = iot;
ma.ma_memt = memt;
@@ -178,12 +177,11 @@ mca_attach(parent, self, aux)
if (ma.ma_id == 0xffff) /* no adapter here */
continue;
- ldesc->len = 1;
- ldesc->locs[MCACF_SLOT] = slot;
+ locs[MCACF_SLOT] = slot;
if (ma.ma_pos[2] & MCA_POS2_ENABLE
|| mca_match_disabled(ma.ma_id))
- config_found_sm_loc(self, "mca", ldesc, &ma,
+ config_found_sm_loc(self, "mca", locs, &ma,
mca_print, mca_submatch);
else {
mca_print(&ma, self->dv_xname);