From b72d8d17f9035295f0054959ce2629504d8545dc Mon Sep 17 00:00:00 2001 From: minoura Date: Tue, 4 Aug 1998 16:51:51 +0000 Subject: [PATCH] __BROKEN_INDIRECT_CONFIG fixes. --- sys/arch/x68k/dev/com.c | 10 +++++----- sys/arch/x68k/dev/fd.c | 22 ++++++++++++---------- sys/arch/x68k/dev/grf_machdep.c | 26 +++++++++++++------------- sys/arch/x68k/dev/if_ed.c | 10 +++++----- sys/arch/x68k/dev/ite.c | 10 +++++----- sys/arch/x68k/dev/mha.c | 23 +++++++++++------------ sys/arch/x68k/dev/spc.c | 11 +++++------ sys/arch/x68k/dev/zs.c | 10 +++++----- sys/arch/x68k/include/types.h | 4 +--- sys/arch/x68k/x68k/autoconf.c | 11 +++++------ 10 files changed, 67 insertions(+), 70 deletions(-) diff --git a/sys/arch/x68k/dev/com.c b/sys/arch/x68k/dev/com.c index 5139fd8dfa31..e8cb54ae0b2b 100644 --- a/sys/arch/x68k/dev/com.c +++ b/sys/arch/x68k/dev/com.c @@ -1,4 +1,4 @@ -/* $NetBSD: com.c,v 1.12 1998/07/04 22:18:46 jonathan Exp $ */ +/* $NetBSD: com.c,v 1.13 1998/08/04 16:51:51 minoura Exp $ */ /*- * Copyright (c) 1993, 1994, 1995, 1996 @@ -110,7 +110,7 @@ struct com_softc { u_char sc_ibufs[2][COM_IBUFSIZE]; }; -int comprobe __P((struct device *, void *, void *)); +int comprobe __P((struct device *, struct cfdata *, void *)); void comattach __P((struct device *, struct device *, void *)); int comprobe1 __P((int)); int comopen __P((dev_t, int, int, struct proc *)); @@ -273,14 +273,14 @@ comprobeHAYESP(iobase, sc) #endif int -comprobe(parent, match, aux) +comprobe(parent, cfp, aux) struct device *parent; - void *match, *aux; + struct cfdata *cfp; + void *aux; { #if 0 struct isa_attach_args *ia = aux; #endif - struct cfdata *cfp = match; int iobase = (int)&IODEVbase->psx16550; if (strcmp(aux, "com") || cfp->cf_unit > 1) diff --git a/sys/arch/x68k/dev/fd.c b/sys/arch/x68k/dev/fd.c index f9ff5b7d1cc9..ab4f8de9bca0 100644 --- a/sys/arch/x68k/dev/fd.c +++ b/sys/arch/x68k/dev/fd.c @@ -1,4 +1,4 @@ -/* $NetBSD: fd.c,v 1.19 1998/07/04 22:18:46 jonathan Exp $ */ +/* $NetBSD: fd.c,v 1.20 1998/08/04 16:51:51 minoura Exp $ */ /*- * Copyright (c) 1993, 1994, 1995 Charles Hannum. @@ -122,7 +122,7 @@ int fdcintr __P((void)); void fdcreset __P((void)); /* controller driver configuration */ -int fdcprobe __P((struct device *, void *, void *)); +int fdcprobe __P((struct device *, struct cfdata *, void *)); void fdcattach __P((struct device *, struct device *, void *)); int fdprint __P((void *, const char *)); @@ -199,7 +199,7 @@ struct fd_softc { }; /* floppy driver configuration */ -int fdprobe __P((struct device *, void *, void *)); +int fdprobe __P((struct device *, struct cfdata *, void *)); void fdattach __P((struct device *, struct device *, void *)); struct cfattach fd_ca = { @@ -308,10 +308,12 @@ fdcdmaerrintr() dmac->csr = 0xff; } +/* ARGSUSED */ int -fdcprobe(parent, match, aux) +fdcprobe(parent, cf, aux) struct device *parent; - void *match, *aux; + struct cfdata *cf; + void *aux; { if (strcmp("fdc", aux) != 0) return 0; @@ -416,12 +418,12 @@ fdcpoll(fdc) } int -fdprobe(parent, match, aux) +fdprobe(parent, cf, aux) struct device *parent; - void *match, *aux; + struct cfdata *cf; + void *aux; { struct fdc_softc *fdc = (void *)parent; - struct cfdata *cf = match; struct fd_type *type; int drive = cf->cf_unit; int n; @@ -599,7 +601,7 @@ fdstrategy(bp) fdstart(fd); #ifdef DIAGNOSTIC else { - struct fdc_softc *fdc = fdc_cd.cd_devs[0]; /* XXX */ + struct fdc_softc *fdc = (void *)fd->sc_dev.dv_parent; if (fdc->sc_state == DEVIDLE) { printf("fdstrategy: controller inactive\n"); fdcstart(fdc); @@ -946,7 +948,7 @@ fdcpseudointr(arg) int fdcintr() { - struct fdc_softc *fdc = fdc_cd.cd_devs[0]; /* XXX */ + struct fdc_softc *fdc = (void *)((struct fd_softc*)fd_cd.cd_devs[0])->sc_dev.dv_parent; /* XXX */ #define st0 fdc->sc_status[0] #define cyl fdc->sc_status[1] struct fd_softc *fd; diff --git a/sys/arch/x68k/dev/grf_machdep.c b/sys/arch/x68k/dev/grf_machdep.c index 6eef7d171b84..224d2596f44c 100644 --- a/sys/arch/x68k/dev/grf_machdep.c +++ b/sys/arch/x68k/dev/grf_machdep.c @@ -1,4 +1,4 @@ -/* $NetBSD: grf_machdep.c,v 1.9 1998/01/12 21:13:44 thorpej Exp $ */ +/* $NetBSD: grf_machdep.c,v 1.10 1998/08/04 16:51:52 minoura Exp $ */ /* * Copyright (c) 1991 University of Utah. @@ -61,12 +61,12 @@ extern int x68k_realconfig; int grfbusprint __P((void *auxp, const char *)); -int grfbusmatch __P((struct device *, void *, void *)); +int grfbusmatch __P((struct device *, struct cfdata *, void *)); void grfbusattach __P((struct device *, struct device *, void *)); -int grfbussearch __P((struct device *, void *, void *)); +int grfbussearch __P((struct device *, struct cfdata *, void *)); void grfattach __P((struct device *, struct device *, void *)); -int grfmatch __P((struct device *, void *, void *)); +int grfmatch __P((struct device *, struct cfdata *, void *)); int grfprint __P((void *, const char *)); void grfconfig __P((struct device *)); @@ -89,12 +89,11 @@ static struct cfdata *cfdata_grf = NULL; extern struct cfdriver grfbus_cd; int -grfbusmatch(pdp, match, auxp) +grfbusmatch(pdp, cfp, auxp) struct device *pdp; - void *match, *auxp; + struct cfdata *cfp; + void *auxp; { - struct cfdata *cfp = match; - if (strcmp(auxp, grfbus_cd.cd_name)) return(0); @@ -128,7 +127,9 @@ grfbusattach(pdp, dp, auxp) int grfbussearch(dp, match, aux) struct device *dp; - void *match, *aux; + struct cfdata *match; + + void *aux; { int i = 0; config_found(dp, (void*)&i, grfbusprint); @@ -166,12 +167,11 @@ grfconfig(dp) * Normal init routine called by configure() code */ int -grfmatch(parent, match, aux) +grfmatch(parent, cfp, aux) struct device *parent; - void *match, *aux; + struct cfdata *cfp; + void *aux; { - struct cfdata *cfp = match; - /* XXX console at grf0 */ if (x68k_realconfig == 0) { if (cfp->cf_unit != 0) diff --git a/sys/arch/x68k/dev/if_ed.c b/sys/arch/x68k/dev/if_ed.c index 08c8d5c11ca2..0e68e851e936 100644 --- a/sys/arch/x68k/dev/if_ed.c +++ b/sys/arch/x68k/dev/if_ed.c @@ -1,4 +1,4 @@ -/* $NetBSD: if_ed.c,v 1.8 1998/07/05 06:49:10 jonathan Exp $ */ +/* $NetBSD: if_ed.c,v 1.9 1998/08/04 16:51:52 minoura Exp $ */ /* * Device driver for National Semiconductor DS8390/WD83C690 based ethernet @@ -111,7 +111,7 @@ struct ed_softc { #endif }; -int edmatch __P((struct device *, void *, void *)); +int edmatch __P((struct device *, struct cfdata *, void *)); void edattach __P((struct device *, struct device *, void *)); int ed_probe_generic8390 __P((caddr_t)); int ed_find_Novell __P((caddr_t, caddr_t)); @@ -197,11 +197,11 @@ outsw(void *addr, void *src, int cnt) * Determine if the device is present. */ int -edmatch(parent, match, aux) +edmatch(parent, cfp, aux) struct device *parent; - void *match, *aux; + struct cfdata *cfp; + void *aux; { - struct cfdata *cfp = match; caddr_t nic_addr = NEPTUNE_NIC; caddr_t asic_addr = NEPTUNE_ASIC; diff --git a/sys/arch/x68k/dev/ite.c b/sys/arch/x68k/dev/ite.c index e90362e3b0f0..280260d370b4 100644 --- a/sys/arch/x68k/dev/ite.c +++ b/sys/arch/x68k/dev/ite.c @@ -1,4 +1,4 @@ -/* $NetBSD: ite.c,v 1.10 1998/06/30 11:59:10 msaitoh Exp $ */ +/* $NetBSD: ite.c,v 1.11 1998/08/04 16:51:52 minoura Exp $ */ /* * Copyright (c) 1988 University of Utah. @@ -149,7 +149,7 @@ void iteputchar __P((int c, struct ite_softc *ip)); void ite_putstr __P((const u_char * s, int len, dev_t dev)); void iteattach __P((struct device *, struct device *, void *)); -int itematch __P((struct device *, void *, void *)); +int itematch __P((struct device *, struct cfdata *, void *)); struct cfattach ite_ca = { sizeof(struct ite_softc), itematch, iteattach @@ -158,11 +158,11 @@ struct cfattach ite_ca = { extern struct cfdriver ite_cd; int -itematch(pdp, match, auxp) +itematch(pdp, cdp, auxp) struct device *pdp; - void *match, *auxp; + struct cfdata *cdp; + void *auxp; { - struct cfdata *cdp = match; struct grf_softc *gp; int maj; diff --git a/sys/arch/x68k/dev/mha.c b/sys/arch/x68k/dev/mha.c index c2fa80ece085..2d6483032279 100644 --- a/sys/arch/x68k/dev/mha.c +++ b/sys/arch/x68k/dev/mha.c @@ -1,4 +1,4 @@ -/* $NetBSD: mha.c,v 1.5 1998/07/04 22:18:46 jonathan Exp $ */ +/* $NetBSD: mha.c,v 1.6 1998/08/04 16:51:52 minoura Exp $ */ /* * Copyright (c) 1996 Masaru Oki, Takumi Nakamura and Masanobu Saitoh. All rights reserved. @@ -213,7 +213,7 @@ SPC_SHOWSTART|SPC_SHOWTRAC; #define SPC_ASSERT(x) #endif -int mhamatch __P((struct device *, void *, void *)); +int mhamatch __P((struct device *, struct cfdata *, void *)); void mhaattach __P((struct device *, struct device *, void *)); void mhaselect __P((struct mha_softc *, u_char, u_char, u_char *, u_char)); @@ -272,12 +272,11 @@ struct scsipi_device mha_dev = { * returns non-zero value if a controller is found. */ int -mhamatch(parent, match, aux) +mhamatch(parent, cf, aux) struct device *parent; - void *match, *aux; + struct cfdata *cf; + void *aux; { - struct cfdata *cf = match; - if (strcmp(aux, "mha") || mha_find(cf->cf_unit) == 0) return 0; return 1; @@ -295,13 +294,13 @@ mha_find(unit) if (unit > 1) return 0; /* Find only on-board ROM */ - if (badaddr(IODEVbase->exscsirom) - || bcmp((void *)&IODEVbase->exscsirom[0x24], "SCSIEX", 6)) - return 0; + if (badaddr(IODEVbase->exscsirom) + || bcmp((void *)&IODEVbase->exscsirom[0x24], "SCSIEX", 6)) + return 0; - /* If bdid exists, this board is ``CZ-6BS1'' */ - if (!badbaddr(&IODEVbase->io_exspc.bdid)) - return 0; + /* If bdid exists, this board is ``CZ-6BS1'' */ + if (!badbaddr(&IODEVbase->io_exspc.bdid)) + return 0; return (void *)(&IODEVbase->exscsirom[0x60]); } diff --git a/sys/arch/x68k/dev/spc.c b/sys/arch/x68k/dev/spc.c index 3605973477e5..f2553da6a599 100644 --- a/sys/arch/x68k/dev/spc.c +++ b/sys/arch/x68k/dev/spc.c @@ -1,4 +1,4 @@ -/* $NetBSD: spc.c,v 1.15 1998/07/04 22:18:46 jonathan Exp $ */ +/* $NetBSD: spc.c,v 1.16 1998/08/04 16:51:52 minoura Exp $ */ #define integrate __inline static @@ -347,7 +347,7 @@ int spc_debug = 0x00; /* SPC_SHOWSTART|SPC_SHOWMISC|SPC_SHOWTRACE; */ #define SPC_TRACE(s) SPC_PRINT(SPC_SHOWTRACE, s) #define SPC_START(s) SPC_PRINT(SPC_SHOWSTART, s) -int spcmatch __P((struct device *, void *, void *)); +int spcmatch __P((struct device *, struct cfdata *, void *)); void spcattach __P((struct device *, struct device *, void *)); void spc_minphys __P((struct buf *)); int spcintr __P((int)); @@ -408,12 +408,11 @@ struct scsipi_device spc_dev = { * returns non-zero value if a controller is found. */ int -spcmatch(parent, match, aux) +spcmatch(parent, cf, aux) struct device *parent; - void *match, *aux; + struct cfdata *cf; + void *aux; { - struct cfdata *cf = match; - if (strcmp(aux, "spc") || spc_find(cf->cf_unit) == 0) return 0; return 1; diff --git a/sys/arch/x68k/dev/zs.c b/sys/arch/x68k/dev/zs.c index b45d49aae4d2..eda628a90119 100644 --- a/sys/arch/x68k/dev/zs.c +++ b/sys/arch/x68k/dev/zs.c @@ -1,4 +1,4 @@ -/* $NetBSD: zs.c,v 1.10 1998/07/04 22:18:46 jonathan Exp $ */ +/* $NetBSD: zs.c,v 1.11 1998/08/04 16:51:52 minoura Exp $ */ /* * Copyright (c) 1992, 1993 @@ -116,7 +116,7 @@ struct zs_softc { struct tty *zs_tty[NZS * 2]; /* XXX should be dynamic */ /* Definition of the driver for autoconfig. */ -static int zsmatch __P((struct device *, void *, void *)); +static int zsmatch __P((struct device *, struct cfdata *, void *)); static void zsattach __P((struct device *, struct device *, void *)); struct cfattach zs_ca = { @@ -229,11 +229,11 @@ findzs(zs) * not set up the keyboard as ttya, etc. */ static int -zsmatch(parent, match, aux) +zsmatch(parent, cfp, aux) struct device *parent; - void *match, *aux; + struct cfdata *cfp; + void *aux; { - struct cfdata *cfp = match; volatile void *addr; if(strcmp("zs", aux) || (addr = findzs(cfp->cf_unit)) == 0) diff --git a/sys/arch/x68k/include/types.h b/sys/arch/x68k/include/types.h index 4df4d42b0f26..299727b4673c 100644 --- a/sys/arch/x68k/include/types.h +++ b/sys/arch/x68k/include/types.h @@ -1,10 +1,8 @@ -/* $NetBSD: types.h,v 1.3 1997/10/09 12:59:23 oki Exp $ */ +/* $NetBSD: types.h,v 1.4 1998/08/04 16:51:53 minoura Exp $ */ #ifndef _MACHINE_TYPES_H_ #define _MACHINE_TYPES_H_ #include -#define __BROKEN_INDIRECT_CONFIG - #endif diff --git a/sys/arch/x68k/x68k/autoconf.c b/sys/arch/x68k/x68k/autoconf.c index db3ff6fe8133..bba3cdba76c3 100644 --- a/sys/arch/x68k/x68k/autoconf.c +++ b/sys/arch/x68k/x68k/autoconf.c @@ -1,4 +1,4 @@ -/* $NetBSD: autoconf.c,v 1.13 1998/06/30 11:59:12 msaitoh Exp $ */ +/* $NetBSD: autoconf.c,v 1.14 1998/08/04 16:51:53 minoura Exp $ */ /* * Copyright (c) 1995 Leo Weppelman @@ -45,7 +45,7 @@ void configure __P((void)); static void findroot __P((struct device **, int *)); void mbattach __P((struct device *, struct device *, void *)); int mbprint __P((void *, const char *)); -int mbmatch __P((struct device *, void *, void *)); +int mbmatch __P((struct device *, struct cfdata*, void*)); static int simple_devprint __P((void *, const char *)); @@ -305,12 +305,11 @@ struct cfattach mainbus_ca = { }; int -mbmatch(pdp, match, auxp) +mbmatch(pdp, cfp, auxp) struct device *pdp; - void *match, *auxp; + struct cfdata *cfp; + void *auxp; { - struct cfdata *cfp = match; - if (cfp->cf_unit > 0) return(0); /*