diff options
author | Joel Sing <jsing@cvs.openbsd.org> | 2010-04-29 13:48:30 +0000 |
---|---|---|
committer | Joel Sing <jsing@cvs.openbsd.org> | 2010-04-29 13:48:30 +0000 |
commit | 65baaf07a5db9eea322dac5c02f783630761f248 (patch) | |
tree | 861a52049edc3f9a0255bdb367d8f3e593c69e7b /sys/arch/hppa/gsc | |
parent | 7dc30236662e846932e2f38fd4d67a7f7d7a07d9 (diff) |
Currently pdc_scanbus() scans in reverse, which results in physical CPU0
attaching as cpu1 and physical CPU1 attaching as cpu0. Split the device
scan into two parts - the first pass scans forward and attaches memory
and CPUs, whilst the second pass scans in reverse attaching the
remaining devices, thus preserving current semantics.
Found the hard way whilst trying to spin up the secondary CPU on my j6750.
ok miod@ kettenis@
Diffstat (limited to 'sys/arch/hppa/gsc')
-rw-r--r-- | sys/arch/hppa/gsc/gscbus.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/arch/hppa/gsc/gscbus.c b/sys/arch/hppa/gsc/gscbus.c index 2731d157dea..a0302bef907 100644 --- a/sys/arch/hppa/gsc/gscbus.c +++ b/sys/arch/hppa/gsc/gscbus.c @@ -1,4 +1,4 @@ -/* $OpenBSD: gscbus.c,v 1.28 2010/04/20 23:35:16 deraadt Exp $ */ +/* $OpenBSD: gscbus.c,v 1.29 2010/04/29 13:48:29 jsing Exp $ */ /* * Copyright (c) 1998 Michael Shalayeff @@ -122,7 +122,7 @@ gscattach(parent, self, aux) sc->sc_dmatag._dmamem_unmap = gsc_dmamem_unmap; sc->sc_dmatag._dmamem_mmap = gsc_dmamem_mmap; - pdc_scanbus(self, &ga->ga_ca, MAXMODBUS, 0); + pdc_scanbus(self, &ga->ga_ca, MAXMODBUS, 0, 0); } int |