subr_smp.c (7245dff0f1aa3a9f4e5481f643ab6981a0b0d41c) | subr_smp.c (20233f27f47bc6545222bc06ad89735924aadb8f) |
---|---|
1/* 2 * Copyright (c) 1996, by Steve Passe 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 8 unchanged lines hidden (view full) --- 17 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23 * SUCH DAMAGE. 24 * | 1/* 2 * Copyright (c) 1996, by Steve Passe 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 8 unchanged lines hidden (view full) --- 17 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23 * SUCH DAMAGE. 24 * |
25 * $Id: mp_machdep.c,v 1.49 1997/08/31 03:17:47 fsmp Exp $ | 25 * $Id: mp_machdep.c,v 1.38 1997/09/05 20:23:34 smp Exp smp $ |
26 */ 27 28#include "opt_smp.h" 29 30#include <sys/param.h> 31#include <sys/systm.h> 32#include <sys/kernel.h> 33#include <sys/proc.h> --- 156 unchanged lines hidden (view full) --- 190 191#endif /* CHECK_POINTS */ 192 193/* 194 * Values to send to the POST hardware. 195 */ 196#define MP_BOOTADDRESS_POST 0x10 197#define MP_PROBE_POST 0x11 | 26 */ 27 28#include "opt_smp.h" 29 30#include <sys/param.h> 31#include <sys/systm.h> 32#include <sys/kernel.h> 33#include <sys/proc.h> --- 156 unchanged lines hidden (view full) --- 190 191#endif /* CHECK_POINTS */ 192 193/* 194 * Values to send to the POST hardware. 195 */ 196#define MP_BOOTADDRESS_POST 0x10 197#define MP_PROBE_POST 0x11 |
198#define MP_START_POST 0x12 199#define MP_ANNOUNCE_POST 0x13 200#define MPTABLE_PASS1_POST 0x14 | 198#define MPTABLE_PASS1_POST 0x12 199 200#define MP_START_POST 0x13 201#define MP_ENABLE_POST 0x14 |
201#define MPTABLE_PASS2_POST 0x15 | 202#define MPTABLE_PASS2_POST 0x15 |
202#define MP_ENABLE_POST 0x16 203#define START_ALL_APS_POST 0x17 204#define INSTALL_AP_TRAMP_POST 0x18 205#define START_AP_POST 0x19 | |
206 | 203 |
204#define START_ALL_APS_POST 0x16 205#define INSTALL_AP_TRAMP_POST 0x17 206#define START_AP_POST 0x18 207 208#define MP_ANNOUNCE_POST 0x19 209 210 |
|
207/** XXX FIXME: where does this really belong, isa.h/isa.c perhaps? */ 208int current_postcode; 209 210/** XXX FIXME: what system files declare these??? */ 211extern struct region_descriptor r_gdt, r_idt; 212 213int bsp_apic_ready = 0; /* flags useability of BSP apic */ 214int mp_ncpus; /* # of CPUs, including BSP */ --- 1225 unchanged lines hidden (view full) --- 1440 1441/* 1442 * initialize all the SMP locks 1443 */ 1444 1445/* critical region around IO APIC, apic_imen */ 1446struct simplelock imen_lock; 1447 | 211/** XXX FIXME: where does this really belong, isa.h/isa.c perhaps? */ 212int current_postcode; 213 214/** XXX FIXME: what system files declare these??? */ 215extern struct region_descriptor r_gdt, r_idt; 216 217int bsp_apic_ready = 0; /* flags useability of BSP apic */ 218int mp_ncpus; /* # of CPUs, including BSP */ --- 1225 unchanged lines hidden (view full) --- 1444 1445/* 1446 * initialize all the SMP locks 1447 */ 1448 1449/* critical region around IO APIC, apic_imen */ 1450struct simplelock imen_lock; 1451 |
1448/* critical region around splxx(), cpl, cil, ipending */ | 1452/* critical region around splxx(), cpl, cml, cil, ipending */ |
1449struct simplelock cpl_lock; 1450 1451/* Make FAST_INTR() routines sequential */ 1452struct simplelock fast_intr_lock; 1453 1454/* critical region around INTR() routines */ 1455struct simplelock intr_lock; 1456 --- 516 unchanged lines hidden --- | 1453struct simplelock cpl_lock; 1454 1455/* Make FAST_INTR() routines sequential */ 1456struct simplelock fast_intr_lock; 1457 1458/* critical region around INTR() routines */ 1459struct simplelock intr_lock; 1460 --- 516 unchanged lines hidden --- |