a round of autoconf cleanup:
-convert submatch() style functions (passed to config_search() or config_found_sm()) to the locator passing variants -pass interface attributes in some cases -make submatch() functions look uniformly as far as possible -avoid macros which just hide cfdata members, and reduce dependencies on "locators.h"
This commit is contained in:
parent
d758c65552
commit
96b589fc18
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: ata_raid.c,v 1.8 2004/01/25 18:06:48 hannken Exp $ */
|
||||
/* $NetBSD: ata_raid.c,v 1.9 2004/09/13 12:55:47 drochner Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2003 Wasabi Systems, Inc.
|
||||
@ -40,7 +40,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: ata_raid.c,v 1.8 2004/01/25 18:06:48 hannken Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: ata_raid.c,v 1.9 2004/09/13 12:55:47 drochner Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/buf.h>
|
||||
@ -75,7 +75,8 @@ static int ataraid_match(struct device *, struct cfdata *, void *);
|
||||
static void ataraid_attach(struct device *, struct device *, void *);
|
||||
static int ataraid_print(void *, const char *);
|
||||
|
||||
static int ataraid_submatch(struct device *, struct cfdata *, void *);
|
||||
static int ataraid_submatch(struct device *, struct cfdata *,
|
||||
const locdesc_t *, void *);
|
||||
|
||||
static int ata_raid_finalize(struct device *);
|
||||
|
||||
@ -182,6 +183,8 @@ static void
|
||||
ataraid_attach(struct device *parent, struct device *self, void *aux)
|
||||
{
|
||||
struct ataraid_array_info *aai;
|
||||
int help[3];
|
||||
locdesc_t *ldesc = (void *)help; /* XXX */
|
||||
|
||||
/*
|
||||
* We're a pseudo-device, so we get to announce our own
|
||||
@ -192,7 +195,12 @@ ataraid_attach(struct device *parent, struct device *self, void *aux)
|
||||
ataraid_array_info_count == 1 ? "" : "s");
|
||||
|
||||
TAILQ_FOREACH(aai, &ataraid_array_info_list, aai_list) {
|
||||
config_found_sm(self, aai, ataraid_print, ataraid_submatch);
|
||||
ldesc->len = 2;
|
||||
ldesc->locs[ATARAIDCF_VENDTYPE] = aai->aai_type;
|
||||
ldesc->locs[ATARAIDCF_UNIT] = aai->aai_arrayno;
|
||||
|
||||
config_found_sm_loc(self, "ataraid", NULL, aai,
|
||||
ataraid_print, ataraid_submatch);
|
||||
}
|
||||
}
|
||||
|
||||
@ -218,16 +226,16 @@ ataraid_print(void *aux, const char *pnp)
|
||||
* Submatch routine for ATA RAID logical disks.
|
||||
*/
|
||||
static int
|
||||
ataraid_submatch(struct device *parent, struct cfdata *cf, void *aux)
|
||||
ataraid_submatch(struct device *parent, struct cfdata *cf,
|
||||
const locdesc_t *ldesc, void *aux)
|
||||
{
|
||||
struct ataraid_array_info *aai = aux;
|
||||
|
||||
if (cf->cf_loc[ATARAIDCF_VENDTYPE] != ATARAIDCF_VENDTYPE_DEFAULT &&
|
||||
cf->cf_loc[ATARAIDCF_VENDTYPE] != aai->aai_type)
|
||||
cf->cf_loc[ATARAIDCF_VENDTYPE] != ldesc->locs[ATARAIDCF_VENDTYPE])
|
||||
return (0);
|
||||
|
||||
if (cf->cf_loc[ATARAIDCF_UNIT] != ATARAIDCF_UNIT_DEFAULT &&
|
||||
cf->cf_loc[ATARAIDCF_UNIT] != aai->aai_arrayno)
|
||||
cf->cf_loc[ATARAIDCF_UNIT] != ldesc->locs[ATARAIDCF_UNIT])
|
||||
return (0);
|
||||
|
||||
return (config_match(parent, cf, aux));
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: cardslot.c,v 1.24 2003/11/02 09:56:38 wiz Exp $ */
|
||||
/* $NetBSD: cardslot.c,v 1.25 2004/09/13 12:55:47 drochner Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 1999 and 2000
|
||||
@ -33,7 +33,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: cardslot.c,v 1.24 2003/11/02 09:56:38 wiz Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: cardslot.c,v 1.25 2004/09/13 12:55:47 drochner Exp $");
|
||||
|
||||
#include "opt_cardslot.h"
|
||||
|
||||
@ -53,6 +53,7 @@ __KERNEL_RCSID(0, "$NetBSD: cardslot.c,v 1.24 2003/11/02 09:56:38 wiz Exp $");
|
||||
#include <dev/pcmcia/pcmciachip.h>
|
||||
#include <dev/ic/i82365var.h>
|
||||
|
||||
#include "locators.h"
|
||||
|
||||
#if defined CARDSLOT_DEBUG
|
||||
#define STATIC
|
||||
@ -72,7 +73,8 @@ static void cardslot_event_thread __P((void *arg));
|
||||
|
||||
STATIC int cardslot_cb_print __P((void *aux, const char *pcic));
|
||||
static int cardslot_16_print __P((void *, const char *));
|
||||
static int cardslot_16_submatch __P((struct device *, struct cfdata *,void *));
|
||||
static int cardslot_16_submatch __P((struct device *, struct cfdata *,
|
||||
const locdesc_t *, void *));
|
||||
|
||||
CFATTACH_DECL(cardslot, sizeof(struct cardslot_softc),
|
||||
cardslotmatch, cardslotattach, NULL, NULL);
|
||||
@ -116,20 +118,25 @@ cardslotattach(parent, self, aux)
|
||||
SIMPLEQ_INIT(&sc->sc_events);
|
||||
sc->sc_th_enable = 0;
|
||||
|
||||
printf(" slot %d flags %x\n", sc->sc_slot, sc->sc_dev.dv_cfdata->cf_flags);
|
||||
printf(" slot %d flags %x\n", sc->sc_slot,
|
||||
sc->sc_dev.dv_cfdata->cf_flags);
|
||||
|
||||
DPRINTF(("%s attaching CardBus bus...\n", sc->sc_dev.dv_xname));
|
||||
if (cba != NULL) {
|
||||
if (NULL != (csc = (void *)config_found(self, cba, cardslot_cb_print))) {
|
||||
csc = (void *)config_found_ia(self, "cbbus", cba,
|
||||
cardslot_cb_print);
|
||||
if (csc) {
|
||||
/* cardbus found */
|
||||
DPRINTF(("cardslotattach: found cardbus on %s\n", sc->sc_dev.dv_xname));
|
||||
DPRINTF(("cardslotattach: found cardbus on %s\n",
|
||||
sc->sc_dev.dv_xname));
|
||||
sc->sc_cb_softc = csc;
|
||||
}
|
||||
}
|
||||
|
||||
if (pa != NULL) {
|
||||
if (NULL != (psc = (void *)config_found_sm(self, pa,
|
||||
cardslot_16_print, cardslot_16_submatch))) {
|
||||
psc = (void *)config_found_sm_loc(self, "pcmciabus", NULL, pa,
|
||||
cardslot_16_print, cardslot_16_submatch);
|
||||
if (psc) {
|
||||
/* pcmcia 16-bit bus found */
|
||||
DPRINTF(("cardslotattach: found 16-bit pcmcia bus\n"));
|
||||
sc->sc_16_softc = psc;
|
||||
@ -178,9 +185,10 @@ cardslot_cb_print(aux, pnp)
|
||||
|
||||
|
||||
static int
|
||||
cardslot_16_submatch(parent, cf, aux)
|
||||
cardslot_16_submatch(parent, cf, ldesc, aux)
|
||||
struct device *parent;
|
||||
struct cfdata *cf;
|
||||
const locdesc_t *ldesc;
|
||||
void *aux;
|
||||
{
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: cardslotvar.h,v 1.7 2003/07/08 10:06:29 itojun Exp $ */
|
||||
/* $NetBSD: cardslotvar.h,v 1.8 2004/09/13 12:55:47 drochner Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 1999
|
||||
@ -122,8 +122,6 @@ typedef struct cardslot_softc *cardslot_t;
|
||||
|
||||
#define IS_CARDSLOT_INSERT_REMOVE_EV(x) (0 <= (x) && (x) <= 3)
|
||||
|
||||
#include "locators.h"
|
||||
|
||||
void cardslot_event_throw __P((cardslot_t, int));
|
||||
|
||||
#endif /* !_DEV_CARDBUS_CARDSLOTVAR_H_ */
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: cs80bus.c,v 1.1 2003/06/02 03:51:04 gmcgarry Exp $ */
|
||||
/* $NetBSD: cs80bus.c,v 1.2 2004/09/13 12:55:47 drochner Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 2001 The NetBSD Foundation, Inc.
|
||||
@ -37,7 +37,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: cs80bus.c,v 1.1 2003/06/02 03:51:04 gmcgarry Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: cs80bus.c,v 1.2 2004/09/13 12:55:47 drochner Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
@ -71,7 +71,8 @@ CFATTACH_DECL(cs80bus, sizeof(struct cs80bus_softc),
|
||||
cs80busmatch, cs80busattach, NULL, NULL);
|
||||
|
||||
static int cs80bus_alloc(struct cs80bus_softc *, int, int);
|
||||
static int cs80bussearch(struct device *, struct cfdata *, void *);
|
||||
static int cs80bussearch(struct device *, struct cfdata *,
|
||||
const locdesc_t *, void *);
|
||||
static int cs80busprint(void *, const char *);
|
||||
|
||||
/*
|
||||
@ -141,7 +142,7 @@ cs80busattach(parent, self, aux)
|
||||
ca.ca_slave = slave;
|
||||
ca.ca_id = id;
|
||||
|
||||
(void)config_search(cs80bussearch, &sc->sc_dev, &ca);
|
||||
(void)config_search_ia(cs80bussearch, &sc->sc_dev, "cs80bus", &ca);
|
||||
}
|
||||
}
|
||||
|
||||
@ -149,6 +150,7 @@ int
|
||||
cs80bussearch(parent, cf, aux)
|
||||
struct device *parent;
|
||||
struct cfdata *cf;
|
||||
const locdesc_t *ldesc;
|
||||
void *aux;
|
||||
{
|
||||
struct cs80bus_softc *sc = (struct cs80bus_softc *)parent;
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: gpib.c,v 1.1 2003/06/02 03:45:42 gmcgarry Exp $ */
|
||||
/* $NetBSD: gpib.c,v 1.2 2004/09/13 12:55:47 drochner Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 2003 The NetBSD Foundation, Inc.
|
||||
@ -37,7 +37,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: gpib.c,v 1.1 2003/06/02 03:45:42 gmcgarry Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: gpib.c,v 1.2 2004/09/13 12:55:47 drochner Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
@ -71,8 +71,10 @@ void gpibattach __P((struct device *, struct device *, void *));
|
||||
CFATTACH_DECL(gpib, sizeof(struct gpib_softc),
|
||||
gpibmatch, gpibattach, NULL, NULL);
|
||||
|
||||
static int gpibsubmatch1(struct device *, struct cfdata *, void *);
|
||||
static int gpibsubmatch2(struct device *, struct cfdata *, void *);
|
||||
static int gpibsubmatch1(struct device *, struct cfdata *,
|
||||
const locdesc_t *, void *);
|
||||
static int gpibsubmatch2(struct device *, struct cfdata *,
|
||||
const locdesc_t *, void *);
|
||||
static int gpibprint(void *, const char *);
|
||||
|
||||
dev_type_open(gpibopen);
|
||||
@ -139,18 +141,19 @@ gpibattach(parent, self, aux)
|
||||
for (address=0; address<GPIB_NDEVS; address++) {
|
||||
ga.ga_ic = sc->sc_ic;
|
||||
ga.ga_address = address;
|
||||
(void) config_search(gpibsubmatch1, &sc->sc_dev, &ga);
|
||||
(void) config_search_ia(gpibsubmatch1, &sc->sc_dev, "gpib", &ga);
|
||||
}
|
||||
|
||||
/* attach the wild-carded devices - probably protocol busses */
|
||||
ga.ga_ic = sc->sc_ic;
|
||||
(void) config_search(gpibsubmatch2, &sc->sc_dev, &ga);
|
||||
(void) config_search_ia(gpibsubmatch2, &sc->sc_dev, "gpib", &ga);
|
||||
}
|
||||
|
||||
int
|
||||
gpibsubmatch1(parent, cf, aux)
|
||||
gpibsubmatch1(parent, cf, ldesc, aux)
|
||||
struct device *parent;
|
||||
struct cfdata *cf;
|
||||
const locdesc_t *ldesc;
|
||||
void *aux;
|
||||
{
|
||||
struct gpib_softc *sc = (struct gpib_softc *)parent;
|
||||
@ -175,6 +178,7 @@ int
|
||||
gpibsubmatch2(parent, cf, aux)
|
||||
struct device *parent;
|
||||
struct cfdata *cf;
|
||||
const locdesc_t *ldesc;
|
||||
void *aux;
|
||||
{
|
||||
struct gpib_attach_args *ga = aux;
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: hpcioman.c,v 1.10 2003/01/01 00:19:31 thorpej Exp $ */
|
||||
/* $NetBSD: hpcioman.c,v 1.11 2004/09/13 12:55:47 drochner Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 1999-2001 The NetBSD Foundation, Inc.
|
||||
@ -37,7 +37,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: hpcioman.c,v 1.10 2003/01/01 00:19:31 thorpej Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: hpcioman.c,v 1.11 2004/09/13 12:55:47 drochner Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
@ -56,7 +56,8 @@ __KERNEL_RCSID(0, "$NetBSD: hpcioman.c,v 1.10 2003/01/01 00:19:31 thorpej Exp $"
|
||||
int hpcioman_match(struct device *, struct cfdata *, void *);
|
||||
void hpcioman_attach(struct device *, struct device *, void *);
|
||||
int hpcioman_print(void *, const char *);
|
||||
int hpcioman_search(struct device *, struct cfdata *, void *);
|
||||
int hpcioman_search(struct device *, struct cfdata *,
|
||||
const locdesc_t *, void *);
|
||||
|
||||
struct hpcioman_softc {
|
||||
struct device sc_dev;
|
||||
@ -84,11 +85,12 @@ hpcioman_attach(struct device *parent, struct device *self, void *aux)
|
||||
{
|
||||
printf("\n");
|
||||
|
||||
config_search(hpcioman_search, self, aux);
|
||||
config_search_ia(hpcioman_search, self, "hpcioman", aux);
|
||||
}
|
||||
|
||||
int
|
||||
hpcioman_search(struct device *parent, struct cfdata *cf, void *aux)
|
||||
hpcioman_search(struct device *parent, struct cfdata *cf,
|
||||
const locdesc_t *ldesc, void *aux)
|
||||
{
|
||||
//struct hpcioman_softc *sc = (struct hpcioman_softc *)parent;
|
||||
struct hpcio_attach_args *haa = aux;
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: i2c.c,v 1.2 2004/05/16 11:42:28 wiz Exp $ */
|
||||
/* $NetBSD: i2c.c,v 1.3 2004/09/13 12:55:47 drochner Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2003 Wasabi Systems, Inc.
|
||||
@ -72,7 +72,8 @@ iic_print(void *aux, const char *pnp)
|
||||
}
|
||||
|
||||
static int
|
||||
iic_search(struct device *parent, struct cfdata *cf, void *aux)
|
||||
iic_search(struct device *parent, struct cfdata *cf,
|
||||
const locdesc_t *ldesc, void *aux)
|
||||
{
|
||||
struct iic_softc *sc = (void *) parent;
|
||||
struct i2c_attach_args ia;
|
||||
@ -111,7 +112,7 @@ iic_attach(struct device *parent, struct device *self, void *aux)
|
||||
* Attach all i2c devices described in the kernel
|
||||
* configuration file.
|
||||
*/
|
||||
config_search(iic_search, self, NULL);
|
||||
config_search_ia(iic_search, self, "iic", NULL);
|
||||
}
|
||||
|
||||
CFATTACH_DECL(iic, sizeof(struct iic_softc),
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: iop.c,v 1.43 2004/04/22 00:17:10 itojun Exp $ */
|
||||
/* $NetBSD: iop.c,v 1.44 2004/09/13 12:55:47 drochner Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 2000, 2001, 2002 The NetBSD Foundation, Inc.
|
||||
@ -41,7 +41,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: iop.c,v 1.43 2004/04/22 00:17:10 itojun Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: iop.c,v 1.44 2004/09/13 12:55:47 drochner Exp $");
|
||||
|
||||
#include "opt_i2o.h"
|
||||
#include "iop.h"
|
||||
@ -67,6 +67,8 @@ __KERNEL_RCSID(0, "$NetBSD: iop.c,v 1.43 2004/04/22 00:17:10 itojun Exp $");
|
||||
#include <dev/i2o/iopreg.h>
|
||||
#include <dev/i2o/iopvar.h>
|
||||
|
||||
#include "locators.h"
|
||||
|
||||
#define POLL(ms, cond) \
|
||||
do { \
|
||||
int i; \
|
||||
@ -226,7 +228,8 @@ static void iop_configure_devices(struct iop_softc *, int, int);
|
||||
static void iop_devinfo(int, char *, size_t);
|
||||
static int iop_print(void *, const char *);
|
||||
static void iop_shutdown(void *);
|
||||
static int iop_submatch(struct device *, struct cfdata *, void *);
|
||||
static int iop_submatch(struct device *, struct cfdata *,
|
||||
const locdesc_t *, void *);
|
||||
|
||||
static void iop_adjqparam(struct iop_softc *, int);
|
||||
static void iop_create_reconf_thread(void *);
|
||||
@ -483,6 +486,8 @@ iop_config_interrupts(struct device *self)
|
||||
struct iop_softc *sc, *iop;
|
||||
struct i2o_systab_entry *ste;
|
||||
int rv, i, niop;
|
||||
int help[2];
|
||||
locdesc_t *ldesc = (void *)help; /* XXX */
|
||||
|
||||
sc = (struct iop_softc *)self;
|
||||
LIST_INIT(&sc->sc_iilist);
|
||||
@ -586,7 +591,9 @@ iop_config_interrupts(struct device *self)
|
||||
*/
|
||||
ia.ia_class = I2O_CLASS_ANY;
|
||||
ia.ia_tid = I2O_TID_IOP;
|
||||
config_found_sm(self, &ia, iop_print, iop_submatch);
|
||||
ldesc->len = 1;
|
||||
ldesc->locs[IOPCF_TID] = I2O_TID_IOP;
|
||||
config_found_sm_loc(self, "iop", NULL, &ia, iop_print, iop_submatch);
|
||||
|
||||
/*
|
||||
* Start device configuration.
|
||||
@ -796,6 +803,8 @@ iop_configure_devices(struct iop_softc *sc, int mask, int maskval)
|
||||
struct device *dv;
|
||||
int i, j, nent;
|
||||
u_int usertid;
|
||||
int help[2];
|
||||
locdesc_t *ldesc = (void *)help; /* XXX */
|
||||
|
||||
nent = sc->sc_nlctent;
|
||||
for (i = 0, le = sc->sc_lct->entry; i < nent; i++, le++) {
|
||||
@ -832,7 +841,11 @@ iop_configure_devices(struct iop_softc *sc, int mask, int maskval)
|
||||
if (ii != NULL)
|
||||
continue;
|
||||
|
||||
dv = config_found_sm(&sc->sc_dv, &ia, iop_print, iop_submatch);
|
||||
ldesc->len = 1;
|
||||
ldesc->locs[IOPCF_TID] = ii->ii_tid;
|
||||
|
||||
dv = config_found_sm_loc(&sc->sc_dv, "iop", NULL, &ia,
|
||||
iop_print, iop_submatch);
|
||||
if (dv != NULL) {
|
||||
sc->sc_tidmap[i].it_flags |= IT_CONFIGURED;
|
||||
strcpy(sc->sc_tidmap[i].it_dvname, dv->dv_xname);
|
||||
@ -890,13 +903,12 @@ iop_print(void *aux, const char *pnp)
|
||||
}
|
||||
|
||||
static int
|
||||
iop_submatch(struct device *parent, struct cfdata *cf, void *aux)
|
||||
iop_submatch(struct device *parent, struct cfdata *cf,
|
||||
const locdesc_t *ldesc, void *aux)
|
||||
{
|
||||
struct iop_attach_args *ia;
|
||||
|
||||
ia = aux;
|
||||
|
||||
if (cf->iopcf_tid != IOPCF_TID_DEFAULT && cf->iopcf_tid != ia->ia_tid)
|
||||
if (cf->cf_loc[IOPCF_TID] != IOPCF_TID_DEFAULT &&
|
||||
cf->cf_loc[IOPCF_TID] != ldesc->locs[IOPCF_TID])
|
||||
return (0);
|
||||
|
||||
return (config_match(parent, cf, aux));
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: iopvar.h,v 1.13 2003/12/09 19:43:54 ad Exp $ */
|
||||
/* $NetBSD: iopvar.h,v 1.14 2004/09/13 12:55:47 drochner Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 2000, 2001, 2002 The NetBSD Foundation, Inc.
|
||||
@ -39,8 +39,6 @@
|
||||
#ifndef _I2O_IOPVAR_H_
|
||||
#define _I2O_IOPVAR_H_
|
||||
|
||||
#include "locators.h"
|
||||
|
||||
/*
|
||||
* Transfer descriptor.
|
||||
*/
|
||||
@ -164,7 +162,6 @@ struct iop_attach_args {
|
||||
int ia_class; /* device class */
|
||||
int ia_tid; /* target ID */
|
||||
};
|
||||
#define iopcf_tid cf_loc[IOPCF_TID] /* TID */
|
||||
|
||||
void iop_init(struct iop_softc *, const char *);
|
||||
int iop_intr(void *);
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: aac.c,v 1.12 2004/08/24 00:53:28 thorpej Exp $ */
|
||||
/* $NetBSD: aac.c,v 1.13 2004/09/13 12:55:47 drochner Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 2002 The NetBSD Foundation, Inc.
|
||||
@ -77,9 +77,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: aac.c,v 1.12 2004/08/24 00:53:28 thorpej Exp $");
|
||||
|
||||
#include "locators.h"
|
||||
__KERNEL_RCSID(0, "$NetBSD: aac.c,v 1.13 2004/09/13 12:55:47 drochner Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
@ -96,6 +94,8 @@ __KERNEL_RCSID(0, "$NetBSD: aac.c,v 1.12 2004/08/24 00:53:28 thorpej Exp $");
|
||||
#include <dev/ic/aacvar.h>
|
||||
#include <dev/ic/aac_tables.h>
|
||||
|
||||
#include "locators.h"
|
||||
|
||||
static int aac_check_firmware(struct aac_softc *);
|
||||
static void aac_describe_controller(struct aac_softc *);
|
||||
static int aac_dequeue_fib(struct aac_softc *, int, u_int32_t *,
|
||||
@ -111,7 +111,8 @@ static int aac_sync_command(struct aac_softc *, u_int32_t, u_int32_t,
|
||||
u_int32_t, u_int32_t, u_int32_t, u_int32_t *);
|
||||
static int aac_sync_fib(struct aac_softc *, u_int32_t, u_int32_t, void *,
|
||||
u_int16_t, void *, u_int16_t *);
|
||||
static int aac_submatch(struct device *, struct cfdata *, void *);
|
||||
static int aac_submatch(struct device *, struct cfdata *,
|
||||
const locdesc_t *, void *);
|
||||
|
||||
#ifdef AAC_DEBUG
|
||||
static void aac_print_fib(struct aac_softc *, struct aac_fib *, char *);
|
||||
@ -153,6 +154,8 @@ aac_attach(struct aac_softc *sc)
|
||||
struct aac_ccb *ac;
|
||||
struct aac_fib *fib;
|
||||
bus_addr_t fibpa;
|
||||
int help[2];
|
||||
locdesc_t *ldesc = (void *)help; /* XXX */
|
||||
|
||||
SIMPLEQ_INIT(&sc->sc_ccb_free);
|
||||
SIMPLEQ_INIT(&sc->sc_ccb_queue);
|
||||
@ -250,7 +253,12 @@ aac_attach(struct aac_softc *sc)
|
||||
if (!sc->sc_hdr[i].hd_present)
|
||||
continue;
|
||||
aaca.aaca_unit = i;
|
||||
config_found_sm(&sc->sc_dv, &aaca, aac_print, aac_submatch);
|
||||
|
||||
ldesc->len = 1;
|
||||
ldesc->locs[AACCF_UNIT] = i;
|
||||
|
||||
config_found_sm_loc(&sc->sc_dv, "aac", ldesc, &aaca,
|
||||
aac_print, aac_submatch);
|
||||
}
|
||||
|
||||
/*
|
||||
@ -302,14 +310,15 @@ aac_print(void *aux, const char *pnp)
|
||||
* Match a sub-device.
|
||||
*/
|
||||
static int
|
||||
aac_submatch(struct device *parent, struct cfdata *cf, void *aux)
|
||||
aac_submatch(struct device *parent, struct cfdata *cf,
|
||||
const locdesc_t *ldesc, void *aux)
|
||||
{
|
||||
struct aac_attach_args *aaca;
|
||||
|
||||
aaca = aux;
|
||||
|
||||
if (cf->aaccf_unit != AACCF_UNIT_DEFAULT &&
|
||||
cf->aaccf_unit != aaca->aaca_unit)
|
||||
if (cf->cf_loc[AACCF_UNIT] != AACCF_UNIT_DEFAULT &&
|
||||
cf->cf_loc[AACCF_UNIT] != ldesc->locs[AACCF_UNIT])
|
||||
return (0);
|
||||
|
||||
return (config_match(parent, cf, aux));
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: aacvar.h,v 1.3 2004/08/24 00:53:28 thorpej Exp $ */
|
||||
/* $NetBSD: aacvar.h,v 1.4 2004/09/13 12:55:47 drochner Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 2002 The NetBSD Foundation, Inc.
|
||||
@ -298,8 +298,6 @@ struct aac_attach_args {
|
||||
int aaca_unit;
|
||||
};
|
||||
|
||||
#define aaccf_unit cf_loc[AACCF_UNIT]
|
||||
|
||||
int aac_attach(struct aac_softc *);
|
||||
void aac_ccb_enqueue(struct aac_softc *, struct aac_ccb *);
|
||||
void aac_ccb_free(struct aac_softc *, struct aac_ccb *);
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: atppc.c,v 1.17 2004/08/24 00:53:29 thorpej Exp $ */
|
||||
/* $NetBSD: atppc.c,v 1.18 2004/09/13 12:55:47 drochner Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2001 Alcove - Nicolas Souchu
|
||||
@ -31,7 +31,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: atppc.c,v 1.17 2004/08/24 00:53:29 thorpej Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: atppc.c,v 1.18 2004/09/13 12:55:47 drochner Exp $");
|
||||
|
||||
#include "opt_atppc.h"
|
||||
|
||||
@ -80,7 +80,7 @@ static int (*chipset_detect[])(struct atppc_softc *) = {
|
||||
|
||||
/* Prototypes for functions. */
|
||||
|
||||
/* Print function for config_found_sm() */
|
||||
/* Print function for config_found() */
|
||||
static int atppc_print(void *, const char *);
|
||||
|
||||
/* Detection routines */
|
||||
@ -237,8 +237,8 @@ atppc_sc_attach(struct atppc_softc *lsc)
|
||||
lsc->sc_use = 0;
|
||||
|
||||
/* Configure child of the device. */
|
||||
lsc->child = config_found_sm(&(lsc->sc_dev), &(sc_parport_adapter),
|
||||
atppc_print, NULL);
|
||||
lsc->child = config_found(&(lsc->sc_dev), &(sc_parport_adapter),
|
||||
atppc_print);
|
||||
|
||||
return;
|
||||
}
|
||||
@ -267,7 +267,7 @@ atppc_sc_detach(struct atppc_softc *lsc, int flag)
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* Used by config_found_sm() to print out device information */
|
||||
/* Used by config_found() to print out device information */
|
||||
static int
|
||||
atppc_print(void *aux, const char *name)
|
||||
{
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: cac.c,v 1.27 2004/08/24 00:53:29 thorpej Exp $ */
|
||||
/* $NetBSD: cac.c,v 1.28 2004/09/13 12:55:47 drochner Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 2000 The NetBSD Foundation, Inc.
|
||||
@ -41,7 +41,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: cac.c,v 1.27 2004/08/24 00:53:29 thorpej Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: cac.c,v 1.28 2004/09/13 12:55:47 drochner Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
@ -62,6 +62,8 @@ __KERNEL_RCSID(0, "$NetBSD: cac.c,v 1.27 2004/08/24 00:53:29 thorpej Exp $");
|
||||
#include <dev/ic/cacreg.h>
|
||||
#include <dev/ic/cacvar.h>
|
||||
|
||||
#include "locators.h"
|
||||
|
||||
static struct cac_ccb *cac_ccb_alloc(struct cac_softc *, int);
|
||||
static void cac_ccb_done(struct cac_softc *, struct cac_ccb *);
|
||||
static void cac_ccb_free(struct cac_softc *, struct cac_ccb *);
|
||||
@ -69,7 +71,8 @@ static int cac_ccb_poll(struct cac_softc *, struct cac_ccb *, int);
|
||||
static int cac_ccb_start(struct cac_softc *, struct cac_ccb *);
|
||||
static int cac_print(void *, const char *);
|
||||
static void cac_shutdown(void *);
|
||||
static int cac_submatch(struct device *, struct cfdata *, void *);
|
||||
static int cac_submatch(struct device *, struct cfdata *,
|
||||
const locdesc_t *, void *);
|
||||
|
||||
static struct cac_ccb *cac_l0_completed(struct cac_softc *);
|
||||
static int cac_l0_fifo_full(struct cac_softc *);
|
||||
@ -98,6 +101,8 @@ cac_init(struct cac_softc *sc, const char *intrstr, int startfw)
|
||||
int error, rseg, size, i;
|
||||
bus_dma_segment_t seg;
|
||||
struct cac_ccb *ccb;
|
||||
int help[2];
|
||||
locdesc_t *ldesc = (void *)help; /* XXX */
|
||||
|
||||
if (intrstr != NULL)
|
||||
aprint_normal("%s: interrupting at %s\n", sc->sc_dv.dv_xname,
|
||||
@ -179,7 +184,12 @@ cac_init(struct cac_softc *sc, const char *intrstr, int startfw)
|
||||
sc->sc_nunits = cinfo.num_drvs;
|
||||
for (i = 0; i < cinfo.num_drvs; i++) {
|
||||
caca.caca_unit = i;
|
||||
config_found_sm(&sc->sc_dv, &caca, cac_print, cac_submatch);
|
||||
|
||||
ldesc->len = 1;
|
||||
ldesc->locs[CACCF_UNIT] = i;
|
||||
|
||||
config_found_sm_loc(&sc->sc_dv, "cac", ldesc, &caca,
|
||||
cac_print, cac_submatch);
|
||||
}
|
||||
|
||||
/* Set our `shutdownhook' before we start any device activity. */
|
||||
@ -231,14 +241,12 @@ cac_print(void *aux, const char *pnp)
|
||||
* Match a sub-device.
|
||||
*/
|
||||
static int
|
||||
cac_submatch(struct device *parent, struct cfdata *cf, void *aux)
|
||||
cac_submatch(struct device *parent, struct cfdata *cf,
|
||||
const locdesc_t *ldesc, void *aux)
|
||||
{
|
||||
struct cac_attach_args *caca;
|
||||
|
||||
caca = (struct cac_attach_args *)aux;
|
||||
|
||||
if (cf->cacacf_unit != CACCF_UNIT_DEFAULT &&
|
||||
cf->cacacf_unit != caca->caca_unit)
|
||||
if (cf->cf_loc[CACCF_UNIT] != CACCF_UNIT_DEFAULT &&
|
||||
cf->cf_loc[CACCF_UNIT] != ldesc->locs[CACCF_UNIT])
|
||||
return (0);
|
||||
|
||||
return (config_match(parent, cf, aux));
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: cacvar.h,v 1.9 2002/01/25 16:10:36 ad Exp $ */
|
||||
/* $NetBSD: cacvar.h,v 1.10 2004/09/13 12:55:47 drochner Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 2000 The NetBSD Foundation, Inc.
|
||||
@ -39,8 +39,6 @@
|
||||
#ifndef _IC_CACVAR_H_
|
||||
#define _IC_CACVAR_H_
|
||||
|
||||
#include "locators.h"
|
||||
|
||||
#define CAC_MAX_CCBS 20
|
||||
#define CAC_MAX_XFER (0xffff * 512)
|
||||
#define CAC_SG_SIZE 32
|
||||
@ -125,8 +123,6 @@ struct cac_attach_args {
|
||||
int caca_unit;
|
||||
};
|
||||
|
||||
#define cacacf_unit cf_loc[CACCF_UNIT]
|
||||
|
||||
int cac_cmd(struct cac_softc *, int, void *, int, int, int, int,
|
||||
struct cac_context *);
|
||||
int cac_init(struct cac_softc *, const char *, int);
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: icp.c,v 1.12 2003/10/29 00:48:15 mycroft Exp $ */
|
||||
/* $NetBSD: icp.c,v 1.13 2004/09/13 12:55:47 drochner Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 2002, 2003 The NetBSD Foundation, Inc.
|
||||
@ -83,7 +83,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: icp.c,v 1.12 2003/10/29 00:48:15 mycroft Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: icp.c,v 1.13 2004/09/13 12:55:47 drochner Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
@ -111,11 +111,14 @@ __KERNEL_RCSID(0, "$NetBSD: icp.c,v 1.12 2003/10/29 00:48:15 mycroft Exp $");
|
||||
#include <dev/scsipi/scsipi_all.h>
|
||||
#include <dev/scsipi/scsiconf.h>
|
||||
|
||||
#include "locators.h"
|
||||
|
||||
int icp_async_event(struct icp_softc *, int);
|
||||
void icp_ccb_submit(struct icp_softc *icp, struct icp_ccb *ic);
|
||||
void icp_chain(struct icp_softc *);
|
||||
int icp_print(void *, const char *);
|
||||
int icp_submatch(struct device *, struct cfdata *, void *);
|
||||
int icp_submatch(struct device *, struct cfdata *,
|
||||
const locdesc_t *, void *);
|
||||
void icp_watchdog(void *);
|
||||
void icp_ucmd_intr(struct icp_ccb *);
|
||||
void icp_recompute_openings(struct icp_softc *);
|
||||
@ -138,6 +141,8 @@ icp_init(struct icp_softc *icp, const char *intrstr)
|
||||
struct icp_ccb *ic;
|
||||
u_int16_t cdev_cnt;
|
||||
int i, j, state, feat, nsegs, rv;
|
||||
int help[2];
|
||||
locdesc_t *ldesc = (void *)help; /* XXX */
|
||||
|
||||
state = 0;
|
||||
|
||||
@ -379,9 +384,13 @@ icp_init(struct icp_softc *icp, const char *intrstr)
|
||||
icp->icp_bus_id[j] = ICP_MAXID_FC;
|
||||
|
||||
icpa.icpa_unit = j + ICPA_UNIT_SCSI;
|
||||
|
||||
ldesc->len = 1;
|
||||
ldesc->locs[ICPCF_UNIT] = j + ICPA_UNIT_SCSI;
|
||||
|
||||
icp->icp_children[icpa.icpa_unit] =
|
||||
config_found_sm(&icp->icp_dv, &icpa, icp_print,
|
||||
icp_submatch);
|
||||
config_found_sm_loc(&icp->icp_dv, "icp", ldesc,
|
||||
&icpa, icp_print, icp_submatch);
|
||||
}
|
||||
}
|
||||
|
||||
@ -394,9 +403,13 @@ icp_init(struct icp_softc *icp, const char *intrstr)
|
||||
continue;
|
||||
|
||||
icpa.icpa_unit = j;
|
||||
|
||||
ldesc->len = 1;
|
||||
ldesc->locs[ICPCF_UNIT] = j;
|
||||
|
||||
icp->icp_children[icpa.icpa_unit] =
|
||||
config_found_sm(&icp->icp_dv, &icpa, icp_print,
|
||||
icp_submatch);
|
||||
config_found_sm_loc(&icp->icp_dv, "icp", ldesc,
|
||||
&icpa, icp_print, icp_submatch);
|
||||
}
|
||||
}
|
||||
|
||||
@ -444,6 +457,8 @@ icp_rescan(struct icp_softc *icp, int unit)
|
||||
{
|
||||
struct icp_attach_args icpa;
|
||||
u_int newsize, newtype;
|
||||
int help[2];
|
||||
locdesc_t *ldesc = (void *)help; /* XXX */
|
||||
|
||||
/*
|
||||
* NOTE: It is very important that the queue be frozen and not
|
||||
@ -515,8 +530,12 @@ icp_rescan(struct icp_softc *icp, int unit)
|
||||
DETACH_FORCE);
|
||||
|
||||
icpa.icpa_unit = unit;
|
||||
icp->icp_children[unit] = config_found_sm(&icp->icp_dv, &icpa,
|
||||
icp_print, icp_submatch);
|
||||
|
||||
ldesc->len = 1;
|
||||
ldesc->locs[ICPCF_UNIT] = unit;
|
||||
|
||||
icp->icp_children[unit] = config_found_sm_loc(&icp->icp_dv,
|
||||
"icp", ldesc, &icpa, icp_print, icp_submatch);
|
||||
}
|
||||
|
||||
icp_recompute_openings(icp);
|
||||
@ -629,14 +648,12 @@ icp_print(void *aux, const char *pnp)
|
||||
}
|
||||
|
||||
int
|
||||
icp_submatch(struct device *parent, struct cfdata *cf, void *aux)
|
||||
icp_submatch(struct device *parent, struct cfdata *cf,
|
||||
const locdesc_t *ldesc, void *aux)
|
||||
{
|
||||
struct icp_attach_args *icpa;
|
||||
|
||||
icpa = (struct icp_attach_args *)aux;
|
||||
|
||||
if (cf->icpacf_unit != ICPCF_UNIT_DEFAULT &&
|
||||
cf->icpacf_unit != icpa->icpa_unit)
|
||||
if (cf->cf_loc[ICPCF_UNIT] != ICPCF_UNIT_DEFAULT &&
|
||||
cf->cf_loc[ICPCF_UNIT] != ldesc->locs[ICPCF_UNIT])
|
||||
return (0);
|
||||
|
||||
return (config_match(parent, cf, aux));
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: icpvar.h,v 1.3 2003/06/13 05:57:31 thorpej Exp $ */
|
||||
/* $NetBSD: icpvar.h,v 1.4 2004/09/13 12:55:47 drochner Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 2002, 2003 The NetBSD Foundation, Inc.
|
||||
@ -39,8 +39,6 @@
|
||||
#ifndef _IC_ICPVAR_H_
|
||||
#define _IC_ICPVAR_H_
|
||||
|
||||
#include "locators.h"
|
||||
|
||||
#include <dev/ic/icp_ioctl.h>
|
||||
|
||||
/*
|
||||
@ -237,8 +235,6 @@ struct icp_attach_args {
|
||||
int icpa_unit;
|
||||
};
|
||||
|
||||
#define icpacf_unit cf_loc[ICPCF_UNIT]
|
||||
|
||||
#define ICPA_UNIT_SCSI 100
|
||||
|
||||
struct icp_ccb *icp_ccb_alloc(struct icp_softc *);
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: mlx.c,v 1.29 2004/04/22 00:17:11 itojun Exp $ */
|
||||
/* $NetBSD: mlx.c,v 1.30 2004/09/13 12:55:47 drochner Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 2001 The NetBSD Foundation, Inc.
|
||||
@ -74,7 +74,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: mlx.c,v 1.29 2004/04/22 00:17:11 itojun Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: mlx.c,v 1.30 2004/09/13 12:55:47 drochner Exp $");
|
||||
|
||||
#include "ld.h"
|
||||
|
||||
@ -102,6 +102,8 @@ __KERNEL_RCSID(0, "$NetBSD: mlx.c,v 1.29 2004/04/22 00:17:11 itojun Exp $");
|
||||
#include <dev/ic/mlxio.h>
|
||||
#include <dev/ic/mlxvar.h>
|
||||
|
||||
#include "locators.h"
|
||||
|
||||
#define MLX_TIMEOUT 60
|
||||
|
||||
#ifdef DIAGNOSTIC
|
||||
@ -130,7 +132,8 @@ static void mlx_periodic_thread(void *);
|
||||
static int mlx_print(void *, const char *);
|
||||
static int mlx_rebuild(struct mlx_softc *, int, int);
|
||||
static void mlx_shutdown(void *);
|
||||
static int mlx_submatch(struct device *, struct cfdata *, void *);
|
||||
static int mlx_submatch(struct device *, struct cfdata *,
|
||||
const locdesc_t *, void *);
|
||||
static int mlx_user_command(struct mlx_softc *, struct mlx_usercommand *);
|
||||
|
||||
static __inline__ time_t mlx_curtime(void);
|
||||
@ -573,6 +576,8 @@ mlx_configure(struct mlx_softc *mlx, int waitok)
|
||||
struct mlx_attach_args mlxa;
|
||||
int i, nunits;
|
||||
u_int size;
|
||||
int help[2];
|
||||
locdesc_t *ldesc = (void *)help; /* XXX */
|
||||
|
||||
mlx->mlx_flags |= MLXF_RESCANNING;
|
||||
|
||||
@ -636,7 +641,11 @@ mlx_configure(struct mlx_softc *mlx, int waitok)
|
||||
* Attach a new device.
|
||||
*/
|
||||
mlxa.mlxa_unit = i;
|
||||
ms->ms_dv = config_found_sm(&mlx->mlx_dv, &mlxa, mlx_print,
|
||||
|
||||
ldesc->len = 1;
|
||||
ldesc->locs[MLXCF_UNIT] = i;
|
||||
|
||||
ms->ms_dv = config_found_sm_loc(&mlx->mlx_dv, "mlx", NULL, &mlxa, mlx_print,
|
||||
mlx_submatch);
|
||||
nunits += (ms->ms_dv != NULL);
|
||||
}
|
||||
@ -670,14 +679,12 @@ mlx_print(void *aux, const char *pnp)
|
||||
* Match a sub-device.
|
||||
*/
|
||||
static int
|
||||
mlx_submatch(struct device *parent, struct cfdata *cf, void *aux)
|
||||
mlx_submatch(struct device *parent, struct cfdata *cf,
|
||||
const locdesc_t *ldesc, void *aux)
|
||||
{
|
||||
struct mlx_attach_args *mlxa;
|
||||
|
||||
mlxa = (struct mlx_attach_args *)aux;
|
||||
|
||||
if (cf->mlxacf_unit != MLXCF_UNIT_DEFAULT &&
|
||||
cf->mlxacf_unit != mlxa->mlxa_unit)
|
||||
if (cf->cf_loc[MLXCF_UNIT] != MLXCF_UNIT_DEFAULT &&
|
||||
cf->cf_loc[MLXCF_UNIT] != ldesc->locs[MLXCF_UNIT])
|
||||
return (0);
|
||||
|
||||
return (config_match(parent, cf, aux));
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: mlxvar.h,v 1.7 2002/09/22 18:59:00 ad Exp $ */
|
||||
/* $NetBSD: mlxvar.h,v 1.8 2004/09/13 12:55:48 drochner Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 2001 The NetBSD Foundation, Inc.
|
||||
@ -67,8 +67,6 @@
|
||||
#ifndef _IC_MLXVAR_H_
|
||||
#define _IC_MLXVAR_H_
|
||||
|
||||
#include "locators.h"
|
||||
|
||||
/* Older boards allow up to 17 segments and 64kB transfers. */
|
||||
#define MLX_MAX_SEGS 17
|
||||
#define MLX_MAX_XFER 65536
|
||||
@ -183,8 +181,6 @@ struct mlx_attach_args {
|
||||
int mlxa_unit;
|
||||
};
|
||||
|
||||
#define mlxacf_unit cf_loc[MLXCF_UNIT]
|
||||
|
||||
int mlx_flush(struct mlx_softc *, int);
|
||||
void mlx_init(struct mlx_softc *, const char *);
|
||||
int mlx_intr(void *);
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: upc.c,v 1.7 2003/11/29 19:33:34 bjh21 Exp $ */
|
||||
/* $NetBSD: upc.c,v 1.8 2004/09/13 12:55:48 drochner Exp $ */
|
||||
/*-
|
||||
* Copyright (c) 2000, 2003 Ben Harris
|
||||
* All rights reserved.
|
||||
@ -39,7 +39,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: upc.c,v 1.7 2003/11/29 19:33:34 bjh21 Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: upc.c,v 1.8 2004/09/13 12:55:48 drochner Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/device.h>
|
||||
@ -70,7 +70,8 @@ static void upc_found(struct upc_softc *, char const *, int, int,
|
||||
static void upc_found2(struct upc_softc *, char const *, int, int, int, int,
|
||||
struct upc_irqhandle *);
|
||||
static int upc_print(void *, char const *);
|
||||
static int upc_submatch(struct device *, struct cfdata *, void *);
|
||||
static int upc_submatch(struct device *, struct cfdata *,
|
||||
const locdesc_t *, void *);
|
||||
static int upc2_com3_addr(int);
|
||||
static int upc2_com4_addr(int);
|
||||
|
||||
@ -210,13 +211,20 @@ upc_found(struct upc_softc *sc, char const *devtype, int offset, int size,
|
||||
struct upc_irqhandle *uih)
|
||||
{
|
||||
struct upc_attach_args ua;
|
||||
int help[2];
|
||||
locdesc_t *ldesc = (void *)help;
|
||||
|
||||
ua.ua_devtype = devtype;
|
||||
ua.ua_offset = offset;
|
||||
ua.ua_iot = sc->sc_iot;
|
||||
bus_space_subregion(sc->sc_iot, sc->sc_ioh, offset, size, &ua.ua_ioh);
|
||||
ua.ua_irqhandle = uih;
|
||||
config_found_sm(&sc->sc_dev, &ua, upc_print, upc_submatch);
|
||||
|
||||
ldesc->len = 1;
|
||||
ldesc->locs[UPCCF_OFFSET] = offset;
|
||||
|
||||
config_found_sm_loc(&sc->sc_dev, "upc", ldesc, &ua,
|
||||
upc_print, upc_submatch);
|
||||
}
|
||||
|
||||
static void
|
||||
@ -224,6 +232,8 @@ upc_found2(struct upc_softc *sc, char const *devtype, int offset, int size,
|
||||
int offset2, int size2, struct upc_irqhandle *uih)
|
||||
{
|
||||
struct upc_attach_args ua;
|
||||
int help[2];
|
||||
locdesc_t *ldesc = (void *)help;
|
||||
|
||||
ua.ua_devtype = devtype;
|
||||
ua.ua_offset = offset;
|
||||
@ -232,7 +242,12 @@ upc_found2(struct upc_softc *sc, char const *devtype, int offset, int size,
|
||||
bus_space_subregion(sc->sc_iot, sc->sc_ioh, offset2, size2,
|
||||
&ua.ua_ioh2);
|
||||
ua.ua_irqhandle = uih;
|
||||
config_found_sm(&sc->sc_dev, &ua, upc_print, upc_submatch);
|
||||
|
||||
ldesc->len = 1;
|
||||
ldesc->locs[UPCCF_OFFSET] = offset;
|
||||
|
||||
config_found_sm_loc(&sc->sc_dev, "upc", ldesc, &ua,
|
||||
upc_print, upc_submatch);
|
||||
}
|
||||
|
||||
void
|
||||
@ -291,13 +306,14 @@ upc_print(void *aux, char const *pnp)
|
||||
}
|
||||
|
||||
static int
|
||||
upc_submatch(struct device *parent, struct cfdata *cf, void *aux)
|
||||
upc_submatch(struct device *parent, struct cfdata *cf,
|
||||
const locdesc_t *ldesc, void *aux)
|
||||
{
|
||||
struct upc_attach_args *ua = aux;
|
||||
|
||||
if (strcmp(cf->cf_name, ua->ua_devtype) == 0 &&
|
||||
(cf->cf_loc[UPCCF_OFFSET] == UPCCF_OFFSET_DEFAULT ||
|
||||
cf->cf_loc[UPCCF_OFFSET] == ua->ua_offset))
|
||||
cf->cf_loc[UPCCF_OFFSET] == ldesc->locs[UPCCF_OFFSET]))
|
||||
return config_match(parent, cf, aux);
|
||||
return 0;
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: fwohci.c,v 1.82 2003/12/04 13:57:30 keihan Exp $ */
|
||||
/* $NetBSD: fwohci.c,v 1.83 2004/09/13 12:55:48 drochner Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 2000 The NetBSD Foundation, Inc.
|
||||
@ -49,7 +49,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: fwohci.c,v 1.82 2003/12/04 13:57:30 keihan Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: fwohci.c,v 1.83 2004/09/13 12:55:48 drochner Exp $");
|
||||
|
||||
#define FWOHCI_WAIT_DEBUG 1
|
||||
|
||||
@ -233,7 +233,8 @@ static int fwohci_inreg(struct ieee1394_abuf *, int);
|
||||
static int fwohci_unreg(struct ieee1394_abuf *, int);
|
||||
static int fwohci_parse_input(struct fwohci_softc *, void *,
|
||||
struct fwohci_pkt *);
|
||||
static int fwohci_submatch(struct device *, struct cfdata *, void *);
|
||||
static int fwohci_submatch(struct device *, struct cfdata *,
|
||||
const locdesc_t *, void *);
|
||||
|
||||
/* XXX */
|
||||
u_int16_t fwohci_cycletimer(struct fwohci_softc *);
|
||||
@ -3237,8 +3238,9 @@ fwohci_uid_input(struct fwohci_softc *sc, void *arg, struct fwohci_pkt *res)
|
||||
memcpy(fwa.uid, fu->fu_uid, 8);
|
||||
fwa.nodeid = n;
|
||||
iea = (struct ieee1394_softc *)
|
||||
config_found_sm(&sc->sc_sc1394.sc1394_dev, &fwa,
|
||||
fwohci_print, fwohci_submatch);
|
||||
config_found_sm_loc(&sc->sc_sc1394.sc1394_dev,
|
||||
"fwbus", NULL, &fwa,
|
||||
fwohci_print, fwohci_submatch);
|
||||
if (iea != NULL)
|
||||
LIST_INSERT_HEAD(&sc->sc_nodelist, iea,
|
||||
sc1394_node);
|
||||
@ -4257,7 +4259,8 @@ fwohci_parse_input(struct fwohci_softc *sc, void *arg, struct fwohci_pkt *pkt)
|
||||
}
|
||||
|
||||
static int
|
||||
fwohci_submatch(struct device *parent, struct cfdata *cf, void *aux)
|
||||
fwohci_submatch(struct device *parent, struct cfdata *cf,
|
||||
const locdesc_t *ldesc, void *aux)
|
||||
{
|
||||
struct ieee1394_attach_args *fwa = aux;
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: isapnp.c,v 1.42 2003/12/04 13:57:30 keihan Exp $ */
|
||||
/* $NetBSD: isapnp.c,v 1.43 2004/09/13 12:55:48 drochner Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 1996 The NetBSD Foundation, Inc.
|
||||
@ -41,7 +41,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: isapnp.c,v 1.42 2003/12/04 13:57:30 keihan Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: isapnp.c,v 1.43 2004/09/13 12:55:48 drochner Exp $");
|
||||
|
||||
#include "isadma.h"
|
||||
|
||||
@ -82,7 +82,8 @@ static void isapnp_configure __P((struct isapnp_softc *,
|
||||
static void isapnp_print_pin __P((const char *, struct isapnp_pin *, size_t));
|
||||
static int isapnp_print __P((void *, const char *));
|
||||
#ifdef _KERNEL
|
||||
static int isapnp_submatch __P((struct device *, struct cfdata *, void *));
|
||||
static int isapnp_submatch __P((struct device *, struct cfdata *,
|
||||
const locdesc_t *, void *));
|
||||
#endif
|
||||
static int isapnp_find __P((struct isapnp_softc *, int));
|
||||
static int isapnp_match __P((struct device *, struct cfdata *, void *));
|
||||
@ -602,11 +603,13 @@ isapnp_print(aux, str)
|
||||
* Probe the logical device...
|
||||
*/
|
||||
static int
|
||||
isapnp_submatch(parent, match, aux)
|
||||
isapnp_submatch(parent, match, ldesc, aux)
|
||||
struct device *parent;
|
||||
struct cfdata *match;
|
||||
const locdesc_t *ldesc;
|
||||
void *aux;
|
||||
{
|
||||
|
||||
return (config_match(parent, match, aux));
|
||||
}
|
||||
|
||||
@ -1036,8 +1039,8 @@ isapnp_callback(self)
|
||||
|
||||
isapnp_write_reg(sc, ISAPNP_ACTIVATE, 1);
|
||||
#ifdef _KERNEL
|
||||
if (config_found_sm(self, lpa, isapnp_print,
|
||||
isapnp_submatch) == NULL)
|
||||
if (config_found_sm_loc(self, "isapnp", NULL, lpa,
|
||||
isapnp_print, isapnp_submatch) == NULL)
|
||||
isapnp_write_reg(sc, ISAPNP_ACTIVATE, 0);
|
||||
#else
|
||||
isapnp_print(lpa, NULL);
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: gt.c,v 1.6 2004/03/20 01:55:00 matt Exp $ */
|
||||
/* $NetBSD: gt.c,v 1.7 2004/09/13 12:55:48 drochner Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2002 Allegro Networks, Inc., Wasabi Systems, Inc.
|
||||
@ -42,7 +42,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: gt.c,v 1.6 2004/03/20 01:55:00 matt Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: gt.c,v 1.7 2004/09/13 12:55:48 drochner Exp $");
|
||||
|
||||
#include "opt_marvell.h"
|
||||
|
||||
@ -115,7 +115,8 @@ gt_cfprint (void *aux, const char *pnp)
|
||||
|
||||
|
||||
static int
|
||||
gt_cfsearch(struct device *parent, struct cfdata *cf, void *aux)
|
||||
gt_cfsearch(struct device *parent, struct cfdata *cf,
|
||||
const locdesc_t *ldesc, void *aux)
|
||||
{
|
||||
struct gt_softc *gt = (struct gt_softc *) parent;
|
||||
struct gt_attach_args ga;
|
||||
@ -332,7 +333,7 @@ gt_attach_common(struct gt_softc *gt)
|
||||
gt_devbus_intr_enb(gt);
|
||||
|
||||
gt_watchdog_disable();
|
||||
config_search(gt_cfsearch, >->gt_dev, NULL);
|
||||
config_search_ia(gt_cfsearch, >->gt_dev, "gt", NULL);
|
||||
gt_watchdog_service();
|
||||
gt_watchdog_enable();
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: gtvar.h,v 1.5 2004/03/20 01:55:00 matt Exp $ */
|
||||
/* $NetBSD: gtvar.h,v 1.6 2004/09/13 12:55:48 drochner Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2002 Allegro Networks, Inc., Wasabi Systems, Inc.
|
||||
@ -95,27 +95,11 @@ struct obio_attach_args {
|
||||
};
|
||||
|
||||
#ifdef _KERNEL
|
||||
#include "locators.h"
|
||||
|
||||
#ifdef DEBUG
|
||||
extern int gtpci_debug;
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Locators for GT private devices, as specified to config.
|
||||
*/
|
||||
#define gtcf_unit cf_loc[GTCF_UNIT]
|
||||
#define GT_UNK_UNIT GTCF_UNIT_DEFAULT /* wcarded 'function' */
|
||||
|
||||
#define obiocf_offset cf_loc[OBIOCF_OFFSET]
|
||||
#define OBIO_UNK_OFFSET OBIOCF_OFFSET_DEFAULT /* wcarded 'offset' */
|
||||
|
||||
#define obiocf_size cf_loc[OBIOCF_SIZE]
|
||||
#define OBIO_UNK_SIZE OBIOCF_SIZE_DEFAULT /* wcarded 'size' */
|
||||
|
||||
#define obiocf_irq cf_loc[OBIOCF_IRQ]
|
||||
#define OBIO_UNK_IRQ OBIOCF_IRQ_DEFAULT /* wcarded 'irq' */
|
||||
|
||||
void gt_attach_common(struct gt_softc *);
|
||||
uint32_t gt_read_mpp(void);
|
||||
int gt_cfprint(void *, const char *);
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: obio.c,v 1.4 2004/09/08 20:08:46 drochner Exp $ */
|
||||
/* $NetBSD: obio.c,v 1.5 2004/09/13 12:55:48 drochner Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2002 Allegro Networks, Inc., Wasabi Systems, Inc.
|
||||
@ -42,7 +42,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: obio.c,v 1.4 2004/09/08 20:08:46 drochner Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: obio.c,v 1.5 2004/09/13 12:55:48 drochner Exp $");
|
||||
|
||||
#include "opt_marvell.h"
|
||||
|
||||
@ -69,6 +69,8 @@ __KERNEL_RCSID(0, "$NetBSD: obio.c,v 1.4 2004/09/08 20:08:46 drochner Exp $");
|
||||
#include <sys/systm.h> /* for Debugger() */
|
||||
#endif
|
||||
|
||||
#include "locators.h"
|
||||
|
||||
static int obio_cfprint(void *, const char *);
|
||||
static int obio_cfmatch(struct device *, struct cfdata *, void *);
|
||||
static int obio_cfsearch(struct device *, struct cfdata *,
|
||||
@ -109,7 +111,7 @@ obio_cfprint(void *aux, const char *pnp)
|
||||
aprint_normal("%s at %s", oa->oa_name, pnp);
|
||||
}
|
||||
aprint_normal(" offset %#x size %#x", oa->oa_offset, oa->oa_size);
|
||||
if (oa->oa_irq != OBIO_UNK_IRQ)
|
||||
if (oa->oa_irq != OBIOCF_IRQ_DEFAULT)
|
||||
aprint_normal(" irq %d", oa->oa_irq);
|
||||
|
||||
return (UNCONF);
|
||||
@ -125,9 +127,9 @@ obio_cfsearch(struct device *parent, struct cfdata *cf,
|
||||
|
||||
oa.oa_name = cf->cf_name;
|
||||
oa.oa_memt = sc->sc_memt;
|
||||
oa.oa_offset = cf->obiocf_offset;
|
||||
oa.oa_size = cf->obiocf_size;
|
||||
oa.oa_irq = cf->obiocf_irq;
|
||||
oa.oa_offset = cf->cf_loc[OBIOCF_OFFSET];
|
||||
oa.oa_size = cf->cf_loc[OBIOCF_SIZE];
|
||||
oa.oa_irq = cf->cf_loc[OBIOCF_IRQ];
|
||||
|
||||
if (config_match(parent, cf, &oa) > 0)
|
||||
config_attach(parent, cf, &oa, obio_cfprint);
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: mii.c,v 1.36 2004/09/01 20:59:30 drochner Exp $ */
|
||||
/* $NetBSD: mii.c,v 1.37 2004/09/13 12:55:48 drochner Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 1998, 2000 The NetBSD Foundation, Inc.
|
||||
@ -43,7 +43,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: mii.c,v 1.36 2004/09/01 20:59:30 drochner Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: mii.c,v 1.37 2004/09/13 12:55:48 drochner Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/device.h>
|
||||
@ -59,7 +59,8 @@ __KERNEL_RCSID(0, "$NetBSD: mii.c,v 1.36 2004/09/01 20:59:30 drochner Exp $");
|
||||
#include "locators.h"
|
||||
|
||||
static int mii_print(void *, const char *);
|
||||
static int mii_submatch(struct device *, struct cfdata *, void *);
|
||||
static int mii_submatch(struct device *, struct cfdata *,
|
||||
const locdesc_t *, void *);
|
||||
|
||||
/*
|
||||
* Helper function used by network interface drivers, attaches PHYs
|
||||
@ -73,6 +74,8 @@ mii_attach(struct device *parent, struct mii_data *mii, int capmask,
|
||||
struct mii_softc *child;
|
||||
int bmsr, offset = 0;
|
||||
int phymin, phymax;
|
||||
int help[2];
|
||||
locdesc_t *ldesc = (void *)help; /* XXX */
|
||||
|
||||
if (phyloc != MII_PHY_ANY && offloc != MII_OFFSET_ANY)
|
||||
panic("mii_attach: phyloc and offloc specified");
|
||||
@ -141,8 +144,12 @@ mii_attach(struct device *parent, struct mii_data *mii, int capmask,
|
||||
ma.mii_capmask = capmask;
|
||||
ma.mii_flags = flags | (mii->mii_flags & MIIF_INHERIT_MASK);
|
||||
|
||||
if ((child = (struct mii_softc *)config_found_sm(parent, &ma,
|
||||
mii_print, mii_submatch)) != NULL) {
|
||||
ldesc->len = 1;
|
||||
ldesc->locs[MIICF_PHY] = ma.mii_phyno;
|
||||
|
||||
child = (struct mii_softc *)config_found_sm_loc(parent, "mii",
|
||||
ldesc, &ma, mii_print, mii_submatch);
|
||||
if (child) {
|
||||
/*
|
||||
* Link it up in the parent's MII data.
|
||||
*/
|
||||
@ -231,12 +238,12 @@ mii_print(void *aux, const char *pnp)
|
||||
}
|
||||
|
||||
static int
|
||||
mii_submatch(struct device *parent, struct cfdata *cf, void *aux)
|
||||
mii_submatch(struct device *parent, struct cfdata *cf,
|
||||
const locdesc_t *ldesc, void *aux)
|
||||
{
|
||||
struct mii_attach_args *ma = aux;
|
||||
|
||||
if (ma->mii_phyno != cf->cf_loc[MIICF_PHY] &&
|
||||
cf->cf_loc[MIICF_PHY] != MIICF_PHY_DEFAULT)
|
||||
if (cf->cf_loc[MIICF_PHY] != MIICF_PHY_DEFAULT &&
|
||||
cf->cf_loc[MIICF_PHY] != ldesc->locs[MIICF_PHY])
|
||||
return (0);
|
||||
|
||||
return (config_match(parent, cf, aux));
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: amr.c,v 1.21 2004/09/02 21:12:42 he Exp $ */
|
||||
/* $NetBSD: amr.c,v 1.22 2004/09/13 12:55:48 drochner Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 2002, 2003 The NetBSD Foundation, Inc.
|
||||
@ -71,7 +71,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: amr.c,v 1.21 2004/09/02 21:12:42 he Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: amr.c,v 1.22 2004/09/13 12:55:48 drochner Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
@ -93,6 +93,8 @@ __KERNEL_RCSID(0, "$NetBSD: amr.c,v 1.21 2004/09/02 21:12:42 he Exp $");
|
||||
#include <dev/pci/amrreg.h>
|
||||
#include <dev/pci/amrvar.h>
|
||||
|
||||
#include "locators.h"
|
||||
|
||||
void amr_attach(struct device *, struct device *, void *);
|
||||
void amr_ccb_dump(struct amr_softc *, struct amr_ccb *);
|
||||
void *amr_enquire(struct amr_softc *, u_int8_t, u_int8_t, u_int8_t, void *);
|
||||
@ -102,7 +104,8 @@ int amr_intr(void *);
|
||||
int amr_match(struct device *, struct cfdata *, void *);
|
||||
int amr_print(void *, const char *);
|
||||
void amr_shutdown(void *);
|
||||
int amr_submatch(struct device *, struct cfdata *, void *);
|
||||
int amr_submatch(struct device *, struct cfdata *,
|
||||
const locdesc_t *, void *);
|
||||
void amr_teardown(struct amr_softc *);
|
||||
void amr_thread(void *);
|
||||
void amr_thread_create(void *);
|
||||
@ -255,6 +258,8 @@ amr_attach(struct device *parent, struct device *self, void *aux)
|
||||
pcireg_t reg;
|
||||
int rseg, i, j, size, rv, memreg, ioreg;
|
||||
struct amr_ccb *ac;
|
||||
int help[2];
|
||||
locdesc_t *ldesc = (void *)help; /* XXX */
|
||||
|
||||
aprint_naive(": RAID controller\n");
|
||||
|
||||
@ -459,8 +464,12 @@ amr_attach(struct device *parent, struct device *self, void *aux)
|
||||
if (amr->amr_drive[j].al_size == 0)
|
||||
continue;
|
||||
amra.amra_unit = j;
|
||||
amr->amr_drive[j].al_dv = config_found_sm(&amr->amr_dv, &amra,
|
||||
amr_print, amr_submatch);
|
||||
|
||||
ldesc->len = 1;
|
||||
ldesc->locs[AMRCF_UNIT] = j;
|
||||
|
||||
amr->amr_drive[j].al_dv = config_found_sm_loc(&amr->amr_dv,
|
||||
"amr", ldesc, &amra, amr_print, amr_submatch);
|
||||
}
|
||||
|
||||
SIMPLEQ_INIT(&amr->amr_ccb_queue);
|
||||
@ -530,14 +539,15 @@ amr_print(void *aux, const char *pnp)
|
||||
* Match a sub-device.
|
||||
*/
|
||||
int
|
||||
amr_submatch(struct device *parent, struct cfdata *cf, void *aux)
|
||||
amr_submatch(struct device *parent, struct cfdata *cf,
|
||||
const locdesc_t *ldesc, void *aux)
|
||||
{
|
||||
struct amr_attach_args *amra;
|
||||
|
||||
amra = (struct amr_attach_args *)aux;
|
||||
|
||||
if (cf->amracf_unit != AMRCF_UNIT_DEFAULT &&
|
||||
cf->amracf_unit != amra->amra_unit)
|
||||
if (cf->cf_loc[AMRCF_UNIT] != AMRCF_UNIT_DEFAULT &&
|
||||
cf->cf_loc[AMRCF_UNIT] != ldesc->locs[AMRCF_UNIT])
|
||||
return (0);
|
||||
|
||||
return (config_match(parent, cf, aux));
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: amrvar.h,v 1.3 2003/05/14 11:22:55 ad Exp $ */
|
||||
/* $NetBSD: amrvar.h,v 1.4 2004/09/13 12:55:48 drochner Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 2002, 2003 The NetBSD Foundation, Inc.
|
||||
@ -39,8 +39,6 @@
|
||||
#ifndef _PCI_AMRVAR_H_
|
||||
#define _PCI_AMRVAR_H_
|
||||
|
||||
#include "locators.h"
|
||||
|
||||
#define AMR_MAX_UNITS 16
|
||||
#define AMR_WDOG_TICKS (hz * 5)
|
||||
#define AMR_NCCB_RESV 2
|
||||
@ -142,8 +140,6 @@ struct amr_attach_args {
|
||||
int amra_unit;
|
||||
};
|
||||
|
||||
#define amracf_unit cf_loc[AMRCF_UNIT]
|
||||
|
||||
int amr_ccb_alloc(struct amr_softc *, struct amr_ccb **);
|
||||
void amr_ccb_enqueue(struct amr_softc *, struct amr_ccb *);
|
||||
void amr_ccb_free(struct amr_softc *, struct amr_ccb *);
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: puc.c,v 1.20 2004/02/03 19:51:39 fredb Exp $ */
|
||||
/* $NetBSD: puc.c,v 1.21 2004/09/13 12:55:48 drochner Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 1996, 1998, 1999
|
||||
@ -53,7 +53,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: puc.c,v 1.20 2004/02/03 19:51:39 fredb Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: puc.c,v 1.21 2004/09/13 12:55:48 drochner Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
@ -98,7 +98,8 @@ struct puc_softc {
|
||||
int puc_match __P((struct device *, struct cfdata *, void *));
|
||||
void puc_attach __P((struct device *, struct device *, void *));
|
||||
int puc_print __P((void *, const char *));
|
||||
int puc_submatch __P((struct device *, struct cfdata *, void *));
|
||||
int puc_submatch __P((struct device *, struct cfdata *,
|
||||
const locdesc_t *, void *));
|
||||
|
||||
CFATTACH_DECL(puc, sizeof(struct puc_softc),
|
||||
puc_match, puc_attach, NULL, NULL);
|
||||
@ -167,6 +168,8 @@ puc_attach(parent, self, aux)
|
||||
#ifdef PUCCN
|
||||
bus_space_handle_t ioh;
|
||||
#endif
|
||||
int help[2];
|
||||
locdesc_t *ldesc = (void *)help; /* XXX */
|
||||
|
||||
subsys = pci_conf_read(pa->pa_pc, pa->pa_tag, PCI_SUBSYS_ID_REG);
|
||||
sc->sc_desc = puc_find_description(PCI_VENDOR(pa->pa_id),
|
||||
@ -311,9 +314,12 @@ puc_attach(parent, self, aux)
|
||||
(long)paa.t, (long)paa.h);
|
||||
#endif
|
||||
|
||||
ldesc->len = 1;
|
||||
ldesc->locs[PUCCF_PORT] = i;
|
||||
|
||||
/* and configure it */
|
||||
sc->sc_ports[i].dev = config_found_sm(self, &paa, puc_print,
|
||||
puc_submatch);
|
||||
sc->sc_ports[i].dev = config_found_sm_loc(self, "puc", ldesc,
|
||||
&paa, puc_print, puc_submatch);
|
||||
}
|
||||
}
|
||||
|
||||
@ -331,16 +337,17 @@ puc_print(aux, pnp)
|
||||
}
|
||||
|
||||
int
|
||||
puc_submatch(parent, cf, aux)
|
||||
puc_submatch(parent, cf, ldesc, aux)
|
||||
struct device *parent;
|
||||
struct cfdata *cf;
|
||||
const locdesc_t *ldesc;
|
||||
void *aux;
|
||||
{
|
||||
struct puc_attach_args *aa = aux;
|
||||
|
||||
if (cf->cf_loc[PUCCF_PORT] != PUCCF_PORT_DEFAULT &&
|
||||
cf->cf_loc[PUCCF_PORT] != aa->port)
|
||||
cf->cf_loc[PUCCF_PORT] != ldesc->locs[PUCCF_PORT])
|
||||
return 0;
|
||||
|
||||
return (config_match(parent, cf, aux));
|
||||
}
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: twe.c,v 1.58 2004/06/04 20:11:17 thorpej Exp $ */
|
||||
/* $NetBSD: twe.c,v 1.59 2004/09/13 12:55:48 drochner Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 2000, 2001, 2002, 2003, 2004 The NetBSD Foundation, Inc.
|
||||
@ -70,7 +70,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: twe.c,v 1.58 2004/06/04 20:11:17 thorpej Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: twe.c,v 1.59 2004/09/13 12:55:48 drochner Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
@ -97,6 +97,8 @@ __KERNEL_RCSID(0, "$NetBSD: twe.c,v 1.58 2004/06/04 20:11:17 thorpej Exp $");
|
||||
#include <dev/pci/twevar.h>
|
||||
#include <dev/pci/tweio.h>
|
||||
|
||||
#include "locators.h"
|
||||
|
||||
#define PCI_CBIO 0x10
|
||||
|
||||
static int twe_aen_get(struct twe_softc *, uint16_t *);
|
||||
@ -112,7 +114,8 @@ static int twe_param_set(struct twe_softc *, int, int, size_t, void *);
|
||||
static void twe_poll(struct twe_softc *);
|
||||
static int twe_print(void *, const char *);
|
||||
static int twe_reset(struct twe_softc *);
|
||||
static int twe_submatch(struct device *, struct cfdata *, void *);
|
||||
static int twe_submatch(struct device *, struct cfdata *,
|
||||
const locdesc_t *, void *);
|
||||
static int twe_status_check(struct twe_softc *, u_int);
|
||||
static int twe_status_wait(struct twe_softc *, u_int, int);
|
||||
static void twe_describe_controller(struct twe_softc *);
|
||||
@ -513,6 +516,8 @@ twe_add_unit(struct twe_softc *sc, int unit)
|
||||
int rv;
|
||||
uint16_t dsize;
|
||||
uint8_t newtype, newstripe;
|
||||
int help[2];
|
||||
locdesc_t *ldesc = (void *)help; /* XXX */
|
||||
|
||||
if (unit < 0 || unit >= TWE_MAX_UNITS)
|
||||
return (EINVAL);
|
||||
@ -599,8 +604,12 @@ twe_add_unit(struct twe_softc *sc, int unit)
|
||||
twe_recompute_openings(sc);
|
||||
|
||||
twea.twea_unit = unit;
|
||||
td->td_dev = config_found_sm(&sc->sc_dv, &twea, twe_print,
|
||||
twe_submatch);
|
||||
|
||||
ldesc->len = 1;
|
||||
ldesc->locs[TWECF_UNIT] = unit;
|
||||
|
||||
td->td_dev = config_found_sm_loc(&sc->sc_dv, "twe", NULL, &twea,
|
||||
twe_print, twe_submatch);
|
||||
|
||||
rv = 0;
|
||||
out:
|
||||
@ -735,14 +744,12 @@ twe_print(void *aux, const char *pnp)
|
||||
* Match a sub-device.
|
||||
*/
|
||||
static int
|
||||
twe_submatch(struct device *parent, struct cfdata *cf, void *aux)
|
||||
twe_submatch(struct device *parent, struct cfdata *cf,
|
||||
const locdesc_t *ldesc, void *aux)
|
||||
{
|
||||
struct twe_attach_args *twea;
|
||||
|
||||
twea = aux;
|
||||
|
||||
if (cf->tweacf_unit != TWECF_UNIT_DEFAULT &&
|
||||
cf->tweacf_unit != twea->twea_unit)
|
||||
if (cf->cf_loc[TWECF_UNIT] != TWECF_UNIT_DEFAULT &&
|
||||
cf->cf_loc[TWECF_UNIT] != ldesc->locs[TWECF_UNIT])
|
||||
return (0);
|
||||
|
||||
return (config_match(parent, cf, aux));
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: twevar.h,v 1.21 2004/05/27 23:47:23 thorpej Exp $ */
|
||||
/* $NetBSD: twevar.h,v 1.22 2004/09/13 12:55:48 drochner Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 2000, 2001, 2002 The NetBSD Foundation, Inc.
|
||||
@ -39,8 +39,6 @@
|
||||
#ifndef _PCI_TWEVAR_H_
|
||||
#define _PCI_TWEVAR_H_
|
||||
|
||||
#include "locators.h"
|
||||
|
||||
#define TWE_MAX_QUEUECNT 129
|
||||
|
||||
/* Callbacks from controller to array. */
|
||||
@ -121,8 +119,6 @@ struct twe_attach_args {
|
||||
int twea_unit;
|
||||
};
|
||||
|
||||
#define tweacf_unit cf_loc[TWECF_UNIT]
|
||||
|
||||
struct twe_ccb *twe_ccb_alloc(struct twe_softc *, int);
|
||||
struct twe_ccb *twe_ccb_alloc_wait(struct twe_softc *, int);
|
||||
void twe_ccb_enqueue(struct twe_softc *sc, struct twe_ccb *ccb);
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: viapm.c,v 1.11 2004/07/25 18:04:52 christos Exp $ */
|
||||
/* $NetBSD: viapm.c,v 1.12 2004/09/13 12:55:48 drochner Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2000 Johan Danielsson
|
||||
@ -40,7 +40,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: viapm.c,v 1.11 2004/07/25 18:04:52 christos Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: viapm.c,v 1.12 2004/09/13 12:55:48 drochner Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
@ -106,13 +106,6 @@ viapm_print(void *aux, const char *pnp)
|
||||
return UNCONF;
|
||||
}
|
||||
|
||||
static int
|
||||
viapm_submatch(struct device * parent, struct cfdata * cf, void *aux)
|
||||
{
|
||||
|
||||
return config_match(parent, cf, aux);
|
||||
}
|
||||
|
||||
static void
|
||||
viapm_attach(struct device * parent, struct device * self, void *aux)
|
||||
{
|
||||
@ -137,17 +130,17 @@ viapm_attach(struct device * parent, struct device * self, void *aux)
|
||||
*/
|
||||
vaa.va_type = VIAPM_POWER;
|
||||
vaa.va_offset = 0x40;
|
||||
config_found_sm(self, &vaa, viapm_print, viapm_submatch);
|
||||
config_found_ia(self, "viapm", &vaa, viapm_print);
|
||||
#endif
|
||||
|
||||
vaa.va_type = VIAPM_HWMON;
|
||||
vaa.va_offset = 0x70;
|
||||
config_found_sm(self, &vaa, viapm_print, viapm_submatch);
|
||||
config_found(self, "viapm", &vaa, viapm_print);
|
||||
|
||||
#if 0
|
||||
vaa.va_type = VIAPM_SMBUS;
|
||||
vaa.va_offset = 0x93;
|
||||
config_found_sm(self, &vaa, viapm_print, viapm_submatch);
|
||||
config_found(self, "viapm", &vaa, viapm_print);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: pckbport.c,v 1.3 2004/03/24 17:26:53 drochner Exp $ */
|
||||
/* $NetBSD: pckbport.c,v 1.4 2004/09/13 12:55:48 drochner Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2004 Ben Harris
|
||||
@ -27,7 +27,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: pckbport.c,v 1.3 2004/03/24 17:26:53 drochner Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: pckbport.c,v 1.4 2004/09/13 12:55:48 drochner Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
@ -77,7 +77,8 @@ struct pckbport_slotdata {
|
||||
#define CMD_IN_QUEUE(q) (TAILQ_FIRST(&(q)->cmdqueue) != NULL)
|
||||
|
||||
static void pckbport_init_slotdata(struct pckbport_slotdata *);
|
||||
static int pckbport_submatch(struct device *, struct cfdata *, void *);
|
||||
static int pckbport_submatch(struct device *, struct cfdata *,
|
||||
const locdesc_t *, void *);
|
||||
static int pckbportprint(void *, const char *);
|
||||
|
||||
static struct pckbport_slotdata pckbport_cons_slotdata;
|
||||
@ -118,12 +119,12 @@ pckbport_send_devcmd(struct pckbport_tag *t, pckbport_slot_t slot, u_char val)
|
||||
}
|
||||
|
||||
static int
|
||||
pckbport_submatch(struct device *parent, struct cfdata *cf, void *aux)
|
||||
pckbport_submatch(struct device *parent, struct cfdata *cf,
|
||||
const locdesc_t *ldesc, void *aux)
|
||||
{
|
||||
struct pckbport_attach_args *pa = aux;
|
||||
|
||||
if (cf->cf_loc[PCKBPORTCF_SLOT] != PCKBPORTCF_SLOT_DEFAULT &&
|
||||
cf->cf_loc[PCKBPORTCF_SLOT] != pa->pa_slot)
|
||||
cf->cf_loc[PCKBPORTCF_SLOT] != ldesc->locs[PCKBPORTCF_SLOT])
|
||||
return 0;
|
||||
return config_match(parent, cf, aux);
|
||||
}
|
||||
@ -151,6 +152,8 @@ pckbport_attach_slot(struct device *dev, pckbport_tag_t t,
|
||||
void *sdata;
|
||||
struct device *found;
|
||||
int alloced = 0;
|
||||
int help[2];
|
||||
locdesc_t *ldesc = (void *)help; /* XXX */
|
||||
|
||||
pa.pa_tag = t;
|
||||
pa.pa_slot = slot;
|
||||
@ -167,7 +170,11 @@ pckbport_attach_slot(struct device *dev, pckbport_tag_t t,
|
||||
alloced++;
|
||||
}
|
||||
|
||||
found = config_found_sm(dev, &pa, pckbportprint, pckbport_submatch);
|
||||
ldesc->len = 1;
|
||||
ldesc->locs[PCKBPORTCF_SLOT] = slot;
|
||||
|
||||
found = config_found_sm_loc(dev, "pckbport", ldesc, &pa,
|
||||
pckbportprint, pckbport_submatch);
|
||||
|
||||
if (found == NULL && alloced) {
|
||||
free(t->t_slotdata[slot], M_DEVBUF);
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: pcmciachip.h,v 1.8 2004/08/11 00:18:20 mycroft Exp $ */
|
||||
/* $NetBSD: pcmciachip.h,v 1.9 2004/09/13 12:55:48 drochner Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 1997 Marc Horowitz. All rights reserved.
|
||||
@ -33,9 +33,6 @@
|
||||
#define _PCMCIA_PCMCIACHIP_H_
|
||||
|
||||
#include <machine/bus.h>
|
||||
#ifdef _KERNEL_OPT
|
||||
#include "locators.h"
|
||||
#endif
|
||||
|
||||
struct pcmcia_function;
|
||||
struct pcmcia_mem_handle;
|
||||
@ -150,9 +147,6 @@ struct pcmciabus_attach_args {
|
||||
bus_size_t iosize; /* size of the i/o space range */
|
||||
};
|
||||
|
||||
#define pcmciabuscf_controller cf_loc[PCMCIABUSCF_CONTROLLER]
|
||||
#define pcmciabuscf_socket cf_loc[PCMCIABUSCF_SOCKET]
|
||||
|
||||
/* interfaces for the chipset to call pcmcia */
|
||||
|
||||
int pcmcia_card_attach __P((struct device *));
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: pcmcom.c,v 1.19 2004/08/10 21:14:50 mycroft Exp $ */
|
||||
/* $NetBSD: pcmcom.c,v 1.20 2004/09/13 12:55:48 drochner Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 1998, 2000, 2004 The NetBSD Foundation, Inc.
|
||||
@ -51,7 +51,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: pcmcom.c,v 1.19 2004/08/10 21:14:50 mycroft Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: pcmcom.c,v 1.20 2004/09/13 12:55:48 drochner Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
@ -112,7 +112,8 @@ const size_t pcmcom_nproducts =
|
||||
sizeof(pcmcom_products) / sizeof(pcmcom_products[0]);
|
||||
|
||||
int pcmcom_print __P((void *, const char *));
|
||||
int pcmcom_submatch __P((struct device *, struct cfdata *, void *));
|
||||
int pcmcom_submatch __P((struct device *, struct cfdata *,
|
||||
const locdesc_t *, void *));
|
||||
|
||||
int pcmcom_enable __P((struct pcmcom_softc *));
|
||||
void pcmcom_disable __P((struct pcmcom_softc *));
|
||||
@ -153,6 +154,8 @@ pcmcom_attach(parent, self, aux)
|
||||
struct pcmcia_config_entry *cfe;
|
||||
int slave;
|
||||
int error;
|
||||
int help[2];
|
||||
locdesc_t *ldesc = (void *)help; /* XXX */
|
||||
|
||||
sc->sc_pf = pa->pf;
|
||||
|
||||
@ -180,8 +183,12 @@ pcmcom_attach(parent, self, aux)
|
||||
pca.pca_ioh = cfe->iospace[slave].handle.ioh;
|
||||
pca.pca_slave = slave;
|
||||
|
||||
sc->sc_slaves[slave] = config_found_sm(&sc->sc_dev, &pca,
|
||||
pcmcom_print, pcmcom_submatch);
|
||||
ldesc->len = 1;
|
||||
ldesc->locs[PCMCOMCF_SLAVE] = slave;
|
||||
|
||||
sc->sc_slaves[slave] = config_found_sm_loc(&sc->sc_dev,
|
||||
"pcmcom", ldesc,
|
||||
&pca, pcmcom_print, pcmcom_submatch);
|
||||
}
|
||||
|
||||
pcmcom_disable(sc);
|
||||
@ -268,15 +275,15 @@ pcmcom_print(aux, pnp)
|
||||
}
|
||||
|
||||
int
|
||||
pcmcom_submatch(parent, cf, aux)
|
||||
pcmcom_submatch(parent, cf, ldesc, aux)
|
||||
struct device *parent;
|
||||
struct cfdata *cf;
|
||||
const locdesc_t *ldesc;
|
||||
void *aux;
|
||||
{
|
||||
struct pcmcom_attach_args *pca = aux;
|
||||
|
||||
if (cf->cf_loc[PCMCOMCF_SLAVE] != pca->pca_slave &&
|
||||
cf->cf_loc[PCMCOMCF_SLAVE] != PCMCOMCF_SLAVE_DEFAULT)
|
||||
if (cf->cf_loc[PCMCOMCF_SLAVE] != PCMCOMCF_SLAVE_DEFAULT &&
|
||||
cf->cf_loc[PCMCOMCF_SLAVE] != ldesc->locs[PCMCOMCF_SLAVE]);
|
||||
return (0);
|
||||
|
||||
return (config_match(parent, cf, aux));
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: acemidi.c,v 1.7 2002/10/02 16:52:23 thorpej Exp $ */
|
||||
/* $NetBSD: acemidi.c,v 1.8 2004/09/13 12:55:48 drochner Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 2001 Ben Harris
|
||||
@ -28,7 +28,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: acemidi.c,v 1.7 2002/10/02 16:52:23 thorpej Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: acemidi.c,v 1.8 2004/09/13 12:55:48 drochner Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
|
||||
@ -82,7 +82,7 @@ acemidi_attach(struct device *parent, struct device *self, void *aux)
|
||||
/* struct podulebus_attach_args *pa = aux; */
|
||||
|
||||
printf("\n");
|
||||
config_found_sm(self, aux, NULL, NULL);
|
||||
config_found_ia(self, "acemidi", aux, NULL);
|
||||
}
|
||||
|
||||
static int
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: atapiconf.c,v 1.65 2004/08/21 21:30:29 thorpej Exp $ */
|
||||
/* $NetBSD: atapiconf.c,v 1.66 2004/09/13 12:55:48 drochner Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 1996, 2001 Manuel Bouyer. All rights reserved.
|
||||
@ -30,7 +30,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: atapiconf.c,v 1.65 2004/08/21 21:30:29 thorpej Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: atapiconf.c,v 1.66 2004/09/13 12:55:48 drochner Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
@ -61,7 +61,8 @@ static void atapibusattach(struct device *, struct device *, void *);
|
||||
static int atapibusactivate(struct device *, enum devact);
|
||||
static int atapibusdetach(struct device *, int flags);
|
||||
|
||||
static int atapibussubmatch(struct device *, struct cfdata *, void *);
|
||||
static int atapibussubmatch(struct device *, struct cfdata *,
|
||||
const locdesc_t *, void *);
|
||||
|
||||
static int atapi_probe_bus(struct atapibus_softc *, int);
|
||||
|
||||
@ -128,7 +129,8 @@ atapibusmatch(struct device *parent, struct cfdata *cf, void *aux)
|
||||
}
|
||||
|
||||
static int
|
||||
atapibussubmatch(struct device *parent, struct cfdata *cf, void *aux)
|
||||
atapibussubmatch(struct device *parent, struct cfdata *cf,
|
||||
const locdesc_t *ldesc, void *aux)
|
||||
{
|
||||
struct scsipibus_attach_args *sa = aux;
|
||||
struct scsipi_periph *periph = sa->sa_periph;
|
||||
@ -273,8 +275,8 @@ atapi_probe_device(struct atapibus_softc *sc, int target,
|
||||
*/
|
||||
periph->periph_quirks |= quirks;
|
||||
|
||||
if ((cf = config_search(atapibussubmatch, &sc->sc_dev,
|
||||
sa)) != 0) {
|
||||
if ((cf = config_search_ia(atapibussubmatch, &sc->sc_dev,
|
||||
"atapibus", sa)) != 0) {
|
||||
scsipi_insert_periph(chan, periph);
|
||||
/*
|
||||
* XXX Can't assign periph_dev here, because we'll
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: ieee1212.c,v 1.7 2003/10/26 20:53:09 fvdl Exp $ */
|
||||
/* $NetBSD: ieee1212.c,v 1.8 2004/09/13 12:55:48 drochner Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2000 The NetBSD Foundation, Inc.
|
||||
@ -37,7 +37,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: ieee1212.c,v 1.7 2003/10/26 20:53:09 fvdl Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: ieee1212.c,v 1.8 2004/09/13 12:55:48 drochner Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
@ -1237,7 +1237,7 @@ p1212_match_units(struct device *sc, struct p1212_dir *dir,
|
||||
|
||||
if (udirs) {
|
||||
do {
|
||||
dev = config_found_sm(sc, udirs, print, NULL);
|
||||
dev = config_found_ia(sc, "fwnode", udirs, print);
|
||||
if (dev && numdev) {
|
||||
devret = realloc(devret,
|
||||
sizeof(struct device *) *
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: tcds.c,v 1.10 2003/01/01 00:10:25 thorpej Exp $ */
|
||||
/* $NetBSD: tcds.c,v 1.11 2004/09/13 12:55:48 drochner Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 1998 The NetBSD Foundation, Inc.
|
||||
@ -65,7 +65,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: tcds.c,v 1.10 2003/01/01 00:10:25 thorpej Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: tcds.c,v 1.11 2004/09/13 12:55:48 drochner Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/kernel.h>
|
||||
@ -109,7 +109,8 @@ struct tcds_softc {
|
||||
int tcdsmatch __P((struct device *, struct cfdata *, void *));
|
||||
void tcdsattach __P((struct device *, struct device *, void *));
|
||||
int tcdsprint __P((void *, const char *));
|
||||
int tcdssubmatch __P((struct device *, struct cfdata *, void *));
|
||||
int tcdssubmatch __P((struct device *, struct cfdata *,
|
||||
const locdesc_t *, void *));
|
||||
|
||||
CFATTACH_DECL(tcds, sizeof(struct tcds_softc),
|
||||
tcdsmatch, tcdsattach, NULL, NULL);
|
||||
@ -170,6 +171,8 @@ tcdsattach(parent, self, aux)
|
||||
bus_space_handle_t sbsh[2];
|
||||
int i, gpi2;
|
||||
const struct evcnt *pevcnt;
|
||||
int help[2];
|
||||
locdesc_t *ldesc = (void *)help; /* XXX */
|
||||
|
||||
td = tcds_lookup(ta->ta_modname);
|
||||
if (td == NULL)
|
||||
@ -305,7 +308,11 @@ tcdsattach(parent, self, aux)
|
||||
|
||||
tcds_scsi_reset(tcdsdev.tcdsda_sc);
|
||||
|
||||
config_found_sm(self, &tcdsdev, tcdsprint, tcdssubmatch);
|
||||
ldesc->len = 1;
|
||||
ldesc->locs[TCDSCF_CHIP] = i;
|
||||
|
||||
config_found_sm_loc(self, "tcds", ldesc, &tcdsdev,
|
||||
tcdsprint, tcdssubmatch);
|
||||
#ifdef __alpha__
|
||||
/*
|
||||
* The second SCSI chip isn't present on the baseboard TCDS
|
||||
@ -319,15 +326,16 @@ tcdsattach(parent, self, aux)
|
||||
}
|
||||
|
||||
int
|
||||
tcdssubmatch(parent, cf, aux)
|
||||
tcdssubmatch(parent, cf, ldesc, aux)
|
||||
struct device *parent;
|
||||
struct cfdata *cf;
|
||||
const locdesc_t *ldesc;
|
||||
void *aux;
|
||||
{
|
||||
struct tcdsdev_attach_args *tcdsdev = aux;
|
||||
|
||||
if (cf->cf_loc[TCDSCF_CHIP] != TCDSCF_CHIP_DEFAULT &&
|
||||
cf->cf_loc[TCDSCF_CHIP] != tcdsdev->tcdsda_chip)
|
||||
cf->cf_loc[TCDSCF_CHIP] != ldesc->locs[TCDSCF_CHIP])
|
||||
return (0);
|
||||
|
||||
return (config_match(parent, cf, aux));
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: zs_ioasic.c,v 1.22 2004/08/26 18:07:12 drochner Exp $ */
|
||||
/* $NetBSD: zs_ioasic.c,v 1.23 2004/09/13 12:55:48 drochner Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 1996, 1998 The NetBSD Foundation, Inc.
|
||||
@ -48,7 +48,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: zs_ioasic.c,v 1.22 2004/08/26 18:07:12 drochner Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: zs_ioasic.c,v 1.23 2004/09/13 12:55:48 drochner Exp $");
|
||||
|
||||
#include "opt_ddb.h"
|
||||
#include "opt_kgdb.h"
|
||||
@ -194,7 +194,8 @@ zs_ioasic_get_chan_addr(zsaddr, channel)
|
||||
int zs_ioasic_match __P((struct device *, struct cfdata *, void *));
|
||||
void zs_ioasic_attach __P((struct device *, struct device *, void *));
|
||||
int zs_ioasic_print __P((void *, const char *name));
|
||||
int zs_ioasic_submatch __P((struct device *, struct cfdata *, void *));
|
||||
int zs_ioasic_submatch __P((struct device *, struct cfdata *,
|
||||
const locdesc_t *, void *));
|
||||
|
||||
CFATTACH_DECL(zsc_ioasic, sizeof(struct zsc_softc),
|
||||
zs_ioasic_match, zs_ioasic_attach, NULL, NULL);
|
||||
@ -248,6 +249,8 @@ zs_ioasic_attach(parent, self, aux)
|
||||
struct zshan *zc;
|
||||
int s, channel;
|
||||
u_long zflg;
|
||||
int help[2];
|
||||
locdesc_t *ldesc = (void *)help; /* XXX */
|
||||
|
||||
printf("\n");
|
||||
|
||||
@ -316,11 +319,14 @@ zs_ioasic_attach(parent, self, aux)
|
||||
else
|
||||
cs->cs_ctl_chan = NULL;
|
||||
|
||||
ldesc->len = 1;
|
||||
ldesc->locs[ZSCCF_CHANNEL] = channel;
|
||||
|
||||
/*
|
||||
* Look for a child driver for this channel.
|
||||
* The child attach will setup the hardware.
|
||||
*/
|
||||
if (config_found_sm(self, (void *)&zs_args,
|
||||
if (config_found_sm_loc(self, "zsc", ldesc, (void *)&zs_args,
|
||||
zs_ioasic_print, zs_ioasic_submatch) == NULL) {
|
||||
/* No sub-driver. Just reset it. */
|
||||
u_char reset = (channel == 0) ?
|
||||
@ -380,9 +386,10 @@ zs_ioasic_print(aux, name)
|
||||
}
|
||||
|
||||
int
|
||||
zs_ioasic_submatch(parent, cf, aux)
|
||||
zs_ioasic_submatch(parent, cf, ldesc, aux)
|
||||
struct device *parent;
|
||||
struct cfdata *cf;
|
||||
const locdesc_t *ldesc;
|
||||
void *aux;
|
||||
{
|
||||
struct zsc_softc *zs = (void *)parent;
|
||||
@ -390,8 +397,9 @@ zs_ioasic_submatch(parent, cf, aux)
|
||||
char *defname = "";
|
||||
|
||||
if (cf->cf_loc[ZSCCF_CHANNEL] != ZSCCF_CHANNEL_DEFAULT &&
|
||||
cf->cf_loc[ZSCCF_CHANNEL] != pa->channel)
|
||||
cf->cf_loc[ZSCCF_CHANNEL] != ldesc->locs[ZSCCF_CHANNEL])
|
||||
return (0);
|
||||
|
||||
if (cf->cf_loc[ZSCCF_CHANNEL] == ZSCCF_CHANNEL_DEFAULT) {
|
||||
if (pa->channel == 0) {
|
||||
#if defined(pmax)
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: ubsa.c,v 1.9 2004/04/23 17:25:25 itojun Exp $ */
|
||||
/* $NetBSD: ubsa.c,v 1.10 2004/09/13 12:55:49 drochner Exp $ */
|
||||
/*-
|
||||
* Copyright (c) 2002, Alexander Kabaev <kan.FreeBSD.org>.
|
||||
* All rights reserved.
|
||||
@ -61,7 +61,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: ubsa.c,v 1.9 2004/04/23 17:25:25 itojun Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: ubsa.c,v 1.10 2004/09/13 12:55:49 drochner Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
@ -374,7 +374,8 @@ USB_ATTACH(ubsa)
|
||||
DPRINTF(("ubsa: in = 0x%x, out = 0x%x, intr = 0x%x\n",
|
||||
uca.bulkin_no, uca.bulkout_no, sc->sc_intr_number));
|
||||
|
||||
sc->sc_subdev = config_found_sm(self, &uca, ucomprint, ucomsubmatch);
|
||||
sc->sc_subdev = config_found_sm_loc(self, "ucombus", NULL, &uca,
|
||||
ucomprint, ucomsubmatch);
|
||||
|
||||
USB_ATTACH_SUCCESS_RETURN;
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: ucom.c,v 1.52 2003/11/24 19:47:07 nathanw Exp $ */
|
||||
/* $NetBSD: ucom.c,v 1.53 2004/09/13 12:55:49 drochner Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 1998, 2000 The NetBSD Foundation, Inc.
|
||||
@ -41,7 +41,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: ucom.c,v 1.52 2003/11/24 19:47:07 nathanw Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: ucom.c,v 1.53 2004/09/13 12:55:49 drochner Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
@ -73,6 +73,8 @@ __KERNEL_RCSID(0, "$NetBSD: ucom.c,v 1.52 2003/11/24 19:47:07 nathanw Exp $");
|
||||
|
||||
#include "ucom.h"
|
||||
|
||||
#include "locators.h"
|
||||
|
||||
#if NUCOM > 0
|
||||
|
||||
#ifdef UCOM_DEBUG
|
||||
@ -1137,13 +1139,14 @@ ucomprint(void *aux, const char *pnp)
|
||||
}
|
||||
|
||||
int
|
||||
ucomsubmatch(struct device *parent, struct cfdata *cf, void *aux)
|
||||
ucomsubmatch(struct device *parent, struct cfdata *cf,
|
||||
const locdesc_t *ldesc, void *aux)
|
||||
{
|
||||
struct ucom_attach_args *uca = aux;
|
||||
|
||||
if (uca->portno != UCOM_UNK_PORTNO &&
|
||||
cf->ucomcf_portno != UCOM_UNK_PORTNO &&
|
||||
cf->ucomcf_portno != uca->portno)
|
||||
cf->cf_loc[UCOMBUSCF_PORTNO] != UCOMBUSCF_PORTNO_DEFAULT &&
|
||||
cf->cf_loc[UCOMBUSCF_PORTNO] != uca->portno)
|
||||
return (0);
|
||||
return (config_match(parent, cf, aux));
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: ucomvar.h,v 1.10 2001/12/31 12:15:21 augustss Exp $ */
|
||||
/* $NetBSD: ucomvar.h,v 1.11 2004/09/13 12:55:49 drochner Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 1999 The NetBSD Foundation, Inc.
|
||||
@ -43,9 +43,8 @@
|
||||
#define CLR(t, f) (t) &= ~(f)
|
||||
#define ISSET(t, f) ((t) & (f))
|
||||
|
||||
#include "locators.h"
|
||||
#define ucomcf_portno cf_loc[UCOMBUSCF_PORTNO]
|
||||
#define UCOM_UNK_PORTNO UCOMBUSCF_PORTNO_DEFAULT
|
||||
/* just for ucom_attach_args, not in the config namespace */
|
||||
#define UCOM_UNK_PORTNO (-1)
|
||||
|
||||
struct ucom_softc;
|
||||
|
||||
@ -107,5 +106,6 @@ struct ucom_attach_args {
|
||||
};
|
||||
|
||||
int ucomprint(void *aux, const char *pnp);
|
||||
int ucomsubmatch(struct device *parent, struct cfdata *cf, void *aux);
|
||||
int ucomsubmatch(struct device *parent, struct cfdata *cf,
|
||||
const locdesc_t *, void *aux);
|
||||
void ucom_status_change(struct ucom_softc *);
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: uftdi.c,v 1.21 2004/04/23 17:25:25 itojun Exp $ */
|
||||
/* $NetBSD: uftdi.c,v 1.22 2004/09/13 12:55:49 drochner Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2000 The NetBSD Foundation, Inc.
|
||||
@ -46,7 +46,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: uftdi.c,v 1.21 2004/04/23 17:25:25 itojun Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: uftdi.c,v 1.22 2004/09/13 12:55:49 drochner Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
@ -255,7 +255,8 @@ USB_ATTACH(uftdi)
|
||||
USBDEV(sc->sc_dev));
|
||||
|
||||
DPRINTF(("uftdi: in=0x%x out=0x%x\n", uca.bulkin, uca.bulkout));
|
||||
sc->sc_subdev = config_found_sm(self, &uca, ucomprint, ucomsubmatch);
|
||||
sc->sc_subdev = config_found_sm_loc(self, "ucombus", NULL, &uca,
|
||||
ucomprint, ucomsubmatch);
|
||||
|
||||
USB_ATTACH_SUCCESS_RETURN;
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: uhidev.c,v 1.21 2004/04/23 17:25:25 itojun Exp $ */
|
||||
/* $NetBSD: uhidev.c,v 1.22 2004/09/13 12:55:49 drochner Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2001 The NetBSD Foundation, Inc.
|
||||
@ -42,7 +42,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: uhidev.c,v 1.21 2004/04/23 17:25:25 itojun Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: uhidev.c,v 1.22 2004/09/13 12:55:49 drochner Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
@ -67,6 +67,8 @@ __KERNEL_RCSID(0, "$NetBSD: uhidev.c,v 1.21 2004/04/23 17:25:25 itojun Exp $");
|
||||
/* Report descriptor for broken Wacom Graphire */
|
||||
#include <dev/usb/ugraphire_rdesc.h>
|
||||
|
||||
#include "locators.h"
|
||||
|
||||
#ifdef UHIDEV_DEBUG
|
||||
#define DPRINTF(x) if (uhidevdebug) logprintf x
|
||||
#define DPRINTFN(n,x) if (uhidevdebug>(n)) logprintf x
|
||||
@ -80,7 +82,8 @@ Static void uhidev_intr(usbd_xfer_handle, usbd_private_handle, usbd_status);
|
||||
|
||||
Static int uhidev_maxrepid(void *buf, int len);
|
||||
Static int uhidevprint(void *aux, const char *pnp);
|
||||
Static int uhidevsubmatch(struct device *parent, struct cfdata *cf, void *aux);
|
||||
Static int uhidevsubmatch(struct device *parent, struct cfdata *cf,
|
||||
const locdesc_t *, void *aux);
|
||||
|
||||
USB_DECLARE_DRIVER(uhidev);
|
||||
|
||||
@ -113,6 +116,8 @@ USB_ATTACH(uhidev)
|
||||
const void *descptr;
|
||||
usbd_status err;
|
||||
char devinfo[1024];
|
||||
int help[2];
|
||||
locdesc_t *ldesc = (void *)help; /* XXX */
|
||||
|
||||
sc->sc_udev = uaa->device;
|
||||
sc->sc_iface = iface;
|
||||
@ -249,8 +254,12 @@ USB_ATTACH(uhidev)
|
||||
; /* already NULL in sc->sc_subdevs[repid] */
|
||||
} else {
|
||||
uha.reportid = repid;
|
||||
dev = (struct uhidev *)config_found_sm(self, &uha,
|
||||
uhidevprint, uhidevsubmatch);
|
||||
ldesc->len = 1;
|
||||
ldesc->locs[UHIDBUSCF_REPORTID] = repid;
|
||||
|
||||
dev = (struct uhidev *)config_found_sm_loc(self,
|
||||
"uhidbus", ldesc, &uha,
|
||||
uhidevprint, uhidevsubmatch);
|
||||
sc->sc_subdevs[repid] = dev;
|
||||
if (dev != NULL) {
|
||||
dev->sc_in_rep_size = repsizes[repid];
|
||||
@ -304,14 +313,16 @@ uhidevprint(void *aux, const char *pnp)
|
||||
}
|
||||
|
||||
int
|
||||
uhidevsubmatch(struct device *parent, struct cfdata *cf, void *aux)
|
||||
uhidevsubmatch(struct device *parent, struct cfdata *cf,
|
||||
const locdesc_t *ldesc, void *aux)
|
||||
{
|
||||
struct uhidev_attach_arg *uha = aux;
|
||||
|
||||
if (cf->uhidevcf_reportid != UHIDEV_UNK_REPORTID &&
|
||||
cf->uhidevcf_reportid != uha->reportid)
|
||||
if (cf->cf_loc[UHIDBUSCF_REPORTID] != UHIDBUSCF_REPORTID_DEFAULT &&
|
||||
cf->cf_loc[UHIDBUSCF_REPORTID] != ldesc->locs[UHIDBUSCF_REPORTID])
|
||||
return (0);
|
||||
if (cf->uhidevcf_reportid == uha->reportid)
|
||||
|
||||
if (cf->cf_loc[UHIDBUSCF_REPORTID] == ldesc->locs[UHIDBUSCF_REPORTID])
|
||||
uha->matchlvl = UMATCH_VENDOR_PRODUCT;
|
||||
else
|
||||
uha->matchlvl = 0;
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: uhidev.h,v 1.3 2002/10/08 09:56:17 dan Exp $ */
|
||||
/* $NetBSD: uhidev.h,v 1.4 2004/09/13 12:55:49 drochner Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2001 The NetBSD Foundation, Inc.
|
||||
@ -42,11 +42,6 @@
|
||||
#include <sys/rnd.h>
|
||||
#endif
|
||||
|
||||
|
||||
#include "locators.h"
|
||||
#define uhidevcf_reportid cf_loc[UHIDBUSCF_REPORTID]
|
||||
#define UHIDEV_UNK_REPORTID UHIDBUSCF_REPORTID_DEFAULT
|
||||
|
||||
struct uhidev_softc {
|
||||
USBBASEDEVICE sc_dev; /* base device */
|
||||
usbd_device_handle sc_udev;
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: umct.c,v 1.14 2004/07/08 00:54:21 rumble Exp $ */
|
||||
/* $NetBSD: umct.c,v 1.15 2004/09/13 12:55:49 drochner Exp $ */
|
||||
/*
|
||||
* Copyright (c) 2001 The NetBSD Foundation, Inc.
|
||||
* All rights reserved.
|
||||
@ -42,7 +42,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: umct.c,v 1.14 2004/07/08 00:54:21 rumble Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: umct.c,v 1.15 2004/09/13 12:55:49 drochner Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
@ -303,7 +303,8 @@ USB_ATTACH(umct)
|
||||
|
||||
DPRINTF(("umct: in=0x%x out=0x%x intr=0x%x\n",
|
||||
uca.bulkin, uca.bulkout, sc->sc_intr_number ));
|
||||
sc->sc_subdev = config_found_sm(self, &uca, ucomprint, ucomsubmatch);
|
||||
sc->sc_subdev = config_found_sm_loc(self, "ucombus", NULL, &uca,
|
||||
ucomprint, ucomsubmatch);
|
||||
|
||||
USB_ATTACH_SUCCESS_RETURN;
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: umodem.c,v 1.47 2004/04/23 17:25:25 itojun Exp $ */
|
||||
/* $NetBSD: umodem.c,v 1.48 2004/09/13 12:55:49 drochner Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 1998 The NetBSD Foundation, Inc.
|
||||
@ -51,7 +51,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: umodem.c,v 1.47 2004/04/23 17:25:25 itojun Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: umodem.c,v 1.48 2004/09/13 12:55:49 drochner Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
@ -330,7 +330,8 @@ USB_ATTACH(umodem)
|
||||
USBDEV(sc->sc_dev));
|
||||
|
||||
DPRINTF(("umodem_attach: sc=%p\n", sc));
|
||||
sc->sc_subdev = config_found_sm(self, &uca, ucomprint, ucomsubmatch);
|
||||
sc->sc_subdev = config_found_sm_loc(self, "ucombus", NULL, &uca,
|
||||
ucomprint, ucomsubmatch);
|
||||
|
||||
USB_ATTACH_SUCCESS_RETURN;
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: uplcom.c,v 1.38 2004/06/05 08:41:43 jdolecek Exp $ */
|
||||
/* $NetBSD: uplcom.c,v 1.39 2004/09/13 12:55:49 drochner Exp $ */
|
||||
/*
|
||||
* Copyright (c) 2001 The NetBSD Foundation, Inc.
|
||||
* All rights reserved.
|
||||
@ -41,7 +41,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: uplcom.c,v 1.38 2004/06/05 08:41:43 jdolecek Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: uplcom.c,v 1.39 2004/09/13 12:55:49 drochner Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
@ -374,7 +374,8 @@ USB_ATTACH(uplcom)
|
||||
|
||||
DPRINTF(("uplcom: in=0x%x out=0x%x intr=0x%x\n",
|
||||
uca.bulkin, uca.bulkout, sc->sc_intr_number ));
|
||||
sc->sc_subdev = config_found_sm(self, &uca, ucomprint, ucomsubmatch);
|
||||
sc->sc_subdev = config_found_sm_loc(self, "ucombus", NULL, &uca,
|
||||
ucomprint, ucomsubmatch);
|
||||
|
||||
USB_ATTACH_SUCCESS_RETURN;
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* $OpenBSD: usb_port.h,v 1.18 2000/09/06 22:42:10 rahnds Exp $ */
|
||||
/* $NetBSD: usb_port.h,v 1.62 2003/02/15 18:33:30 augustss Exp $ */
|
||||
/* $NetBSD: usb_port.h,v 1.63 2004/09/13 12:55:49 drochner Exp $ */
|
||||
/* $FreeBSD: src/sys/dev/usb/usb_port.h,v 1.21 1999/11/17 22:33:47 n_hibma Exp $ */
|
||||
|
||||
/*
|
||||
@ -190,7 +190,8 @@ int __CONCAT(dname,_detach)(struct device *self, int flags)
|
||||
sc = __CONCAT(dname,_cd).cd_devs[unit]
|
||||
|
||||
#define USB_DO_ATTACH(dev, bdev, parent, args, print, sub) \
|
||||
(config_found_sm(parent, args, print, sub))
|
||||
(config_found_sm_loc(parent, (args)->port == 0 ? "usb" : "uhub", \
|
||||
NULL, args, print, sub))
|
||||
|
||||
#elif defined(__OpenBSD__)
|
||||
/*
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: usb_subr.c,v 1.117 2004/09/08 19:59:15 drochner Exp $ */
|
||||
/* $NetBSD: usb_subr.c,v 1.118 2004/09/13 12:55:49 drochner Exp $ */
|
||||
/* $FreeBSD: src/sys/dev/usb/usb_subr.c,v 1.18 1999/11/17 22:33:47 n_hibma Exp $ */
|
||||
|
||||
/*
|
||||
@ -39,7 +39,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: usb_subr.c,v 1.117 2004/09/08 19:59:15 drochner Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: usb_subr.c,v 1.118 2004/09/13 12:55:49 drochner Exp $");
|
||||
|
||||
#include "opt_usbverbose.h"
|
||||
|
||||
@ -86,8 +86,9 @@ Static void usbd_devinfo_vp(usbd_device_handle, char *, size_t, char *,
|
||||
Static char *usbd_get_string(usbd_device_handle, int, char *);
|
||||
Static int usbd_getnewaddr(usbd_bus_handle bus);
|
||||
#if defined(__NetBSD__)
|
||||
Static int usbd_print(void *aux, const char *pnp);
|
||||
Static int usbd_submatch(device_ptr_t, struct cfdata *cf, void *);
|
||||
Static int usbd_print(void *, const char *);
|
||||
Static int usbd_submatch(device_ptr_t, struct cfdata *,
|
||||
const locdesc_t *, void *);
|
||||
#elif defined(__OpenBSD__)
|
||||
Static int usbd_print(void *aux, const char *pnp);
|
||||
Static int usbd_submatch(device_ptr_t, void *, void *);
|
||||
@ -1217,7 +1218,8 @@ usbd_print(void *aux, const char *pnp)
|
||||
|
||||
#if defined(__NetBSD__)
|
||||
int
|
||||
usbd_submatch(struct device *parent, struct cfdata *cf, void *aux)
|
||||
usbd_submatch(struct device *parent, struct cfdata *cf,
|
||||
const locdesc_t *ldesc, void *aux)
|
||||
{
|
||||
#elif defined(__OpenBSD__)
|
||||
int
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: uvisor.c,v 1.26 2004/07/07 21:11:03 mycroft Exp $ */
|
||||
/* $NetBSD: uvisor.c,v 1.27 2004/09/13 12:55:49 drochner Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2000 The NetBSD Foundation, Inc.
|
||||
@ -42,7 +42,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: uvisor.c,v 1.26 2004/07/07 21:11:03 mycroft Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: uvisor.c,v 1.27 2004/09/13 12:55:49 drochner Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
@ -326,8 +326,9 @@ USB_ATTACH(uvisor)
|
||||
}
|
||||
}
|
||||
if (hasin == 1 && hasout == 1)
|
||||
sc->sc_subdevs[i] = config_found_sm(self, &uca,
|
||||
ucomprint, ucomsubmatch);
|
||||
sc->sc_subdevs[i] = config_found_sm_loc(self,
|
||||
"ucombus", NULL, &uca,
|
||||
ucomprint, ucomsubmatch);
|
||||
else
|
||||
printf("%s: no proper endpoints for port %d (%d,%d)\n",
|
||||
USBDEVNAME(sc->sc_dev), port, hasin, hasout);
|
||||
@ -356,8 +357,8 @@ USB_ATTACH(uvisor)
|
||||
uca.bulkin = port | UE_DIR_IN;
|
||||
uca.bulkout = port | UE_DIR_OUT;
|
||||
}
|
||||
sc->sc_subdevs[i] = config_found_sm(self, &uca,
|
||||
ucomprint, ucomsubmatch);
|
||||
sc->sc_subdevs[i] = config_found_sm_loc(self, "ucombus",
|
||||
NULL, &uca, ucomprint, ucomsubmatch);
|
||||
|
||||
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: uvscom.c,v 1.12 2004/04/23 17:25:27 itojun Exp $ */
|
||||
/* $NetBSD: uvscom.c,v 1.13 2004/09/13 12:55:49 drochner Exp $ */
|
||||
/*-
|
||||
* Copyright (c) 2001-2002, Shunsuke Akiyama <akiyama@jp.FreeBSD.org>.
|
||||
* All rights reserved.
|
||||
@ -35,7 +35,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: uvscom.c,v 1.12 2004/04/23 17:25:27 itojun Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: uvscom.c,v 1.13 2004/09/13 12:55:49 drochner Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
@ -399,7 +399,8 @@ USB_ATTACH(uvscom)
|
||||
|
||||
DPRINTF(("uplcom: in=0x%x out=0x%x intr=0x%x\n",
|
||||
uca.bulkin, uca.bulkout, sc->sc_intr_number ));
|
||||
sc->sc_subdev = config_found_sm(self, &uca, ucomprint, ucomsubmatch);
|
||||
sc->sc_subdev = config_found_sm_loc(self, "ucombus", NULL, &uca,
|
||||
ucomprint, ucomsubmatch);
|
||||
|
||||
USB_ATTACH_SUCCESS_RETURN;
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: vme.c,v 1.12 2004/08/02 13:04:58 drochner Exp $ */
|
||||
/* $NetBSD: vme.c,v 1.13 2004/09/13 12:55:49 drochner Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 1999
|
||||
@ -29,7 +29,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: vme.c,v 1.12 2004/08/02 13:04:58 drochner Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: vme.c,v 1.13 2004/09/13 12:55:49 drochner Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
@ -43,8 +43,10 @@ __KERNEL_RCSID(0, "$NetBSD: vme.c,v 1.12 2004/08/02 13:04:58 drochner Exp $");
|
||||
|
||||
static void vme_extractlocators __P((int*, struct vme_attach_args*));
|
||||
static int vmeprint __P((struct vme_attach_args*, char*));
|
||||
static int vmesubmatch1 __P((struct device*, struct cfdata*, void*));
|
||||
static int vmesubmatch __P((struct device*, struct cfdata*, void*));
|
||||
static int vmesubmatch1 __P((struct device*, struct cfdata*,
|
||||
const locdesc_t *, void*));
|
||||
static int vmesubmatch __P((struct device*, struct cfdata*,
|
||||
const locdesc_t *, void*));
|
||||
int vmematch __P((struct device *, struct cfdata *, void *));
|
||||
void vmeattach __P((struct device*, struct device*,void*));
|
||||
static struct extent *vme_select_map __P((struct vmebus_softc*, vme_am_t));
|
||||
@ -125,9 +127,10 @@ vmeprint(v, dummy)
|
||||
* devices are attached.
|
||||
*/
|
||||
static int
|
||||
vmesubmatch1(bus, dev, aux)
|
||||
vmesubmatch1(bus, dev, ldesc, aux)
|
||||
struct device *bus;
|
||||
struct cfdata *dev;
|
||||
const locdesc_t *ldesc;
|
||||
void *aux;
|
||||
{
|
||||
struct vmebus_softc *sc = (struct vmebus_softc*)bus;
|
||||
@ -148,6 +151,7 @@ static int
|
||||
vmesubmatch(bus, dev, aux)
|
||||
struct device *bus;
|
||||
struct cfdata *dev;
|
||||
const locdesc_t *ldesc;
|
||||
void *aux;
|
||||
{
|
||||
struct vmebus_softc *sc = (struct vmebus_softc*)bus;
|
||||
@ -224,9 +228,9 @@ vmeattach(parent, self, aux)
|
||||
if (sc->slaveconfig) {
|
||||
/* first get info about the bus master's slave side,
|
||||
if present */
|
||||
config_search(vmesubmatch1, self, 0);
|
||||
config_search_ia(vmesubmatch1, self, "vme", 0);
|
||||
}
|
||||
config_search(vmesubmatch, self, 0);
|
||||
config_search_ia(vmesubmatch, self, "vme", 0);
|
||||
|
||||
#ifdef VMEDEBUG
|
||||
if (sc->vme32ext)
|
||||
|
Loading…
Reference in New Issue
Block a user