MdeModulePkg DxeCore: Add OEM reserved memory type support.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17460 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
Star Zeng
2015-05-18 01:28:24 +00:00
committed by lzeng14
parent ff9331e6bd
commit 8ee25f4877
3 changed files with 23 additions and 7 deletions

View File

@@ -154,10 +154,11 @@ LookupPoolHead (
}
//
// MemoryType values in the range 0x80000000..0xFFFFFFFF are reserved for use by UEFI
// OS loaders that are provided by operating system vendors
// MemoryType values in the range 0x80000000..0xFFFFFFFF are reserved for use by UEFI
// OS loaders that are provided by operating system vendors.
// MemoryType values in the range 0x70000000..0x7FFFFFFF are reserved for OEM use.
//
if ((INT32)MemoryType < 0) {
if ((UINT32) MemoryType >= MEMORY_TYPE_OEM_RESERVED_MIN) {
for (Link = mPoolHeadList.ForwardLink; Link != &mPoolHeadList; Link = Link->ForwardLink) {
Pool = CR(Link, POOL, Link, POOL_SIGNATURE);
@@ -215,7 +216,7 @@ CoreInternalAllocatePool (
//
// If it's not a valid type, fail it
//
if ((PoolType >= EfiMaxMemoryType && PoolType <= 0x7fffffff) ||
if ((PoolType >= EfiMaxMemoryType && PoolType < MEMORY_TYPE_OEM_RESERVED_MIN) ||
(PoolType == EfiConventionalMemory) || (PoolType == EfiPersistentMemory)) {
return EFI_INVALID_PARAMETER;
}