diff options
author | kato <kato@FreeBSD.org> | 1998-10-10 13:37:16 +0000 |
---|---|---|
committer | kato <kato@FreeBSD.org> | 1998-10-10 13:37:16 +0000 |
commit | c97299bfbe364a16ce4e61a60c70ff2e71ac51f8 (patch) | |
tree | 225f122f1e85dd3e166d395ca3b95590b9c0ed97 /sys/kern/subr_smp.c | |
parent | aa17e00bc26d61aad3df197976e322e8ac0101b1 (diff) | |
download | FreeBSD-src-c97299bfbe364a16ce4e61a60c70ff2e71ac51f8.zip FreeBSD-src-c97299bfbe364a16ce4e61a60c70ff2e71ac51f8.tar.gz |
mp_machdep.c: Set a vector to boot code (PC-98).
locore.s: Tell the bios to warmboot next time (PC-98).
Diffstat (limited to 'sys/kern/subr_smp.c')
-rw-r--r-- | sys/kern/subr_smp.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/sys/kern/subr_smp.c b/sys/kern/subr_smp.c index d575d03..adf5131 100644 --- a/sys/kern/subr_smp.c +++ b/sys/kern/subr_smp.c @@ -22,7 +22,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: mp_machdep.c,v 1.81 1998/10/08 16:15:22 kato Exp $ + * $Id: mp_machdep.c,v 1.82 1998/10/10 09:38:02 kato Exp $ */ #include "opt_smp.h" @@ -1765,9 +1765,9 @@ start_all_aps(u_int boot_addr) install_ap_tramp(boot_addr); -#ifndef PC98 /* save the current value of the warm-start vector */ mpbioswarmvec = *((u_long *) WARMBOOT_OFF); +#ifndef PC98 outb(CMOS_REG, BIOS_RESET); mpbiosreason = inb(CMOS_DATA); #endif @@ -1840,10 +1840,10 @@ start_all_aps(u_int boot_addr) gd->prv_CMAP3 = &newpt[5 + UPAGES]; gd->prv_PMAP1 = &newpt[6 + UPAGES]; -#ifndef PC98 /* setup a vector to our boot code */ *((volatile u_short *) WARMBOOT_OFF) = WARMBOOT_TARGET; *((volatile u_short *) WARMBOOT_SEG) = (boot_addr >> 4); +#ifndef PC98 outb(CMOS_REG, BIOS_RESET); outb(CMOS_DATA, BIOS_WARM); /* 'warm-start' */ #endif @@ -1873,9 +1873,9 @@ start_all_aps(u_int boot_addr) /* fill in our (BSP) APIC version */ cpu_apic_versions[0] = lapic.version; -#ifndef PC98 /* restore the warmstart vector */ *(u_long *) WARMBOOT_OFF = mpbioswarmvec; +#ifndef PC98 outb(CMOS_REG, BIOS_RESET); outb(CMOS_DATA, mpbiosreason); #endif |