diff options
Diffstat (limited to 'arch')
-rw-r--r-- | arch/x86/kernel/apic/apic.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/arch/x86/kernel/apic/apic.c b/arch/x86/kernel/apic/apic.c index 0e6543fafb50..07cffc1214cb 100644 --- a/arch/x86/kernel/apic/apic.c +++ b/arch/x86/kernel/apic/apic.c | |||
@@ -1587,13 +1587,6 @@ void __init init_apic_mappings(void) | |||
1587 | } else | 1587 | } else |
1588 | apic_phys = mp_lapic_addr; | 1588 | apic_phys = mp_lapic_addr; |
1589 | 1589 | ||
1590 | /* lets check if we may NOP'ify apic operations */ | ||
1591 | if (!cpu_has_apic) { | ||
1592 | pr_info("APIC: disable apic facility\n"); | ||
1593 | apic_disable(); | ||
1594 | return; | ||
1595 | } | ||
1596 | |||
1597 | /* | 1590 | /* |
1598 | * acpi lapic path already maps that address in | 1591 | * acpi lapic path already maps that address in |
1599 | * acpi_register_lapic_address() | 1592 | * acpi_register_lapic_address() |
@@ -1602,7 +1595,15 @@ void __init init_apic_mappings(void) | |||
1602 | set_fixmap_nocache(FIX_APIC_BASE, apic_phys); | 1595 | set_fixmap_nocache(FIX_APIC_BASE, apic_phys); |
1603 | 1596 | ||
1604 | apic_printk(APIC_VERBOSE, "mapped APIC to %08lx (%08lx)\n", | 1597 | apic_printk(APIC_VERBOSE, "mapped APIC to %08lx (%08lx)\n", |
1605 | APIC_BASE, apic_phys); | 1598 | APIC_BASE, apic_phys); |
1599 | |||
1600 | /* lets check if we may NOP'ify apic operations */ | ||
1601 | if (!cpu_has_apic) { | ||
1602 | pr_info("APIC: disable apic facility\n"); | ||
1603 | apic_disable(); | ||
1604 | return; | ||
1605 | } | ||
1606 | |||
1606 | /* | 1607 | /* |
1607 | * Fetch the APIC ID of the BSP in case we have a | 1608 | * Fetch the APIC ID of the BSP in case we have a |
1608 | * default configuration (or the MP table is broken). | 1609 | * default configuration (or the MP table is broken). |