aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/setup_32.c
diff options
context:
space:
mode:
authorYinghai Lu <yhlu.kernel@gmail.com>2008-06-17 18:41:45 -0400
committerIngo Molnar <mingo@elte.hu>2008-07-08 04:38:47 -0400
commit1c6e55032e24ff79668581a0f296c278ef7edd4e (patch)
tree5368ede51192cc0b4413ac8be9ea86bad211187c /arch/x86/kernel/setup_32.c
parent0699eae140a3eeca976df4e3b7699b1fa3f763cd (diff)
x86: use acpi_numa_init to parse on 32-bit numa
seperate SRAT finding and parsing from get_memcfg_from_srat, and let getmemcfg_from_srat only handle array from previous step. Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/setup_32.c')
-rw-r--r--arch/x86/kernel/setup_32.c36
1 files changed, 25 insertions, 11 deletions
diff --git a/arch/x86/kernel/setup_32.c b/arch/x86/kernel/setup_32.c
index 90a2b857b4a7..7e06ecd83174 100644
--- a/arch/x86/kernel/setup_32.c
+++ b/arch/x86/kernel/setup_32.c
@@ -59,6 +59,7 @@
59#include <asm/setup.h> 59#include <asm/setup.h>
60#include <asm/arch_hooks.h> 60#include <asm/arch_hooks.h>
61#include <asm/sections.h> 61#include <asm/sections.h>
62#include <asm/dmi.h>
62#include <asm/io_apic.h> 63#include <asm/io_apic.h>
63#include <asm/ist.h> 64#include <asm/ist.h>
64#include <asm/io.h> 65#include <asm/io.h>
@@ -185,6 +186,12 @@ int bootloader_type;
185static unsigned int highmem_pages = -1; 186static unsigned int highmem_pages = -1;
186 187
187/* 188/*
189 * Early DMI memory
190 */
191int dmi_alloc_index;
192char dmi_alloc_data[DMI_MAX_DATA];
193
194/*
188 * Setup options 195 * Setup options
189 */ 196 */
190struct screen_info screen_info; 197struct screen_info screen_info;
@@ -775,6 +782,24 @@ void __init setup_arch(char **cmdline_p)
775 max_pfn = e820_end_of_ram(); 782 max_pfn = e820_end_of_ram();
776 } 783 }
777 784
785 dmi_scan_machine();
786
787 io_delay_init();
788
789#ifdef CONFIG_ACPI
790 /*
791 * Parse the ACPI tables for possible boot-time SMP configuration.
792 */
793 acpi_boot_table_init();
794#endif
795
796#ifdef CONFIG_ACPI_NUMA
797 /*
798 * Parse SRAT to discover nodes.
799 */
800 acpi_numa_init();
801#endif
802
778 max_low_pfn = setup_memory(); 803 max_low_pfn = setup_memory();
779 804
780#ifdef CONFIG_ACPI_SLEEP 805#ifdef CONFIG_ACPI_SLEEP
@@ -841,10 +866,6 @@ void __init setup_arch(char **cmdline_p)
841 866
842 paravirt_post_allocator_init(); 867 paravirt_post_allocator_init();
843 868
844 dmi_scan_machine();
845
846 io_delay_init();
847
848#ifdef CONFIG_X86_SMP 869#ifdef CONFIG_X86_SMP
849 /* 870 /*
850 * setup to use the early static init tables during kernel startup 871 * setup to use the early static init tables during kernel startup
@@ -861,13 +882,6 @@ void __init setup_arch(char **cmdline_p)
861 generic_apic_probe(); 882 generic_apic_probe();
862#endif 883#endif
863 884
864#ifdef CONFIG_ACPI
865 /*
866 * Parse the ACPI tables for possible boot-time SMP configuration.
867 */
868 acpi_boot_table_init();
869#endif
870
871 early_quirks(); 885 early_quirks();
872 886
873#ifdef CONFIG_ACPI 887#ifdef CONFIG_ACPI