mirror of https://github.com/acidanthera/audk.git
MdePkg/ProcessorBind: add defines for page allocation granularity
The UEFI spec differs between architectures in the minimum alignment and granularity of page allocations that are visible to the OS as EFI_MEMORY_RUNTIME regions. So define macros that carry these values to the respective ProcessorBind.h header files. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
This commit is contained in:
parent
627dcba352
commit
08855193ca
|
@ -104,6 +104,12 @@ typedef INT64 INTN;
|
|||
///
|
||||
#define CPU_STACK_ALIGNMENT 16
|
||||
|
||||
///
|
||||
/// Page allocation granularity for AARCH64
|
||||
///
|
||||
#define DEFAULT_PAGE_ALLOCATION_GRANULARITY (0x1000)
|
||||
#define RUNTIME_PAGE_ALLOCATION_GRANULARITY (0x10000)
|
||||
|
||||
//
|
||||
// Modifier to ensure that all protocol member functions and EFI intrinsics
|
||||
// use the correct C calling convention. All protocol member functions and
|
||||
|
|
|
@ -110,6 +110,12 @@ typedef INT32 INTN;
|
|||
///
|
||||
#define CPU_STACK_ALIGNMENT sizeof(UINT64)
|
||||
|
||||
///
|
||||
/// Page allocation granularity for ARM
|
||||
///
|
||||
#define DEFAULT_PAGE_ALLOCATION_GRANULARITY (0x1000)
|
||||
#define RUNTIME_PAGE_ALLOCATION_GRANULARITY (0x1000)
|
||||
|
||||
//
|
||||
// Modifier to ensure that all protocol member functions and EFI intrinsics
|
||||
// use the correct C calling convention. All protocol member functions and
|
||||
|
|
|
@ -114,6 +114,12 @@ typedef unsigned long UINTN;
|
|||
///
|
||||
#define CPU_STACK_ALIGNMENT sizeof(UINTN)
|
||||
|
||||
///
|
||||
/// Page allocation granularity for EBC
|
||||
///
|
||||
#define DEFAULT_PAGE_ALLOCATION_GRANULARITY (0x1000)
|
||||
#define RUNTIME_PAGE_ALLOCATION_GRANULARITY (0x1000)
|
||||
|
||||
///
|
||||
/// Modifier to ensure that all protocol member functions and EFI intrinsics
|
||||
/// use the correct C calling convention. All protocol member functions and
|
||||
|
|
|
@ -257,6 +257,12 @@ typedef INT32 INTN;
|
|||
///
|
||||
#define CPU_STACK_ALIGNMENT sizeof(UINTN)
|
||||
|
||||
///
|
||||
/// Page allocation granularity for IA-32.
|
||||
///
|
||||
#define DEFAULT_PAGE_ALLOCATION_GRANULARITY (0x1000)
|
||||
#define RUNTIME_PAGE_ALLOCATION_GRANULARITY (0x1000)
|
||||
|
||||
//
|
||||
// Modifier to ensure that all protocol member functions and EFI intrinsics
|
||||
// use the correct C calling convention. All protocol member functions and
|
||||
|
|
|
@ -248,6 +248,12 @@ typedef INT64 INTN;
|
|||
///
|
||||
#define CPU_STACK_ALIGNMENT 16
|
||||
|
||||
///
|
||||
/// Page allocation granularity for Itanium
|
||||
///
|
||||
#define DEFAULT_PAGE_ALLOCATION_GRANULARITY (0x1000)
|
||||
#define RUNTIME_PAGE_ALLOCATION_GRANULARITY (0x2000)
|
||||
|
||||
//
|
||||
// Modifier to ensure that all protocol member functions and EFI intrinsics
|
||||
// use the correct C calling convention. All protocol member functions and
|
||||
|
|
|
@ -271,6 +271,12 @@ typedef INT64 INTN;
|
|||
///
|
||||
#define CPU_STACK_ALIGNMENT 16
|
||||
|
||||
///
|
||||
/// Page allocation granularity for x64
|
||||
///
|
||||
#define DEFAULT_PAGE_ALLOCATION_GRANULARITY (0x1000)
|
||||
#define RUNTIME_PAGE_ALLOCATION_GRANULARITY (0x1000)
|
||||
|
||||
//
|
||||
// Modifier to ensure that all protocol member functions and EFI intrinsics
|
||||
// use the correct C calling convention. All protocol member functions and
|
||||
|
|
Loading…
Reference in New Issue