]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/commitdiff
x86: don't treat bigsmp as non-standard
authorYinghai Lu <yinghai@kernel.org>
Thu, 29 Jan 2009 22:19:22 +0000 (14:19 -0800)
committerIngo Molnar <mingo@elte.hu>
Fri, 30 Jan 2009 14:24:37 +0000 (15:24 +0100)
just like 64 bit switch from flat logical APIC messages to
flat physical mode automatically.

Signed-off-by: Yinghai Lu <yinghai@kernel.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
arch/x86/Kconfig
arch/x86/kernel/acpi/boot.c
arch/x86/kernel/mpparse.c
arch/x86/kernel/setup.c
arch/x86/kernel/smpboot.c

index afaf2cb7c1ac4e0b700a8ec2df0489fb3bdde2c2..c6e567bb64915f9b5702441660f1de9ccc6e71c9 100644 (file)
@@ -262,6 +262,12 @@ config X86_MPPARSE
          For old smp systems that do not have proper acpi support. Newer systems
          (esp with 64bit cpus) with acpi support, MADT and DSDT will override it
 
+config X86_BIGSMP
+       bool "Support for big SMP systems with more than 8 CPUs"
+       depends on X86_32 && SMP
+       help
+         This option is needed for the systems that have more than 8 CPUs
+
 config X86_NON_STANDARD
        bool "Support for non-standard x86 platforms"
        help
@@ -338,13 +344,6 @@ config X86_32_NON_STANDARD
          if you select them all, kernel will probe it one by one. and will
          fallback to default.
 
-config X86_BIGSMP
-       bool "Support for big SMP systems with more than 8 CPUs"
-       depends on X86_32_NON_STANDARD
-       help
-         This option is needed for the systems that have more than 8 CPUs
-         and if the system is not of any sub-arch type above.
-
 config X86_NUMAQ
        bool "NUMAQ (IBM/Sequent)"
        depends on X86_32_NON_STANDARD
@@ -366,7 +365,7 @@ config X86_SUMMIT
 
 config X86_ES7000
        bool "Support for Unisys ES7000 IA32 series"
-       depends on X86_32_NON_STANDARD
+       depends on X86_32_NON_STANDARD && X86_BIGSMP
        help
          Support for Unisys ES7000 systems.  Say 'Y' here if this kernel is
          supposed to run on an IA32-based Unisys ES7000 system.
index 7352c60f29db285d32e025828f0f2a89a3038c21..3efa996b036c005168e90dae302ad420e0247027 100644 (file)
@@ -1335,7 +1335,7 @@ static void __init acpi_process_madt(void)
                if (!error) {
                        acpi_lapic = 1;
 
-#ifdef CONFIG_X86_32_NON_STANDARD
+#ifdef CONFIG_X86_BIGSMP
                        generic_bigsmp_probe();
 #endif
                        /*
index 89aaced51bd34ca557e33d7720f3892afda39e6f..b46ca7d31febeb4ae2625202ca96137dfcba0de1 100644 (file)
@@ -372,8 +372,8 @@ static int __init smp_read_mpc(struct mpc_table *mpc, unsigned early)
                        (*x86_quirks->mpc_record)++;
        }
 
-#ifdef CONFIG_X86_32_NON_STANDARD
-       generic_bigsmp_probe();
+#ifdef CONFIG_X86_BIGSMP
+       generic_bigsmp_probe();
 #endif
 
        if (apic->setup_apic_routing)
index f64e1a487c9e8f823e45bc60d925bdb890824d85..df64afff5806dc98c5bafaec97ace2b90083b69c 100644 (file)
@@ -936,7 +936,7 @@ void __init setup_arch(char **cmdline_p)
        map_vsyscall();
 #endif
 
-#ifdef CONFIG_X86_32_NON_STANDARD
+#if defined(CONFIG_X86_32_NON_STANDARD) || defined(CONFIG_X86_BIGSMP)
        generic_apic_probe();
 #endif
 
index 4c3cff574947203ac58076cc9b8ada088d1114a4..1268a862abb7731ed9ed4b12d58be03eeb9daf28 100644 (file)
@@ -1007,7 +1007,7 @@ static int __init smp_sanity_check(unsigned max_cpus)
 
                printk(KERN_WARNING
                       "More than 8 CPUs detected - skipping them.\n"
-                      "Use CONFIG_X86_32_NON_STANDARD and CONFIG_X86_BIGSMP.\n");
+                      "Use CONFIG_X86_BIGSMP.\n");
 
                nr = 0;
                for_each_present_cpu(cpu) {