diff options
author | Thomas Renninger <trenn@suse.de> | 2012-10-01 00:23:53 +0200 |
---|---|---|
committer | H. Peter Anvin <hpa@linux.intel.com> | 2012-10-01 03:03:13 +0200 |
commit | 8e30524dcc0d0ac1a18a5cee482b9d9cde3cb332 (patch) | |
tree | ad5e19dfd62d9ebf0e4ce61b6947e53df1bc4d00 /arch/x86/kernel/acpi/boot.c | |
parent | lib: Add early cpio decoder (diff) | |
download | linux-8e30524dcc0d0ac1a18a5cee482b9d9cde3cb332.tar.xz linux-8e30524dcc0d0ac1a18a5cee482b9d9cde3cb332.zip |
x86, acpi: Introduce x86 arch specific arch_reserve_mem_area() for e820 handling
This is needed for ACPI table overriding via initrd. Beside reserving
memblocks, X86 also requires to flag the memory area to E820_RESERVED or
E820_ACPI in the e820 mappings to be able to io(re)map it later.
Signed-off-by: Thomas Renninger <trenn@suse.de>
Link: http://lkml.kernel.org/r/1349043837-22659-3-git-send-email-trenn@suse.de
Cc: Len Brown <lenb@kernel.org>
Cc: Robert Moore <robert.moore@intel.com>
Cc: Yinghai Lu <yinghai@kernel.org>
Cc: Eric Piel <eric.piel@tremplin-utc.net>
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Diffstat (limited to 'arch/x86/kernel/acpi/boot.c')
-rw-r--r-- | arch/x86/kernel/acpi/boot.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/x86/kernel/acpi/boot.c b/arch/x86/kernel/acpi/boot.c index b2297e58c6ed..6b75777c0a8d 100644 --- a/arch/x86/kernel/acpi/boot.c +++ b/arch/x86/kernel/acpi/boot.c @@ -1700,3 +1700,9 @@ int __acpi_release_global_lock(unsigned int *lock) } while (unlikely (val != old)); return old & 0x1; } + +void __init arch_reserve_mem_area(acpi_physical_address addr, size_t size) +{ + e820_add_region(addr, size, E820_ACPI); + update_e820(); +} |