summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArd Biesheuvel <ard.biesheuvel@linaro.org>2015-03-06 02:58:01 +0000
committerlgao4 <lgao4@Edk2>2015-03-06 02:58:01 +0000
commit15290510dbb2489c1352a9e5ec457c9b45bb96b8 (patch)
tree8811812bb3fa7e2152a505497c7d6317c567d0bf
parent6860b92c847caff16b8cbc58ca31e3dbf9c5e5cc (diff)
MdeModulePkg: use 64 KB granularity for runtime allocations on AArch64
On AArch64, the OS can choose to run with a page size of 64 KB, making it cumbersome to deal with UEFI reserved memory regions whose boundaries are not 64 KB aligned. So increase the allocation granularity for runtime regions to 64 KB. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17016 6f19259b-4bc3-4df7-8a09-765794883524
-rw-r--r--MdeModulePkg/Core/Dxe/Mem/Imem.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/MdeModulePkg/Core/Dxe/Mem/Imem.h b/MdeModulePkg/Core/Dxe/Mem/Imem.h
index d09ff3c52..16077d825 100644
--- a/MdeModulePkg/Core/Dxe/Mem/Imem.h
+++ b/MdeModulePkg/Core/Dxe/Mem/Imem.h
@@ -22,6 +22,15 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#define EFI_ACPI_RUNTIME_PAGE_ALLOCATION_ALIGNMENT (EFI_PAGE_SIZE * 2)
#define DEFAULT_PAGE_ALLOCATION (EFI_PAGE_SIZE * 2)
+#elif defined (MDE_CPU_AARCH64)
+///
+/// 64-bit ARM systems allow the OS to execute with 64 KB page size,
+/// so for improved interoperability with the firmware, align the
+/// runtime regions to 64 KB as well
+///
+#define EFI_ACPI_RUNTIME_PAGE_ALLOCATION_ALIGNMENT (SIZE_64KB)
+#define DEFAULT_PAGE_ALLOCATION (EFI_PAGE_SIZE)
+
#else
///
/// For genric EFI machines make the default allocations 4K aligned