aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYinghai Lu <yinghai@kernel.org>2009-02-16 03:00:50 -0500
committerIngo Molnar <mingo@elte.hu>2009-02-16 03:37:04 -0500
commit98c061b6cf2e7a1010286a7a4f672c4623e1b3e0 (patch)
tree6ae67c63f86e7b3e46e5bcd516a93c7b9b38762a
parent3bd25d0fa3ed588a6735b815cb0c146c23888ace (diff)
x86: make APIC_init_uniprocessor() more like smp_prepare_cpus()
Impact: cleanup 1. move localise_nmi_watchdog() later 2. change setup_boot_APIC_clock() to setup_boot_clock() for 64-bit Signed-off-by: Yinghai Lu <yinghai@kernel.org> Cc: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Ingo Molnar <mingo@elte.hu>
-rw-r--r--arch/x86/kernel/apic.c20
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;