aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexey Starikovskiy <astarikovskiy@suse.de>2008-03-20 07:54:09 -0400
committerIngo Molnar <mingo@elte.hu>2008-04-17 11:40:58 -0400
commita6333c3ccbdc0ae001cff6ee1d3633942ef763f4 (patch)
treefc775b3a0a74bd32534082a64ca53aaae406a346
parent8643f9d02a7bb9db74634b4c062d8e70ce7c59b9 (diff)
x86: add mp_bus_not_pci bitmap to mpparse_32.c
Signed-off: Alexey Starikovskiy <astarikovskiy@suse.de> Signed-off-by: Ingo Molnar <mingo@elte.hu>
-rw-r--r--arch/x86/kernel/mpparse_32.c4
-rw-r--r--include/asm-x86/mpspec.h3
2 files changed, 5 insertions, 2 deletions
diff --git a/arch/x86/kernel/mpparse_32.c b/arch/x86/kernel/mpparse_32.c
index 2abc9392799a..c13092db578e 100644
--- a/arch/x86/kernel/mpparse_32.c
+++ b/arch/x86/kernel/mpparse_32.c
@@ -43,6 +43,7 @@ unsigned int __cpuinitdata maxcpus = NR_CPUS;
43 */ 43 */
44int apic_version [MAX_APICS]; 44int apic_version [MAX_APICS];
45int mp_bus_id_to_type [MAX_MP_BUSSES]; 45int mp_bus_id_to_type [MAX_MP_BUSSES];
46DECLARE_BITMAP(mp_bus_not_pci, MAX_MP_BUSSES);
46int mp_bus_id_to_node [MAX_MP_BUSSES]; 47int mp_bus_id_to_node [MAX_MP_BUSSES];
47int mp_bus_id_to_local [MAX_MP_BUSSES]; 48int mp_bus_id_to_local [MAX_MP_BUSSES];
48int mp_bus_id_to_pci_bus [MAX_MP_BUSSES] = { [0 ... MAX_MP_BUSSES-1] = -1 }; 49int mp_bus_id_to_pci_bus [MAX_MP_BUSSES] = { [0 ... MAX_MP_BUSSES-1] = -1 };
@@ -240,12 +241,14 @@ static void __init MP_bus_info (struct mpc_config_bus *m)
240 } 241 }
241#endif 242#endif
242 243
244 set_bit(m->mpc_busid, mp_bus_not_pci);
243 if (strncmp(str, BUSTYPE_ISA, sizeof(BUSTYPE_ISA)-1) == 0) { 245 if (strncmp(str, BUSTYPE_ISA, sizeof(BUSTYPE_ISA)-1) == 0) {
244 mp_bus_id_to_type[m->mpc_busid] = MP_BUS_ISA; 246 mp_bus_id_to_type[m->mpc_busid] = MP_BUS_ISA;
245 } else if (strncmp(str, BUSTYPE_EISA, sizeof(BUSTYPE_EISA)-1) == 0) { 247 } else if (strncmp(str, BUSTYPE_EISA, sizeof(BUSTYPE_EISA)-1) == 0) {
246 mp_bus_id_to_type[m->mpc_busid] = MP_BUS_EISA; 248 mp_bus_id_to_type[m->mpc_busid] = MP_BUS_EISA;
247 } else if (strncmp(str, BUSTYPE_PCI, sizeof(BUSTYPE_PCI)-1) == 0) { 249 } else if (strncmp(str, BUSTYPE_PCI, sizeof(BUSTYPE_PCI)-1) == 0) {
248 mpc_oem_pci_bus(m, translation_table[mpc_record]); 250 mpc_oem_pci_bus(m, translation_table[mpc_record]);
251 clear_bit(m->mpc_busid, mp_bus_not_pci);
249 mp_bus_id_to_type[m->mpc_busid] = MP_BUS_PCI; 252 mp_bus_id_to_type[m->mpc_busid] = MP_BUS_PCI;
250 mp_bus_id_to_pci_bus[m->mpc_busid] = mp_current_pci_id; 253 mp_bus_id_to_pci_bus[m->mpc_busid] = mp_current_pci_id;
251 mp_current_pci_id++; 254 mp_current_pci_id++;
@@ -984,6 +987,7 @@ void __init mp_config_acpi_legacy_irqs (void)
984 * Fabricate the legacy ISA bus (bus #31). 987 * Fabricate the legacy ISA bus (bus #31).
985 */ 988 */
986 mp_bus_id_to_type[MP_ISA_BUS] = MP_BUS_ISA; 989 mp_bus_id_to_type[MP_ISA_BUS] = MP_BUS_ISA;
990 set_bit(MP_ISA_BUS, mp_bus_not_pci);
987 Dprintk("Bus #%d is ISA\n", MP_ISA_BUS); 991 Dprintk("Bus #%d is ISA\n", MP_ISA_BUS);
988 992
989 /* 993 /*
diff --git a/include/asm-x86/mpspec.h b/include/asm-x86/mpspec.h
index 982550bef2cd..75df88e0a270 100644
--- a/include/asm-x86/mpspec.h
+++ b/include/asm-x86/mpspec.h
@@ -23,13 +23,12 @@ extern int pic_mode;
23/* Each PCI slot may be a combo card with its own bus. 4 IRQ pins per slot. */ 23/* Each PCI slot may be a combo card with its own bus. 4 IRQ pins per slot. */
24#define MAX_IRQ_SOURCES (MAX_MP_BUSSES * 4) 24#define MAX_IRQ_SOURCES (MAX_MP_BUSSES * 4)
25 25
26extern DECLARE_BITMAP(mp_bus_not_pci, MAX_MP_BUSSES);
27
28extern void early_find_smp_config(void); 26extern void early_find_smp_config(void);
29extern void early_get_smp_config(void); 27extern void early_get_smp_config(void);
30 28
31#endif 29#endif
32 30
31extern DECLARE_BITMAP(mp_bus_not_pci, MAX_MP_BUSSES);
33extern int mp_bus_id_to_pci_bus[MAX_MP_BUSSES]; 32extern int mp_bus_id_to_pci_bus[MAX_MP_BUSSES];
34 33
35extern unsigned int boot_cpu_physical_apicid; 34extern unsigned int boot_cpu_physical_apicid;