diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-04-07 14:02:23 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-04-07 14:02:23 -0400 |
| commit | fb1ae635772d679eb312fa447290fc02cd0e4cf1 (patch) | |
| tree | 45733f9820da1190cd58bfff080edbb02af961a8 /arch/x86/kernel/setup.c | |
| parent | addb2d6c13993060ae75f5005815b19dd2abdd64 (diff) | |
| parent | 472a474c6630efd195d3738339fd1bdc8aa3b1aa (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.c | 14 |
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) | |||
| 607 | early_param("elfcorehdr", setup_elfcorehdr); | 607 | early_param("elfcorehdr", setup_elfcorehdr); |
| 608 | #endif | 608 | #endif |
| 609 | 609 | ||
| 610 | static __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 |
| 611 | static int __init dmi_low_memory_corruption(const struct dmi_system_id *d) | 621 | static 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 |
