summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorpk <pk@NetBSD.org>2000-01-11 12:59:43 +0000
committerpk <pk@NetBSD.org>2000-01-11 12:59:43 +0000
commitc6b6f3883a0ebb98144f71ea756fea4e1f4de973 (patch)
treee6ce7bb261629d5f6daf11ae7266ba8388e3ad5a /sys
parent9658271f9d772006fcfe7995c24ca9b07be03412 (diff)
Remove old-style boot device recognition.
Diffstat (limited to 'sys')
-rw-r--r--sys/arch/sparc/dev/esp_obio.c10
-rw-r--r--sys/arch/sparc/dev/fd.c55
-rw-r--r--sys/arch/sparc/dev/if_ie_obio.c8
-rw-r--r--sys/arch/sparc/dev/if_le_obio.c8
-rw-r--r--sys/arch/sparc/dev/obio.c11
-rw-r--r--sys/arch/sparc/dev/sbus.c25
-rw-r--r--sys/arch/sparc/dev/si.c15
-rw-r--r--sys/arch/sparc/dev/vme_machdep.c9
-rw-r--r--sys/arch/sparc/include/autoconf.h17
-rw-r--r--sys/arch/sparc/sparc/autoconf.c81
-rw-r--r--sys/arch/sparc/sparc/disksubr.c64
-rw-r--r--sys/arch/sparc/sparc/iommu.c10
-rw-r--r--sys/arch/sparc/sparc/iommuvar.h3
-rw-r--r--sys/dev/sbus/dma_sbus.c18
-rw-r--r--sys/dev/sbus/esp_sbus.c22
-rw-r--r--sys/dev/sbus/if_le.c10
-rw-r--r--sys/dev/sbus/if_le_lebuffer.c10
-rw-r--r--sys/dev/sbus/if_le_ledma.c9
-rw-r--r--sys/dev/sbus/lebuffer.c11
-rw-r--r--sys/dev/sbus/qec.c11
-rw-r--r--sys/dev/sbus/sbusvar.h7
-rw-r--r--sys/dev/sbus/xbox.c10
-rw-r--r--sys/dev/sbus/xboxvar.h3
23 files changed, 58 insertions, 369 deletions
diff --git a/sys/arch/sparc/dev/esp_obio.c b/sys/arch/sparc/dev/esp_obio.c
index 80108656606..1faa0d3ceed 100644
--- a/sys/arch/sparc/dev/esp_obio.c
+++ b/sys/arch/sparc/dev/esp_obio.c
@@ -1,4 +1,4 @@
-/* $NetBSD: esp_obio.c,v 1.4 1998/11/19 21:49:17 thorpej Exp $ */
+/* $NetBSD: esp_obio.c,v 1.5 2000/01/11 12:59:45 pk Exp $ */
/*-
* Copyright (c) 1997, 1998 The NetBSD Foundation, Inc.
@@ -174,12 +174,6 @@ espattach_obio(parent, self, aux)
return;
}
- if (oba->oba_bp != NULL && strcmp(oba->oba_bp->name, "esp") == 0 &&
- oba->oba_bp->val[0] == -1 &&
- oba->oba_bp->val[1] == sc->sc_dev.dv_unit)
- bootpath_store(1, oba->oba_bp + 1);
-
-
/*
* Set up glue for MI code early; we use some of it here.
*/
@@ -281,8 +275,6 @@ espattach_obio(parent, self, aux)
/* Turn on target selection using the `dma' method */
ncr53c9x_dmaselect = 1;
-
- bootpath_store(1, NULL);
}
/*
diff --git a/sys/arch/sparc/dev/fd.c b/sys/arch/sparc/dev/fd.c
index 15a4dc7da36..94a34b1b5d7 100644
--- a/sys/arch/sparc/dev/fd.c
+++ b/sys/arch/sparc/dev/fd.c
@@ -1,4 +1,4 @@
-/* $NetBSD: fd.c,v 1.68 1999/11/21 15:23:01 pk Exp $ */
+/* $NetBSD: fd.c,v 1.69 2000/01/11 12:59:45 pk Exp $ */
/*-
* Copyright (c) 1993, 1994, 1995 Charles M. Hannum.
@@ -145,7 +145,7 @@ int fdcmatch_obio __P((struct device *, struct cfdata *, void *));
void fdcattach_mainbus __P((struct device *, struct device *, void *));
void fdcattach_obio __P((struct device *, struct device *, void *));
-void fdcattach __P((struct fdc_softc *, int, struct bootpath *));
+void fdcattach __P((struct fdc_softc *, int));
struct cfattach fdc_mainbus_ca = {
sizeof(struct fdc_softc), fdcmatch_mainbus, fdcattach_mainbus
@@ -339,7 +339,6 @@ fdcmatch_obio(parent, match, aux)
*/
struct fdc_attach_args {
int fa_drive;
- struct bootpath *fa_bootpath;
struct fd_type *fa_deftype;
};
@@ -398,7 +397,6 @@ fdcattach_mainbus(parent, self, aux)
{
struct fdc_softc *fdc = (void *)self;
struct mainbus_attach_args *ma = aux;
- struct bootpath *bp;
fdc->sc_bustag = ma->ma_bustag;
@@ -420,24 +418,7 @@ fdcattach_mainbus(parent, self, aux)
fdc->sc_reg = (caddr_t)bh;
}
- bp = NULL;
- if (ma->ma_bp != NULL && strcmp(ma->ma_bp->name, OBP_FDNAME) == 0) {
- int v0 = ma->ma_bp->val[0];
- int v1 = ma->ma_bp->val[1];
- /*
- * We can get the bootpath in several different
- * formats! The faked v1 bootpath looks like /fd@0,0.
- * The v2 bootpath is either just /fd0, in which case
- * `bp->val[0]' will have been set to -1, or /fd@x,y
- * where <x,y> is the prom address specifier.
- */
- if (((v0 == ma->ma_iospace) && (v1 == (int)ma->ma_paddr)) ||
- ((v0 == -1) && (v1 == 0)) || /* v2: /fd0 */
- ((v0 == 0) && (v1 == 0)) /* v1: /fd@0,0 */ )
- bp = ma->ma_bp;
- }
-
- fdcattach(fdc, ma->ma_pri, bp);
+ fdcattach(fdc, ma->ma_pri);
}
void
@@ -448,7 +429,6 @@ fdcattach_obio(parent, self, aux)
struct fdc_softc *fdc = (void *)self;
union obio_attach_args *uoba = aux;
struct sbus_attach_args *sa = &uoba->uoba_sbus;
- struct bootpath *bp;
fdc->sc_bustag = sa->sa_bustag;
@@ -470,29 +450,14 @@ fdcattach_obio(parent, self, aux)
fdc->sc_reg = (caddr_t)bh;
}
- bp = NULL;
- if (sa->sa_bp != NULL && strcmp(sa->sa_bp->name, OBP_FDNAME) == 0) {
- int v0 = sa->sa_bp->val[0];
- int v1 = sa->sa_bp->val[1];
- /*
- * floppy controller on obio (such as on the sun4m),
- * e.g.: `/obio0/SUNW,fdtwo@0,700000'.
- * We use "slot, offset" to determine if this is the
- * right one.
- */
- if ((v0 != sa->sa_slot) || (v1 != sa->sa_offset))
- bp = sa->sa_bp;
- }
-
if (sa->sa_nintr != 0)
- fdcattach(fdc, sa->sa_pri, bp);
+ fdcattach(fdc, sa->sa_pri);
}
void
-fdcattach(fdc, pri, bp)
+fdcattach(fdc, pri)
struct fdc_softc *fdc;
int pri;
- struct bootpath *bp;
{
struct fdc_attach_args fa;
char code;
@@ -566,16 +531,12 @@ fdcattach(fdc, pri, bp)
printf(" softpri %d: chip 8207%c\n", PIL_FDSOFT, code);
- fa.fa_bootpath = bp;
-
/* physical limit: four drives per controller. */
for (fa.fa_drive = 0; fa.fa_drive < 4; fa.fa_drive++) {
fa.fa_deftype = NULL; /* unknown */
fa.fa_deftype = &fd_types[0]; /* XXX */
(void)config_found(&fdc->sc_dev, (void *)&fa, fdprint);
}
-
- bootpath_store(1, NULL);
}
int
@@ -684,12 +645,6 @@ fdattach(parent, self, aux)
disk_attach(&fd->sc_dk);
/*
- * We're told if we're the boot device in fdcattach().
- */
- if (fa->fa_bootpath)
- fa->fa_bootpath->dev = &fd->sc_dv;
-
- /*
* Establish a mountroot_hook anyway in case we booted
* with RB_ASKNAME and get selected as the boot device.
*/
diff --git a/sys/arch/sparc/dev/if_ie_obio.c b/sys/arch/sparc/dev/if_ie_obio.c
index d9e88801d43..32c5bc0023e 100644
--- a/sys/arch/sparc/dev/if_ie_obio.c
+++ b/sys/arch/sparc/dev/if_ie_obio.c
@@ -1,4 +1,4 @@
-/* $NetBSD: if_ie_obio.c,v 1.12 1999/11/13 00:32:12 thorpej Exp $ */
+/* $NetBSD: if_ie_obio.c,v 1.13 2000/01/11 12:59:46 pk Exp $ */
/*-
* Copyright (c) 1997 The NetBSD Foundation, Inc.
@@ -282,7 +282,6 @@ ie_obio_attach(parent, self, aux)
bus_space_handle_t bh;
bus_dma_segment_t seg;
int rseg;
- struct bootpath *bp;
paddr_t pa;
struct intrhand *ih;
u_long iebase;
@@ -410,9 +409,4 @@ extern void myetheraddr(u_char *); /* should be elsewhere */
ih = bus_intr_establish(oba->oba_bustag,
oba->oba_pri, 0,
i82586_intr, sc);
-
- bp = oba->oba_bp;
- if (bp != NULL && strcmp(bp->name, "ie") == 0 &&
- sc->sc_dev.dv_unit == bp->val[1])
- bp->dev = &sc->sc_dev;
}
diff --git a/sys/arch/sparc/dev/if_le_obio.c b/sys/arch/sparc/dev/if_le_obio.c
index ff1a09ccf8d..a7eff29820d 100644
--- a/sys/arch/sparc/dev/if_le_obio.c
+++ b/sys/arch/sparc/dev/if_le_obio.c
@@ -1,4 +1,4 @@
-/* $NetBSD: if_le_obio.c,v 1.5 1998/08/29 20:49:37 pk Exp $ */
+/* $NetBSD: if_le_obio.c,v 1.6 2000/01/11 12:59:46 pk Exp $ */
/*-
* Copyright (c) 1997, 1998 The NetBSD Foundation, Inc.
@@ -172,12 +172,6 @@ leattach_obio(parent, self, aux)
return;
}
- if (oba->oba_bp != NULL &&
- strcmp(oba->oba_bp->name, le_cd.cd_name) == 0 &&
- sc->sc_dev.dv_unit == oba->oba_bp->val[1])
- oba->oba_bp->dev = &sc->sc_dev;
-
-
if (bus_dmamem_alloc(lesc->sc_dmatag, MEMSIZE, NBPG, 0,
&seg, 1, &rseg,
BUS_DMA_NOWAIT | BUS_DMA_24BIT) != 0) {
diff --git a/sys/arch/sparc/dev/obio.c b/sys/arch/sparc/dev/obio.c
index 4f405cb1044..bda4428429f 100644
--- a/sys/arch/sparc/dev/obio.c
+++ b/sys/arch/sparc/dev/obio.c
@@ -1,4 +1,4 @@
-/* $NetBSD: obio.c,v 1.46 1999/06/28 22:40:15 pk Exp $ */
+/* $NetBSD: obio.c,v 1.47 2000/01/11 12:59:46 pk Exp $ */
/*-
* Copyright (c) 1997,1998 The NetBSD Foundation, Inc.
@@ -202,7 +202,7 @@ obioattach(parent, self, aux)
sc->sc_dmatag = ma->ma_dmatag;
sc->sc_intr2ipl = intr_obio2ipl;
- sbus_attach_common(sc, "obio", ma->ma_node, ma->ma_bp, special4m);
+ sbus_attach_common(sc, "obio", ma->ma_node, special4m);
} else {
printf("obio on this machine?\n");
}
@@ -266,7 +266,6 @@ obiosearch(parent, cf, aux)
struct obio4_busattachargs *oap = aux;
union obio_attach_args uoba;
struct obio4_attach_args *oba = &uoba.uoba_oba4;
- struct bootpath *bp;
/* Check whether we're looking for a specifically named device */
if (oap->name != NULL && strcmp(oap->name, cf->cf_driver->cd_name) != 0)
@@ -297,12 +296,6 @@ obiosearch(parent, cf, aux)
oba->oba_paddr = cf->cf_loc[0];
oba->oba_pri = cf->cf_loc[1];
- bp = oap->ma->ma_bp;
- if (bp != NULL && strcmp(bp->name, "obio") == 0)
- oba->oba_bp = bp + 1;
- else
- oba->oba_bp = NULL;
-
if ((*cf->cf_attach->ca_match)(parent, cf, &uoba) == 0)
return (0);
diff --git a/sys/arch/sparc/dev/sbus.c b/sys/arch/sparc/dev/sbus.c
index 975093ea152..cf4dfff67a9 100644
--- a/sys/arch/sparc/dev/sbus.c
+++ b/sys/arch/sparc/dev/sbus.c
@@ -1,4 +1,4 @@
-/* $NetBSD: sbus.c,v 1.35 1999/04/14 09:50:01 pk Exp $ */
+/* $NetBSD: sbus.c,v 1.36 2000/01/11 12:59:46 pk Exp $ */
/*-
* Copyright (c) 1998 The NetBSD Foundation, Inc.
@@ -311,7 +311,7 @@ sbus_attach_mainbus(parent, self, aux)
printf(": clock = %s MHz\n", clockfreq(sc->sc_clockfreq));
sbus_sc = sc;
- sbus_attach_common(sc, "sbus", node, ma->ma_bp, NULL);
+ sbus_attach_common(sc, "sbus", node, NULL);
}
@@ -352,7 +352,7 @@ sbus_attach_iommu(parent, self, aux)
sbus_sc = sc;
sbuserr_handler = sbus_error;
- sbus_attach_common(sc, "sbus", node, ia->iom_bp, NULL);
+ sbus_attach_common(sc, "sbus", node, NULL);
}
void
@@ -378,15 +378,14 @@ sbus_attach_xbox(parent, self, aux)
sc->sc_clockfreq = getpropint(node, "clock-frequency", 25*1000*1000);
printf(": clock = %s MHz\n", clockfreq(sc->sc_clockfreq));
- sbus_attach_common(sc, "sbus", node, xa->xa_bp, NULL);
+ sbus_attach_common(sc, "sbus", node, NULL);
}
void
-sbus_attach_common(sc, busname, busnode, bp, specials)
+sbus_attach_common(sc, busname, busnode, specials)
struct sbus_softc *sc;
char *busname;
int busnode;
- struct bootpath *bp;
const char * const *specials;
{
int node0, node, error;
@@ -413,12 +412,6 @@ sbus_attach_common(sc, busname, busnode, bp, specials)
sc->sc_burst &= ~SBUS_BURST_64;
}
- /* Propagate bootpath */
- if (bp != NULL && strcmp(bp->name, busname) == 0)
- bp++;
- else
- bp = NULL;
-
/*
* Collect address translations from the OBP.
*/
@@ -451,7 +444,7 @@ sbus_attach_common(sc, busname, busnode, bp, specials)
}
if (sbus_setup_attach_args(sc, sbt, sc->sc_dmatag,
- node, bp, &sa) != 0) {
+ node, &sa) != 0) {
panic("sbus_attach: %s: incomplete", sp);
}
(void) config_found(&sc->sc_dev, (void *)&sa, sbus_print);
@@ -471,7 +464,7 @@ sbus_attach_common(sc, busname, busnode, bp, specials)
continue;
if (sbus_setup_attach_args(sc, sbt, sc->sc_dmatag,
- node, bp, &sa) != 0) {
+ node, &sa) != 0) {
printf("sbus_attach: %s: incomplete\n", name);
continue;
}
@@ -481,12 +474,11 @@ sbus_attach_common(sc, busname, busnode, bp, specials)
}
int
-sbus_setup_attach_args(sc, bustag, dmatag, node, bp, sa)
+sbus_setup_attach_args(sc, bustag, dmatag, node, sa)
struct sbus_softc *sc;
bus_space_tag_t bustag;
bus_dma_tag_t dmatag;
int node;
- struct bootpath *bp;
struct sbus_attach_args *sa;
{
int n, error;
@@ -500,7 +492,6 @@ sbus_setup_attach_args(sc, bustag, dmatag, node, bp, sa)
sa->sa_bustag = bustag;
sa->sa_dmatag = dmatag;
sa->sa_node = node;
- sa->sa_bp = bp;
error = getprop(node, "reg", sizeof(struct sbus_reg),
&sa->sa_nreg, (void **)&sa->sa_reg);
diff --git a/sys/arch/sparc/dev/si.c b/sys/arch/sparc/dev/si.c
index 95287e4d323..7e6fbfdefa0 100644
--- a/sys/arch/sparc/dev/si.c
+++ b/sys/arch/sparc/dev/si.c
@@ -1,4 +1,4 @@
-/* $NetBSD: si.c,v 1.53 1999/10/21 13:46:06 pk Exp $ */
+/* $NetBSD: si.c,v 1.54 2000/01/11 12:59:47 pk Exp $ */
/*-
* Copyright (c) 1996 The NetBSD Foundation, Inc.
@@ -372,7 +372,6 @@ si_attach(parent, self, aux)
ncr_sc->sc_intr_on = si_vme_intr_on;
ncr_sc->sc_intr_off = si_vme_intr_off;
}
- bootpath_store(1, NULL);
}
static void
@@ -385,7 +384,6 @@ sw_attach(parent, self, aux)
union obio_attach_args *uoba = aux;
struct obio4_attach_args *oba = &uoba->uoba_oba4;
bus_space_handle_t bh;
- struct bootpath *bp;
sc->sc_dmatag = oba->oba_dmatag;
@@ -425,18 +423,7 @@ sw_attach(parent, self, aux)
printf(" pri %d\n", oba->oba_pri);
- /*
- * If the boot path is "sw" or "si" at the moment and it's me, then
- * walk out pointer to the sub-device, ready for the config
- * below.
- */
- bp = oba->oba_bp;
- if (bp != NULL && strcmp(bp->name, "sw") == 0 &&
- bp->val[0] == -1 && bp->val[1] == ncr_sc->sc_dev.dv_unit)
- bootpath_store(1, bp + 1);
-
si_attach_common(parent, sc);
- bootpath_store(1, NULL);
}
static void
diff --git a/sys/arch/sparc/dev/vme_machdep.c b/sys/arch/sparc/dev/vme_machdep.c
index c6cb041eaa1..3032003a1f3 100644
--- a/sys/arch/sparc/dev/vme_machdep.c
+++ b/sys/arch/sparc/dev/vme_machdep.c
@@ -1,4 +1,4 @@
-/* $NetBSD: vme_machdep.c,v 1.21 1999/11/13 00:32:12 thorpej Exp $ */
+/* $NetBSD: vme_machdep.c,v 1.22 2000/01/11 12:59:47 pk Exp $ */
/*-
* Copyright (c) 1997, 1998 The NetBSD Foundation, Inc.
@@ -77,7 +77,6 @@ struct sparcvme_softc {
volatile u_int32_t *sc_ioctags; /* VME IO-cache tag registers */
volatile u_int32_t *sc_iocflush;/* VME IO-cache flush registers */
int (*sc_vmeintr) __P((void *));
- struct bootpath *sc_bp;
};
struct sparcvme_softc *sparcvme_sc;/*XXX*/
@@ -297,11 +296,6 @@ vmeattach_mainbus(parent, self, aux)
sc->sc_bustag = ma->ma_bustag;
sc->sc_dmatag = ma->ma_dmatag;
- if (ma->ma_bp != NULL && strcmp(ma->ma_bp->name, "vme") == 0) {
- sc->sc_bp = ma->ma_bp + 1;
- bootpath_store(1, sc->sc_bp);
- }
-
/* VME interrupt entry point */
sc->sc_vmeintr = vmeintr4;
@@ -329,7 +323,6 @@ vmeattach_mainbus(parent, self, aux)
printf("\n");
(void)config_found(self, &vba, 0);
- bootpath_store(1, NULL);
#endif
return;
}
diff --git a/sys/arch/sparc/include/autoconf.h b/sys/arch/sparc/include/autoconf.h
index dfa095663d6..17c8ed2261c 100644
--- a/sys/arch/sparc/include/autoconf.h
+++ b/sys/arch/sparc/include/autoconf.h
@@ -1,4 +1,4 @@
-/* $NetBSD: autoconf.h,v 1.31 1999/02/14 12:26:16 pk Exp $ */
+/* $NetBSD: autoconf.h,v 1.32 2000/01/11 13:00:36 pk Exp $ */
/*-
* Copyright (c) 1997, 1998 The NetBSD Foundation, Inc.
@@ -131,7 +131,6 @@ struct mainbus_attach_args {
int ma_size; /* register physical size */
int ma_pri; /* priority (IPL) */
void *ma_promvaddr; /* PROM virtual address, if any */
- struct bootpath *ma_bp; /* used for locating boot device */
};
/* Attach arguments presented to devices by obio_attach() (sun4 only) */
@@ -141,7 +140,6 @@ struct obio4_attach_args {
bus_dma_tag_t oba_dmatag;
bus_addr_t oba_paddr; /* register physical address */
int oba_pri; /* interrupt priority (IPL) */
- struct bootpath *oba_bp; /* used for locating boot device */
};
union obio_attach_args {
@@ -198,7 +196,9 @@ struct bootpath {
struct device *dev; /* device that recognised this component */
};
+#if 0
struct bootpath *bootpath_store __P((int, struct bootpath *));
+#endif
int sd_crazymap __P((int));
/* Parse a disk string into a dev_t, return device struct pointer */
@@ -212,14 +212,3 @@ void bootstrap __P((void));
struct device *getdevunit __P((char *, int));
void *findzs __P((int));
int romgetcursoraddr __P((int **, int **));
-#if 0
-/* Pass a string to the FORTH interpreter. May fail silently. */
-void rominterpret __P((char *));
-int firstchild __P((int));
-int nextsibling __P((int));
-void callrom __P((void));
-int findroot __P((void));
-int findnode __P((int, const char *));
-int opennode __P((char *));
-int node_has_property __P((int, const char *));
-#endif
diff --git a/sys/arch/sparc/sparc/autoconf.c b/sys/arch/sparc/sparc/autoconf.c
index 7dd4e95002f..3c7f134b4ec 100644
--- a/sys/arch/sparc/sparc/autoconf.c
+++ b/sys/arch/sparc/sparc/autoconf.c
@@ -1,4 +1,4 @@
-/* $NetBSD: autoconf.c,v 1.127 2000/01/09 20:53:30 pk Exp $ */
+/* $NetBSD: autoconf.c,v 1.128 2000/01/11 13:01:53 pk Exp $ */
/*
* Copyright (c) 1996
@@ -121,6 +121,7 @@ int nbootpath;
static void bootpath_build __P((void));
static void bootpath_fake __P((struct bootpath *, char *));
static void bootpath_print __P((struct bootpath *));
+static struct bootpath *bootpath_store __P((int, struct bootpath *));
int find_cpus __P((void));
/*
@@ -650,12 +651,7 @@ bootpath_print(bp)
/*
* save or read a bootpath pointer from the boothpath store.
- *
- * XXX. required because of SCSI... we don't have control over the "sd"
- * device, so we can't set boot device there. we patch in with
- * dk_establish(), and use this to recover the bootpath.
*/
-
struct bootpath *
bootpath_store(storep, bp)
int storep;
@@ -670,23 +666,6 @@ bootpath_store(storep, bp)
return (retval);
}
-/* TEMP: */
-struct bootpath *altbootpath_store(int, struct bootpath *);
-struct bootpath *
-altbootpath_store(storep, bp)
- int storep;
- struct bootpath *bp;
-{
- static struct bootpath *save;
- struct bootpath *retval;
-
- retval = save;
- if (storep)
- save = bp;
-
- return (retval);
-}
-/* END TEMP */
/*
* Set up the sd target mappings for non SUN4 PROMs.
@@ -831,8 +810,6 @@ cpu_configure()
(void)spl0();
}
-struct device *altbootdev;
-
void
cpu_rootconf()
{
@@ -842,29 +819,8 @@ cpu_rootconf()
bp = nbootpath == 0 ? NULL : &bootpath[nbootpath-1];
bootdv = bp == NULL ? NULL : bp->dev;
- bootpartition = bp == NULL ? 0 : bp->val[2];
+ bootpartition = bootdv == NULL ? 0 : bp->val[2];
-#if 1
- /*
- * Old bootpath code no longer works now that SCSI autoconfiguration
- * can be delayed. device_register() is the One True Way.
- */
- bootdv = altbootdev;
-#else
- if (bootdv != altbootdev) {
- int c;
- printf("device_register boot device mismatch\n");
- printf("\tbootdv=%s\n",
- bootdv==NULL?"NOT FOUND":bootdv->dv_xname);
- printf("\taltbootdev=%s\n",
- altbootdev==NULL?"NOT FOUND":altbootdev->dv_xname);
- printf("RETURN to continue ");
- cnpollc(1);
- while ((c = cngetc()) != '\r' && c != '\n');
- printf("\n");
- cnpollc(0);
- }
-#endif
setroot(bootdv, bootpartition);
}
@@ -1016,7 +972,7 @@ extern struct sparc_bus_space_tag mainbus_space_tag;
namebuf, sizeof(namebuf)));
/* Establish the first component of the boot path */
- altbootpath_store(1, bootpath);
+ bootpath_store(1, bootpath);
/*
* Locate and configure the ``early'' devices. These must be
@@ -1039,14 +995,12 @@ extern struct sparc_bus_space_tag mainbus_space_tag;
ma.ma_bustag = &mainbus_space_tag;
ma.ma_dmatag = &mainbus_dma_tag;
ma.ma_name = "obio";
- ma.ma_bp = bootpath;
if (config_found(dev, (void *)&ma, mbprint) == NULL)
panic("obio missing");
ma.ma_bustag = &mainbus_space_tag;
ma.ma_dmatag = &mainbus_dma_tag;
ma.ma_name = "vme";
- ma.ma_bp = bootpath;
(void)config_found(dev, (void *)&ma, mbprint);
return;
}
@@ -1127,9 +1081,6 @@ extern struct sparc_bus_space_tag mainbus_space_tag;
if (getprop_address1(node, &ma.ma_promvaddr) != 0)
continue;
- /* Start at the beginning of the bootpath */
- ma.ma_bp = bootpath;
-
if (config_found(dev, (void *)&ma, mbprint) == NULL)
panic(sp);
}
@@ -1177,9 +1128,6 @@ extern struct sparc_bus_space_tag mainbus_space_tag;
if (getprop_address1(node, &ma.ma_promvaddr) != 0)
continue;
- /* Start at the beginning of the bootpath */
- ma.ma_bp = bootpath;
-
(void) config_found(dev, (void *)&ma, mbprint);
}
#endif /* SUN4C || SUN4M */
@@ -1651,18 +1599,23 @@ nail_bootdev(dev, bp)
struct device *dev;
struct bootpath *bp;
{
- /*bp->dev = dev; -* got it! */
- if (altbootdev != NULL)
+
+ if (bp->dev != NULL)
panic("device_register: already got a boot device: %s",
- altbootdev->dv_xname);
- altbootdev = dev;
+ bp->dev->dv_xname);
+
+ /*
+ * Mark this bootpath component by linking it to the matched
+ * device. We pick up the device pointer in cpu_rootconf().
+ */
+ bp->dev = dev;
/*
- * Clear current bootpath component, so we don't spuriously
+ * Then clear the current bootpath component, so we don't spuriously
* match similar instances on other busses, e.g. a disk on
* another SCSI bus with the same target.
*/
- altbootpath_store(1, NULL);
+ bootpath_store(1, NULL);
}
void
@@ -1670,7 +1623,7 @@ device_register(dev, aux)
struct device *dev;
void *aux;
{
- struct bootpath *bp = altbootpath_store(0, NULL);
+ struct bootpath *bp = bootpath_store(0, NULL);
char *dvname = dev->dv_cfdata->cf_driver->cd_name;
/*
@@ -1719,7 +1672,7 @@ device_register(dev, aux)
strcpy(bootpath[nbootpath].name, "fd");
nbootpath++;
}
- altbootpath_store(1, bp + 1);
+ bootpath_store(1, bp + 1);
return;
}
} else if (strcmp(dvname, "le") == 0) {
diff --git a/sys/arch/sparc/sparc/disksubr.c b/sys/arch/sparc/sparc/disksubr.c
index fec9e9ee6fd..c067719f7f8 100644
--- a/sys/arch/sparc/sparc/disksubr.c
+++ b/sys/arch/sparc/sparc/disksubr.c
@@ -1,4 +1,4 @@
-/* $NetBSD: disksubr.c,v 1.23 1999/02/14 12:42:33 pk Exp $ */
+/* $NetBSD: disksubr.c,v 1.24 2000/01/11 13:01:52 pk Exp $ */
/*
* Copyright (c) 1994, 1995 Gordon W. Ross
@@ -61,72 +61,12 @@ static int disklabel_bsd_to_sun __P((struct disklabel *, char *));
extern struct device *bootdv;
-/*
- * find the boot device (if it was a disk). we must check to see if
- * unit info in saved bootpath structure matches unit info in our softc.
- * note that knowing the device name (e.g. "xd0") is not useful... we
- * must check the drive number (or target/lun, in the case of SCSI).
- * (XXX is it worth ifdef'ing this?)
- */
-
void
dk_establish(dk, dev)
struct disk *dk;
struct device *dev;
{
- struct bootpath *bp = bootpath_store(0, NULL); /* restore bootpath! */
- struct scsibus_softc *sbsc;
- int target, lun;
-
- if (bp == NULL)
- return;
-
- /*
- * scsi: sd,cd
- */
- if (strncmp("sd", dev->dv_xname, 2) == 0 ||
- strncmp("cd", dev->dv_xname, 2) == 0) {
-
- sbsc = (struct scsibus_softc *)dev->dv_parent;
-
- target = bp->val[0];
- lun = bp->val[1];
-
- if (CPU_ISSUN4 && dev->dv_xname[0] == 's' &&
- target == 0 && sbsc->sc_link[0][0] == NULL) {
- /*
- * disk unit 0 is magic: if there is actually no
- * target 0 scsi device, the PROM will call
- * target 3 `sd0'.
- * XXX - what if someone puts a tape at target 0?
- */
- target = 3; /* remap to 3 */
- lun = 0;
- }
-
- if (CPU_ISSUN4C && dev->dv_xname[0] == 's')
- target = sd_crazymap(target);
-
- if (sbsc->sc_link[target][lun] != NULL &&
- sbsc->sc_link[target][lun]->device_softc == (void *)dev) {
- bp->dev = dev; /* got it! */
- return;
- }
- }
-
- /*
- * xd,xy
- */
- if (strncmp("xd", dev->dv_xname, 2) == 0 ||
- strncmp("xy", dev->dv_xname, 2) == 0) {
-
- /* XXX - dv_unit may not be the driver number.. */
- if (dev->dv_unit == bp->val[0] &&
- strncmp(bp->name, dev->dv_xname, 2) == 0) {
- bp->dev = dev; /* got it! */
- return;
- }
- }
+ return;
}
/*
diff --git a/sys/arch/sparc/sparc/iommu.c b/sys/arch/sparc/sparc/iommu.c
index 82f2452d1c5..91f53ec12dc 100644
--- a/sys/arch/sparc/sparc/iommu.c
+++ b/sys/arch/sparc/sparc/iommu.c
@@ -1,4 +1,4 @@
-/* $NetBSD: iommu.c,v 1.37 2000/01/07 10:54:11 pk Exp $ */
+/* $NetBSD: iommu.c,v 1.38 2000/01/11 13:01:52 pk Exp $ */
/*
* Copyright (c) 1996
@@ -173,7 +173,6 @@ iommu_attach(parent, self, aux)
struct iommu_softc *sc = (struct iommu_softc *)self;
struct mainbus_attach_args *ma = aux;
int node;
- struct bootpath *bp;
bus_space_handle_t bh;
u_int pbase, pa;
int i, mmupcrsave, s;
@@ -306,12 +305,6 @@ iommu_attach(parent, self, aux)
sc->sc_pagesize,
sc->sc_range >> 20);
- /* Propagate bootpath */
- if (ma->ma_bp != NULL && strcmp(ma->ma_bp->name, "iommu") == 0)
- bp = ma->ma_bp + 1;
- else
- bp = NULL;
-
iommu_dvmamap = extent_create("iommudvma",
IOMMU_DVMA_BASE, IOMMU_DVMA_END,
M_DEVBUF, 0, 0, EX_NOWAIT);
@@ -332,7 +325,6 @@ iommu_attach(parent, self, aux)
ia.iom_dmatag = &iommu_dma_tag;
ia.iom_node = node;
- ia.iom_bp = bp;
ia.iom_reg = NULL;
getprop(node, "reg", sizeof(struct sbus_reg),
diff --git a/sys/arch/sparc/sparc/iommuvar.h b/sys/arch/sparc/sparc/iommuvar.h
index 21309f83141..d774c910dfe 100644
--- a/sys/arch/sparc/sparc/iommuvar.h
+++ b/sys/arch/sparc/sparc/iommuvar.h
@@ -1,4 +1,4 @@
-/* $NetBSD: iommuvar.h,v 1.4 1998/09/19 15:47:18 pk Exp $ */
+/* $NetBSD: iommuvar.h,v 1.5 2000/01/11 13:01:52 pk Exp $ */
/*-
* Copyright (c) 1998 The NetBSD Foundation, Inc.
@@ -52,7 +52,6 @@ struct iommu_attach_args {
int iom_node; /* PROM handle */
struct iommu_reg *iom_reg;
int iom_nreg;
- struct bootpath *iom_bp; /* used for locating boot device */
};
void iommu_enter __P((bus_addr_t, paddr_t));
diff --git a/sys/dev/sbus/dma_sbus.c b/sys/dev/sbus/dma_sbus.c
index 36f1bd308c1..58f1648823c 100644
--- a/sys/dev/sbus/dma_sbus.c
+++ b/sys/dev/sbus/dma_sbus.c
@@ -1,4 +1,4 @@
-/* $NetBSD: dma_sbus.c,v 1.3 1998/09/05 17:28:57 pk Exp $ */
+/* $NetBSD: dma_sbus.c,v 1.4 2000/01/11 12:59:43 pk Exp $ */
/*-
* Copyright (c) 1998 The NetBSD Foundation, Inc.
@@ -152,7 +152,6 @@ dmaattach_sbus(parent, self, aux)
struct dma_softc *dsc = (void *)self;
struct lsi64854_softc *sc = &dsc->sc_lsi64854;
bus_space_handle_t bh;
-/*XXX*/ struct bootpath *bp;
bus_space_tag_t sbt;
int sbusburst, burst;
int node;
@@ -222,19 +221,6 @@ dmaattach_sbus(parent, self, aux)
sc->sc_channel = L64854_CHANNEL_SCSI;
}
-
- /* Propagate bootpath */
- bp = NULL;
- if (sa->sa_bp != NULL) {
- char *bpname = sa->sa_bp->name;
- if (strcmp(bpname, "espdma") == 0)
- /* We call everything "dma" */
- bpname = "dma";
-
- if (strcmp(bpname, self->dv_cfdata->cf_driver->cd_name) == 0)
- bp = sa->sa_bp + 1;
- }
-
sbus_establish(&dsc->sc_sd, &sc->sc_dev);
sbt = dma_alloc_bustag(dsc);
lsi64854_attach(sc);
@@ -243,7 +229,7 @@ dmaattach_sbus(parent, self, aux)
for (node = firstchild(sa->sa_node); node; node = nextsibling(node)) {
struct sbus_attach_args sa;
sbus_setup_attach_args((struct sbus_softc *)parent,
- sbt, sc->sc_dmatag, node, bp, &sa);
+ sbt, sc->sc_dmatag, node, &sa);
(void) config_found(&sc->sc_dev, (void *)&sa, dmaprint_sbus);
sbus_destroy_attach_args(&sa);
}
diff --git a/sys/dev/sbus/esp_sbus.c b/sys/dev/sbus/esp_sbus.c
index 863a58c0167..896d89942aa 100644
--- a/sys/dev/sbus/esp_sbus.c
+++ b/sys/dev/sbus/esp_sbus.c
@@ -1,4 +1,4 @@
-/* $NetBSD: esp_sbus.c,v 1.7 1999/11/21 15:01:51 pk Exp $ */
+/* $NetBSD: esp_sbus.c,v 1.8 2000/01/11 12:59:43 pk Exp $ */
/*-
* Copyright (c) 1997, 1998 The NetBSD Foundation, Inc.
@@ -75,16 +75,6 @@ struct esp_softc {
int sc_pri; /* SBUS priority */
};
-/*
- * Is this esp on the bootpath?
- * We may get two forms of the bootpath:
- * (1) ../sbus@.../esp@<offset>,<slot>/sd@.. (PROM v3 style)
- * (2) /sbus0/esp0/sd@.. (PROM v2 style)
- */
-#define SAME_ESP(sc, bp, sa) \
- ((bp->val[0] == sa->sa_slot && bp->val[1] == sa->sa_offset) || \
- (bp->val[0] == -1 && bp->val[1] == sc->sc_dev.dv_unit))
-
void espattach_sbus __P((struct device *, struct device *, void *));
void espattach_dma __P((struct device *, struct device *, void *));
int espmatch_sbus __P((struct device *, struct cfdata *, void *));
@@ -236,10 +226,6 @@ espattach_sbus(parent, self, aux)
esc->sc_sd.sd_reset = (void *) ncr53c9x_reset;
sbus_establish(&esc->sc_sd, &sc->sc_dev);
- if (sa->sa_bp != NULL && strcmp("esp", sa->sa_bp->name) == 0 &&
- SAME_ESP(sc, sa->sa_bp, sa))
- bootpath_store(1, sa->sa_bp + 1);
-
if (strcmp("ptscII", sa->sa_name) == 0) {
espattach(esc, &esp_sbus_glue1);
} else {
@@ -303,10 +289,6 @@ espattach_dma(parent, self, aux)
esc->sc_sd.sd_reset = (void *) ncr53c9x_reset;
sbus_establish(&esc->sc_sd, parent);
- if (sa->sa_bp != NULL && strcmp("esp", sa->sa_bp->name) == 0 &&
- SAME_ESP(sc, sa->sa_bp, sa))
- bootpath_store(1, sa->sa_bp + 1);
-
espattach(esc, &esp_sbus_glue);
}
@@ -423,8 +405,6 @@ espattach(esc, gluep)
/* Turn on target selection using the `dma' method */
ncr53c9x_dmaselect = 1;
-
- bootpath_store(1, NULL);
}
/*
diff --git a/sys/dev/sbus/if_le.c b/sys/dev/sbus/if_le.c
index 6be7afbb1f1..70bd27e2633 100644
--- a/sys/dev/sbus/if_le.c
+++ b/sys/dev/sbus/if_le.c
@@ -1,4 +1,4 @@
-/* $NetBSD: if_le.c,v 1.9 1999/11/21 15:01:51 pk Exp $ */
+/* $NetBSD: if_le.c,v 1.10 2000/01/11 12:59:43 pk Exp $ */
/*-
* Copyright (c) 1997, 1998 The NetBSD Foundation, Inc.
@@ -158,10 +158,6 @@ lematch_sbus(parent, cf, aux)
return (strcmp(cf->cf_driver->cd_name, sa->sa_name) == 0);
}
-#define SAME_LANCE(bp, sa) \
- ((bp->val[0] == sa->sa_slot && bp->val[1] == sa->sa_offset) || \
- (bp->val[0] == -1 && bp->val[1] == sc->sc_dev.dv_unit))
-
void
leattach_sbus(parent, self, aux)
struct device *parent, *self;
@@ -220,10 +216,6 @@ leattach_sbus(parent, self, aux)
lesc->sc_sd.sd_reset = (void *)lance_reset;
sbus_establish(&lesc->sc_sd, &sc->sc_dev);
- if (sa->sa_bp != NULL && strcmp(sa->sa_bp->name, le_cd.cd_name) == 0 &&
- SAME_LANCE(sa->sa_bp, sa))
- sa->sa_bp->dev = &sc->sc_dev;
-
if (sc->sc_mem == 0) {
bus_dma_segment_t seg;
int rseg, error;
diff --git a/sys/dev/sbus/if_le_lebuffer.c b/sys/dev/sbus/if_le_lebuffer.c
index 9157e8a23b1..4b8a51fae1b 100644
--- a/sys/dev/sbus/if_le_lebuffer.c
+++ b/sys/dev/sbus/if_le_lebuffer.c
@@ -1,4 +1,4 @@
-/* $NetBSD: if_le_lebuffer.c,v 1.4 1999/11/21 15:01:51 pk Exp $ */
+/* $NetBSD: if_le_lebuffer.c,v 1.5 2000/01/11 12:59:43 pk Exp $ */
/*-
* Copyright (c) 1997, 1998 The NetBSD Foundation, Inc.
@@ -163,10 +163,6 @@ lematch_lebuffer(parent, cf, aux)
}
-#define SAME_LANCE(bp, sa) \
- (bp->val[0] == sa->sa_slot && bp->val[1] == sa->sa_offset)
-
-
void
leattach_lebuffer(parent, self, aux)
struct device *parent, *self;
@@ -205,10 +201,6 @@ leattach_lebuffer(parent, self, aux)
lesc->sc_sd.sd_reset = (void *)lance_reset;
sbus_establish(&lesc->sc_sd, parent);
- if (sa->sa_bp != NULL && strcmp(sa->sa_bp->name, le_cd.cd_name) == 0 &&
- SAME_LANCE(sa->sa_bp, sa))
- sa->sa_bp->dev = &sc->sc_dev;
-
sc->sc_supmedia = lemedia;
sc->sc_nsupmedia = NLEMEDIA;
sc->sc_defaultmedia = lemedia[0];
diff --git a/sys/dev/sbus/if_le_ledma.c b/sys/dev/sbus/if_le_ledma.c
index 59bd497637f..090a2a23d96 100644
--- a/sys/dev/sbus/if_le_ledma.c
+++ b/sys/dev/sbus/if_le_ledma.c
@@ -1,4 +1,4 @@
-/* $NetBSD: if_le_ledma.c,v 1.6 1999/11/21 15:01:51 pk Exp $ */
+/* $NetBSD: if_le_ledma.c,v 1.7 2000/01/11 12:59:44 pk Exp $ */
/*-
* Copyright (c) 1997, 1998 The NetBSD Foundation, Inc.
@@ -338,9 +338,6 @@ lematch_ledma(parent, cf, aux)
}
-#define SAME_LANCE(bp, sa) \
- (bp->val[0] == sa->sa_slot && bp->val[1] == sa->sa_offset)
-
void
leattach_ledma(parent, self, aux)
struct device *parent, *self;
@@ -400,10 +397,6 @@ leattach_ledma(parent, self, aux)
lesc->sc_sd.sd_reset = (void *)lance_reset;
sbus_establish(&lesc->sc_sd, parent);
- if (sa->sa_bp != NULL && strcmp(sa->sa_bp->name, le_cd.cd_name) == 0 &&
- SAME_LANCE(sa->sa_bp, sa))
- sa->sa_bp->dev = &sc->sc_dev;
-
sc->sc_mediachange = lemediachange;
sc->sc_mediastatus = lemediastatus;
sc->sc_supmedia = lemedia;
diff --git a/sys/dev/sbus/lebuffer.c b/sys/dev/sbus/lebuffer.c
index be5e84af2f6..b4590fc9d70 100644
--- a/sys/dev/sbus/lebuffer.c
+++ b/sys/dev/sbus/lebuffer.c
@@ -1,4 +1,4 @@
-/* $NetBSD: lebuffer.c,v 1.5 1998/08/29 20:38:38 pk Exp $ */
+/* $NetBSD: lebuffer.c,v 1.6 2000/01/11 12:59:44 pk Exp $ */
/*-
* Copyright (c) 1998 The NetBSD Foundation, Inc.
@@ -99,7 +99,6 @@ lebufattach(parent, self, aux)
int sbusburst;
bus_space_tag_t sbt;
bus_space_handle_t bh;
- struct bootpath *bp;
sc->sc_bustag = sa->sa_bustag;
sc->sc_dmatag = sa->sa_dmatag;
@@ -139,12 +138,6 @@ lebufattach(parent, self, aux)
sbus_establish(&sc->sc_sd, &sc->sc_dev);
- /* Propagate bootpath */
- if (sa->sa_bp != NULL)
- bp = sa->sa_bp + 1;
- else
- bp = NULL;
-
/* Allocate a bus tag */
sbt = (bus_space_tag_t)
malloc(sizeof(struct sparc_bus_space_tag), M_DEVBUF, M_NOWAIT);
@@ -163,7 +156,7 @@ lebufattach(parent, self, aux)
for (node = firstchild(node); node; node = nextsibling(node)) {
struct sbus_attach_args sa;
sbus_setup_attach_args((struct sbus_softc *)parent,
- sbt, sc->sc_dmatag, node, bp, &sa);
+ sbt, sc->sc_dmatag, node, &sa);
(void)config_found(&sc->sc_dev, (void *)&sa, lebufprint);
sbus_destroy_attach_args(&sa);
}
diff --git a/sys/dev/sbus/qec.c b/sys/dev/sbus/qec.c
index 5da41109269..d508efa51a4 100644
--- a/sys/dev/sbus/qec.c
+++ b/sys/dev/sbus/qec.c
@@ -1,4 +1,4 @@
-/* $NetBSD: qec.c,v 1.9 1999/06/24 19:56:51 pk Exp $ */
+/* $NetBSD: qec.c,v 1.10 2000/01/11 12:59:44 pk Exp $ */
/*-
* Copyright (c) 1998 The NetBSD Foundation, Inc.
@@ -115,7 +115,6 @@ qecattach(parent, self, aux)
int sbusburst;
bus_space_tag_t sbt;
bus_space_handle_t bh;
- struct bootpath *bp;
int error;
sc->sc_bustag = sa->sa_bustag;
@@ -190,12 +189,6 @@ qecattach(parent, self, aux)
panic("%s: error getting ranges property", self->dv_xname);
}
- /* Propagate bootpath */
- if (sa->sa_bp != NULL)
- bp = sa->sa_bp + 1;
- else
- bp = NULL;
-
/* Allocate a bus tag */
sbt = (bus_space_tag_t)
malloc(sizeof(struct sparc_bus_space_tag), M_DEVBUF, M_NOWAIT);
@@ -229,7 +222,7 @@ qecattach(parent, self, aux)
for (node = firstchild(node); node; node = nextsibling(node)) {
struct sbus_attach_args sa;
sbus_setup_attach_args((struct sbus_softc *)parent,
- sbt, sc->sc_dmatag, node, bp, &sa);
+ sbt, sc->sc_dmatag, node, &sa);
(void)config_found(&sc->sc_dev, (void *)&sa, qecprint);
sbus_destroy_attach_args(&sa);
}
diff --git a/sys/dev/sbus/sbusvar.h b/sys/dev/sbus/sbusvar.h
index 943d7f50126..5fe950813fd 100644
--- a/sys/dev/sbus/sbusvar.h
+++ b/sys/dev/sbus/sbusvar.h
@@ -1,4 +1,4 @@
-/* $NetBSD: sbusvar.h,v 1.9 1998/09/06 21:23:58 eeh Exp $ */
+/* $NetBSD: sbusvar.h,v 1.10 2000/01/11 12:59:44 pk Exp $ */
/*-
* Copyright (c) 1998 The NetBSD Foundation, Inc.
@@ -95,13 +95,11 @@ struct sbus_attach_args {
u_int32_t *sa_promvaddrs;/* PROM-supplied virtual addresses -- 32-bit */
int sa_npromvaddrs; /* Number of PROM VAs */
#define sa_promvaddr sa_promvaddrs[0]
-
- struct bootpath *sa_bp; /* used for locating boot device */
};
/* sbus_attach_internal() is also used from obio.c */
void sbus_attach_common __P((struct sbus_softc *, char *, int,
- struct bootpath *, const char * const *));
+ const char * const *));
int sbus_print __P((void *, const char *));
void sbus_establish __P((struct sbusdev *, struct device *));
@@ -111,7 +109,6 @@ int sbus_setup_attach_args __P((
bus_space_tag_t,
bus_dma_tag_t,
int, /*node*/
- struct bootpath *,
struct sbus_attach_args *));
void sbus_destroy_attach_args __P((struct sbus_attach_args *));
diff --git a/sys/dev/sbus/xbox.c b/sys/dev/sbus/xbox.c
index e0690be0ed3..1672d06790c 100644
--- a/sys/dev/sbus/xbox.c
+++ b/sys/dev/sbus/xbox.c
@@ -1,4 +1,4 @@
-/* $NetBSD: xbox.c,v 1.2 1998/07/27 19:13:06 pk Exp $ */
+/* $NetBSD: xbox.c,v 1.3 2000/01/11 12:59:44 pk Exp $ */
/*-
* Copyright (c) 1998 The NetBSD Foundation, Inc.
@@ -138,7 +138,6 @@ xbox_attach(parent, self, aux)
{
struct xbox_softc *sc = (struct xbox_softc *)self;
struct sbus_attach_args *sa = aux;
- struct bootpath *bp = sa->sa_bp;
int node = sa->sa_node;
struct xbox_attach_args xa;
char *cp;
@@ -156,12 +155,6 @@ xbox_attach(parent, self, aux)
printf("\n");
- /* Propagate bootpath */
- if (bp != NULL && strcmp(bp->name, "xbox") == 0)
- bp++;
- else
- bp = NULL;
-
/*
* Now pretend to be another Sbus.
*/
@@ -170,7 +163,6 @@ xbox_attach(parent, self, aux)
xa.xa_node = node;
xa.xa_bustag = sa->sa_bustag;
xa.xa_dmatag = sa->sa_dmatag;
- xa.xa_bp = bp;
(void) config_found(&sc->sc_dev, (void *)&xa, xbox_print);
}
diff --git a/sys/dev/sbus/xboxvar.h b/sys/dev/sbus/xboxvar.h
index e44a5b61a3c..a8f60faeceb 100644
--- a/sys/dev/sbus/xboxvar.h
+++ b/sys/dev/sbus/xboxvar.h
@@ -1,4 +1,4 @@
-/* $NetBSD: xboxvar.h,v 1.1 1998/04/18 19:00:18 pk Exp $ */
+/* $NetBSD: xboxvar.h,v 1.2 2000/01/11 12:59:44 pk Exp $ */
/*-
* Copyright (c) 1998 The NetBSD Foundation, Inc.
@@ -47,6 +47,5 @@ struct xbox_attach_args {
bus_dma_tag_t xa_dmatag;
char *xa_name; /* PROM node name */
int xa_node; /* PROM handle */
- struct bootpath *xa_bp; /* used for locating boot device */
};
#endif /* _XBOX_VAR_H */