diff options
author | Yinghai Lu <yhlu.kernel@gmail.com> | 2008-06-01 13:17:38 -0700 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-06-03 13:26:27 +0200 |
commit | 2944e16b25e7fb8b5ee0dd9dc7197a0f9e523cfd (patch) | |
tree | 0114128fdb9d2f54188a1684758e0217eadae1e5 /arch/x86/kernel/setup_64.c | |
parent | e8c27ac9191ab9e6506ae5cbe70d87ac50f8e960 (diff) | |
download | kernel_samsung_smdk4412-2944e16b25e7fb8b5ee0dd9dc7197a0f9e523cfd.zip kernel_samsung_smdk4412-2944e16b25e7fb8b5ee0dd9dc7197a0f9e523cfd.tar.gz kernel_samsung_smdk4412-2944e16b25e7fb8b5ee0dd9dc7197a0f9e523cfd.tar.bz2 |
x86: update mptable
make mptable to be consistent with acpi routing, so we could:
1. kexec kernel with acpi=off
2. work around BIOSes where acpi routing is working, but mptable is
not right, so can use kernel/kexec to start other OSes that don't have
good acpi support.
command line: update_mptable
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/setup_64.c')
-rw-r--r-- | arch/x86/kernel/setup_64.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/x86/kernel/setup_64.c b/arch/x86/kernel/setup_64.c index 89e6cca..978a0d6 100644 --- a/arch/x86/kernel/setup_64.c +++ b/arch/x86/kernel/setup_64.c @@ -56,6 +56,7 @@ #include <asm/desc.h> #include <video/edid.h> #include <asm/e820.h> +#include <asm/mpspec.h> #include <asm/dma.h> #include <asm/gart.h> #include <asm/mpspec.h> @@ -381,6 +382,9 @@ void __init setup_arch(char **cmdline_p) * we are rounding upwards: */ end_pfn = e820_end_of_ram(); + + /* pre allocte 4k for mptable mpc */ + early_reserve_e820_mpc_new(); /* update e820 for memory not covered by WB MTRRs */ mtrr_bp_init(); if (mtrr_trim_uncached_memory(end_pfn)) { |