Browse Source

x86: allow MPPARSE to be deselected in SMP configs

Alexey Starikovskiy 17 years ago
parent
commit
136ef671df
3 changed files with 6 additions and 2 deletions
  1. 1 1
      arch/x86/Kconfig.debug
  2. 1 1
      arch/x86/kernel/setup_32.c
  3. 4 0
      arch/x86/kernel/setup_64.c

+ 1 - 1
arch/x86/Kconfig.debug

@@ -127,7 +127,7 @@ config 4KSTACKS
 
 
 config X86_FIND_SMP_CONFIG
 config X86_FIND_SMP_CONFIG
 	def_bool y
 	def_bool y
-	depends on X86_LOCAL_APIC || X86_VOYAGER
+	depends on X86_MPPARSE || X86_VOYAGER || X86_VISWS
 	depends on X86_32
 	depends on X86_32
 
 
 config X86_MPPARSE
 config X86_MPPARSE

+ 1 - 1
arch/x86/kernel/setup_32.c

@@ -814,7 +814,7 @@ void __init setup_arch(char **cmdline_p)
 			"CONFIG_X86_GENERICARCH or CONFIG_X86_BIGSMP.\n");
 			"CONFIG_X86_GENERICARCH or CONFIG_X86_BIGSMP.\n");
 #endif
 #endif
 #endif
 #endif
-#ifdef CONFIG_X86_LOCAL_APIC
+#if defined(CONFIG_X86_MPPARSE) || defined(CONFIG_X86_VISWS)
 	if (smp_found_config)
 	if (smp_found_config)
 		get_smp_config();
 		get_smp_config();
 #endif
 #endif

+ 4 - 0
arch/x86/kernel/setup_64.c

@@ -456,10 +456,12 @@ void __init setup_arch(char **cmdline_p)
 	if (efi_enabled)
 	if (efi_enabled)
 		efi_reserve_bootmem();
 		efi_reserve_bootmem();
 
 
+#ifdef CONFIG_X86_MPPARSE
        /*
        /*
 	* Find and reserve possible boot-time SMP configuration:
 	* Find and reserve possible boot-time SMP configuration:
 	*/
 	*/
 	find_smp_config();
 	find_smp_config();
+#endif
 #ifdef CONFIG_BLK_DEV_INITRD
 #ifdef CONFIG_BLK_DEV_INITRD
 	if (boot_params.hdr.type_of_loader && boot_params.hdr.ramdisk_image) {
 	if (boot_params.hdr.type_of_loader && boot_params.hdr.ramdisk_image) {
 		unsigned long ramdisk_image = boot_params.hdr.ramdisk_image;
 		unsigned long ramdisk_image = boot_params.hdr.ramdisk_image;
@@ -502,11 +504,13 @@ void __init setup_arch(char **cmdline_p)
 
 
 	init_cpu_to_node();
 	init_cpu_to_node();
 
 
+#ifdef CONFIG_X86_MPPARSE
 	/*
 	/*
 	 * get boot-time SMP configuration:
 	 * get boot-time SMP configuration:
 	 */
 	 */
 	if (smp_found_config)
 	if (smp_found_config)
 		get_smp_config();
 		get_smp_config();
+#endif
 	init_apic_mappings();
 	init_apic_mappings();
 	ioapic_init_mappings();
 	ioapic_init_mappings();