Loading arch/x86/kernel/io_apic_32.c +2 −3 Original line number Diff line number Diff line Loading @@ -46,6 +46,7 @@ #include <asm/nmi.h> #include <asm/msidef.h> #include <asm/hypertransport.h> #include <asm/setup.h> #include <mach_apic.h> #include <mach_apicdef.h> Loading Loading @@ -1728,10 +1729,8 @@ static void __init setup_ioapic_ids_from_mpc(void) unsigned char old_id; unsigned long flags; #ifdef CONFIG_X86_NUMAQ if (found_numaq) if (x86_quirks->setup_ioapic_ids && x86_quirks->setup_ioapic_ids()) return; #endif /* * Don't check I/O APIC IDs for xAPIC systems. They have Loading arch/x86/kernel/numaq_32.c +7 −0 Original line number Diff line number Diff line Loading @@ -229,6 +229,12 @@ static void __init smp_read_mpc_oem(struct mp_config_oemtable *oemtable, } } static int __init numaq_setup_ioapic_ids(void) { /* so can skip it */ return 1; } static struct x86_quirks numaq_x86_quirks __initdata = { .arch_pre_time_init = numaq_pre_time_init, .arch_time_init = NULL, Loading @@ -243,6 +249,7 @@ static struct x86_quirks numaq_x86_quirks __initdata = { .mpc_oem_bus_info = mpc_oem_bus_info, .mpc_oem_pci_bus = mpc_oem_pci_bus, .smp_read_mpc_oem = smp_read_mpc_oem, .setup_ioapic_ids = numaq_setup_ioapic_ids, }; void numaq_mps_oem_check(struct mp_config_table *mpc, char *oem, Loading include/asm-x86/setup.h +1 −0 Original line number Diff line number Diff line Loading @@ -38,6 +38,7 @@ struct x86_quirks { void (*mpc_oem_pci_bus)(struct mpc_config_bus *m); void (*smp_read_mpc_oem)(struct mp_config_oemtable *oemtable, unsigned short oemsize); int (*setup_ioapic_ids)(void); }; extern struct x86_quirks *x86_quirks; Loading Loading
arch/x86/kernel/io_apic_32.c +2 −3 Original line number Diff line number Diff line Loading @@ -46,6 +46,7 @@ #include <asm/nmi.h> #include <asm/msidef.h> #include <asm/hypertransport.h> #include <asm/setup.h> #include <mach_apic.h> #include <mach_apicdef.h> Loading Loading @@ -1728,10 +1729,8 @@ static void __init setup_ioapic_ids_from_mpc(void) unsigned char old_id; unsigned long flags; #ifdef CONFIG_X86_NUMAQ if (found_numaq) if (x86_quirks->setup_ioapic_ids && x86_quirks->setup_ioapic_ids()) return; #endif /* * Don't check I/O APIC IDs for xAPIC systems. They have Loading
arch/x86/kernel/numaq_32.c +7 −0 Original line number Diff line number Diff line Loading @@ -229,6 +229,12 @@ static void __init smp_read_mpc_oem(struct mp_config_oemtable *oemtable, } } static int __init numaq_setup_ioapic_ids(void) { /* so can skip it */ return 1; } static struct x86_quirks numaq_x86_quirks __initdata = { .arch_pre_time_init = numaq_pre_time_init, .arch_time_init = NULL, Loading @@ -243,6 +249,7 @@ static struct x86_quirks numaq_x86_quirks __initdata = { .mpc_oem_bus_info = mpc_oem_bus_info, .mpc_oem_pci_bus = mpc_oem_pci_bus, .smp_read_mpc_oem = smp_read_mpc_oem, .setup_ioapic_ids = numaq_setup_ioapic_ids, }; void numaq_mps_oem_check(struct mp_config_table *mpc, char *oem, Loading
include/asm-x86/setup.h +1 −0 Original line number Diff line number Diff line Loading @@ -38,6 +38,7 @@ struct x86_quirks { void (*mpc_oem_pci_bus)(struct mpc_config_bus *m); void (*smp_read_mpc_oem)(struct mp_config_oemtable *oemtable, unsigned short oemsize); int (*setup_ioapic_ids)(void); }; extern struct x86_quirks *x86_quirks; Loading