]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - arch/x86/kernel/setup.c
Merge branches 'irq/sparseirq', 'x86/quirks' and 'x86/reboot' into cpus4096
[mv-sheeva.git] / arch / x86 / kernel / setup.c
index 9d5674f7b6ccbfbdef7f5ad16901f9dc9dc08ad0..b9018955a04ffa2b64ed0d2896c5086b052b3e4f 100644 (file)
@@ -583,7 +583,20 @@ static int __init setup_elfcorehdr(char *arg)
 early_param("elfcorehdr", setup_elfcorehdr);
 #endif
 
-static struct x86_quirks default_x86_quirks __initdata;
+static int __init default_update_genapic(void)
+{
+#ifdef CONFIG_X86_SMP
+# if defined(CONFIG_X86_GENERICARCH) || defined(CONFIG_X86_64)
+       genapic->wakeup_cpu = wakeup_secondary_cpu_via_init;
+# endif
+#endif
+
+       return 0;
+}
+
+static struct x86_quirks default_x86_quirks __initdata = {
+       .update_genapic         = default_update_genapic,
+};
 
 struct x86_quirks *x86_quirks __initdata = &default_x86_quirks;
 
@@ -1082,7 +1095,7 @@ void __init setup_arch(char **cmdline_p)
        ioapic_init_mappings();
 
        /* need to wait for io_apic is mapped */
-       nr_irqs = probe_nr_irqs();
+       probe_nr_irqs_gsi();
 
        kvm_guest_init();