Merge to kernel-2.6.20-1.2949.fc6.vs2.2.0.1
[linux-2.6.git] / arch / i386 / mach-generic / bigsmp.c
index a22da86..8a210fa 100644 (file)
@@ -3,9 +3,9 @@
  * Drives the local APIC in "clustered mode".
  */
 #define APIC_DEFINITION 1
-#include <linux/config.h>
 #include <linux/threads.h>
 #include <linux/cpumask.h>
+#include <asm/smp.h>
 #include <asm/mpspec.h>
 #include <asm/genapic.h>
 #include <asm/fixmap.h>
 
 static int dmi_bigsmp; /* can be set by dmi scanners */
 
-static __init int hp_ht_bigsmp(struct dmi_system_id *d) 
-{ 
+static __init int hp_ht_bigsmp(struct dmi_system_id *d)
+{
 #ifdef CONFIG_X86_GENERICARCH
        printk(KERN_NOTICE "%s detected: force use of apic=bigsmp\n", d->ident);
        dmi_bigsmp = 1;
 #endif
        return 0;
-} 
+}
 
 
 static struct dmi_system_id __initdata bigsmp_dmi_table[] = {
@@ -41,13 +41,16 @@ static struct dmi_system_id __initdata bigsmp_dmi_table[] = {
                DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
                DMI_MATCH(DMI_BIOS_VERSION, "P47-"),
         }},
-        { }     
+        { }
 };
 
 
-static __init int probe_bigsmp(void)
+static int probe_bigsmp(void)
 { 
-       dmi_check_system(bigsmp_dmi_table);
+       if (def_to_bigsmp)
+               dmi_bigsmp = 1;
+       else
+               dmi_check_system(bigsmp_dmi_table);
        return dmi_bigsmp; 
 }