diff options
-rw-r--r-- | arch/x86/kernel/apic.c | 20 |
1 files changed, 8 insertions, 12 deletions
diff --git a/arch/x86/kernel/apic.c b/arch/x86/kernel/apic.c index b8616aaa168d..c03f4cc135c7 100644 --- a/arch/x86/kernel/apic.c +++ b/arch/x86/kernel/apic.c | |||
@@ -1649,32 +1649,28 @@ int __init APIC_init_uniprocessor(void) | |||
1649 | #ifdef CONFIG_X86_IO_APIC | 1649 | #ifdef CONFIG_X86_IO_APIC |
1650 | /* | 1650 | /* |
1651 | * Now enable IO-APICs, actually call clear_IO_APIC | 1651 | * Now enable IO-APICs, actually call clear_IO_APIC |
1652 | * We need clear_IO_APIC before enabling vector on BP | 1652 | * We need clear_IO_APIC before enabling error vector |
1653 | */ | 1653 | */ |
1654 | if (!skip_ioapic_setup && nr_ioapics) | 1654 | if (!skip_ioapic_setup && nr_ioapics) |
1655 | enable_IO_APIC(); | 1655 | enable_IO_APIC(); |
1656 | |||
1657 | if (!smp_found_config || skip_ioapic_setup || !nr_ioapics) | ||
1658 | localise_nmi_watchdog(); | ||
1659 | #else | ||
1660 | localise_nmi_watchdog(); | ||
1661 | #endif | 1656 | #endif |
1657 | |||
1662 | end_local_APIC_setup(); | 1658 | end_local_APIC_setup(); |
1663 | 1659 | ||
1664 | #ifdef CONFIG_X86_IO_APIC | 1660 | #ifdef CONFIG_X86_IO_APIC |
1665 | if (smp_found_config && !skip_ioapic_setup && nr_ioapics) | 1661 | if (smp_found_config && !skip_ioapic_setup && nr_ioapics) |
1666 | setup_IO_APIC(); | 1662 | setup_IO_APIC(); |
1667 | # ifdef CONFIG_X86_64 | 1663 | else { |
1668 | else | ||
1669 | nr_ioapics = 0; | 1664 | nr_ioapics = 0; |
1670 | # endif | 1665 | localise_nmi_watchdog(); |
1666 | } | ||
1667 | #else | ||
1668 | localise_nmi_watchdog(); | ||
1671 | #endif | 1669 | #endif |
1672 | 1670 | ||
1671 | setup_boot_clock(); | ||
1673 | #ifdef CONFIG_X86_64 | 1672 | #ifdef CONFIG_X86_64 |
1674 | setup_boot_APIC_clock(); | ||
1675 | check_nmi_watchdog(); | 1673 | check_nmi_watchdog(); |
1676 | #else | ||
1677 | setup_boot_clock(); | ||
1678 | #endif | 1674 | #endif |
1679 | 1675 | ||
1680 | return 0; | 1676 | return 0; |