aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/setup.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2010-04-07 14:02:23 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2010-04-07 14:02:23 -0400
commitfb1ae635772d679eb312fa447290fc02cd0e4cf1 (patch)
tree45733f9820da1190cd58bfff080edbb02af961a8 /arch/x86/kernel/setup.c
parentaddb2d6c13993060ae75f5005815b19dd2abdd64 (diff)
parent472a474c6630efd195d3738339fd1bdc8aa3b1aa (diff)
Merge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-tip
* 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-tip: x86: Fix double enable_IR_x2apic() call on SMP kernel on !SMP boards x86: Increase CONFIG_NODES_SHIFT max to 10 ibft, x86: Change reserve_ibft_region() to find_ibft_region() x86, hpet: Fix bug in RTC emulation x86, hpet: Erratum workaround for read after write of HPET comparator bootmem, x86: Fix 32bit numa system without RAM on node 0 nobootmem, x86: Fix 32bit numa system without RAM on node 0 x86: Handle overlapping mptables x86: Make e820_remove_range to handle all covered case x86-32, resume: do a global tlb flush in S4 resume
Diffstat (limited to 'arch/x86/kernel/setup.c')
-rw-r--r--arch/x86/kernel/setup.c14
1 files changed, 12 insertions, 2 deletions
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
index 9570541caf7c..c4851eff57b3 100644
--- a/arch/x86/kernel/setup.c
+++ b/arch/x86/kernel/setup.c
@@ -607,6 +607,16 @@ static int __init setup_elfcorehdr(char *arg)
607early_param("elfcorehdr", setup_elfcorehdr); 607early_param("elfcorehdr", setup_elfcorehdr);
608#endif 608#endif
609 609
610static __init void reserve_ibft_region(void)
611{
612 unsigned long addr, size = 0;
613
614 addr = find_ibft_region(&size);
615
616 if (size)
617 reserve_early_overlap_ok(addr, addr + size, "ibft");
618}
619
610#ifdef CONFIG_X86_RESERVE_LOW_64K 620#ifdef CONFIG_X86_RESERVE_LOW_64K
611static int __init dmi_low_memory_corruption(const struct dmi_system_id *d) 621static int __init dmi_low_memory_corruption(const struct dmi_system_id *d)
612{ 622{
@@ -909,6 +919,8 @@ void __init setup_arch(char **cmdline_p)
909 */ 919 */
910 find_smp_config(); 920 find_smp_config();
911 921
922 reserve_ibft_region();
923
912 reserve_trampoline_memory(); 924 reserve_trampoline_memory();
913 925
914#ifdef CONFIG_ACPI_SLEEP 926#ifdef CONFIG_ACPI_SLEEP
@@ -976,8 +988,6 @@ void __init setup_arch(char **cmdline_p)
976 988
977 dma32_reserve_bootmem(); 989 dma32_reserve_bootmem();
978 990
979 reserve_ibft_region();
980
981#ifdef CONFIG_KVM_CLOCK 991#ifdef CONFIG_KVM_CLOCK
982 kvmclock_init(); 992 kvmclock_init();
983#endif 993#endif