diff options
Diffstat (limited to 'arch/x86/kernel/apic/apic_numachip.c')
-rw-r--r-- | arch/x86/kernel/apic/apic_numachip.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/arch/x86/kernel/apic/apic_numachip.c b/arch/x86/kernel/apic/apic_numachip.c index 09d3d8c1cd99..d9ea5f331ac5 100644 --- a/arch/x86/kernel/apic/apic_numachip.c +++ b/arch/x86/kernel/apic/apic_numachip.c | |||
@@ -56,6 +56,12 @@ static unsigned int read_xapic_id(void) | |||
56 | return get_apic_id(apic_read(APIC_ID)); | 56 | return get_apic_id(apic_read(APIC_ID)); |
57 | } | 57 | } |
58 | 58 | ||
59 | static int numachip_apic_id_valid(int apicid) | ||
60 | { | ||
61 | /* Trust what bootloader passes in MADT */ | ||
62 | return 1; | ||
63 | } | ||
64 | |||
59 | static int numachip_apic_id_registered(void) | 65 | static int numachip_apic_id_registered(void) |
60 | { | 66 | { |
61 | return physid_isset(read_xapic_id(), phys_cpu_present_map); | 67 | return physid_isset(read_xapic_id(), phys_cpu_present_map); |
@@ -223,10 +229,11 @@ static int __init numachip_system_init(void) | |||
223 | } | 229 | } |
224 | early_initcall(numachip_system_init); | 230 | early_initcall(numachip_system_init); |
225 | 231 | ||
226 | static int numachip_acpi_madt_oem_check(char *oem_id, char *oem_table_id) | 232 | static int __cpuinit numachip_acpi_madt_oem_check(char *oem_id, char *oem_table_id) |
227 | { | 233 | { |
228 | if (!strncmp(oem_id, "NUMASC", 6)) { | 234 | if (!strncmp(oem_id, "NUMASC", 6)) { |
229 | numachip_system = 1; | 235 | numachip_system = 1; |
236 | setup_force_cpu_cap(X86_FEATURE_X2APIC); | ||
230 | return 1; | 237 | return 1; |
231 | } | 238 | } |
232 | 239 | ||
@@ -238,6 +245,7 @@ static struct apic apic_numachip __refconst = { | |||
238 | .name = "NumaConnect system", | 245 | .name = "NumaConnect system", |
239 | .probe = numachip_probe, | 246 | .probe = numachip_probe, |
240 | .acpi_madt_oem_check = numachip_acpi_madt_oem_check, | 247 | .acpi_madt_oem_check = numachip_acpi_madt_oem_check, |
248 | .apic_id_valid = numachip_apic_id_valid, | ||
241 | .apic_id_registered = numachip_apic_id_registered, | 249 | .apic_id_registered = numachip_apic_id_registered, |
242 | 250 | ||
243 | .irq_delivery_mode = dest_Fixed, | 251 | .irq_delivery_mode = dest_Fixed, |