mirror of https://github.com/acidanthera/audk.git
MdePkg: Add UEFI2.5 and PI1.4 PersistentMemory definition
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Star Zeng <star.zeng@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17241 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
6e746540c3
commit
6c98edac30
|
@ -1,7 +1,7 @@
|
|||
/** @file
|
||||
Include file matches things in PI.
|
||||
|
||||
Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.<BR>
|
||||
This program and the accompanying materials are licensed and made available under
|
||||
the terms and conditions of the BSD License that accompanies this distribution.
|
||||
The full text of the license may be found at
|
||||
|
@ -11,7 +11,7 @@ THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
|||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||
|
||||
@par Revision Reference:
|
||||
PI Version 1.2
|
||||
PI Version 1.4
|
||||
|
||||
**/
|
||||
|
||||
|
@ -48,6 +48,11 @@ typedef enum {
|
|||
/// access I/O devices in the platform.
|
||||
///
|
||||
EfiGcdMemoryTypeMemoryMappedIo,
|
||||
///
|
||||
/// A memory region that is visible to the boot processor.
|
||||
/// This memory supports byte-addressable non-volatility.
|
||||
///
|
||||
EfiGcdMemoryTypePersistentMemory,
|
||||
EfiGcdMemoryTypeMaximum
|
||||
} EFI_GCD_MEMORY_TYPE;
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/** @file
|
||||
HOB related definitions in PI.
|
||||
|
||||
Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.<BR>
|
||||
This program and the accompanying materials are licensed and made available under
|
||||
the terms and conditions of the BSD License that accompanies this distribution.
|
||||
The full text of the license may be found at
|
||||
|
@ -257,6 +257,7 @@ typedef UINT32 EFI_RESOURCE_ATTRIBUTE_TYPE;
|
|||
#define EFI_RESOURCE_ATTRIBUTE_READ_PROTECTED 0x00000080
|
||||
#define EFI_RESOURCE_ATTRIBUTE_WRITE_PROTECTED 0x00000100
|
||||
#define EFI_RESOURCE_ATTRIBUTE_EXECUTION_PROTECTED 0x00000200
|
||||
#define EFI_RESOURCE_ATTRIBUTE_PERSISTENT 0x00800000
|
||||
//
|
||||
// The rest of the attributes are used to describe capabilities
|
||||
//
|
||||
|
@ -275,6 +276,7 @@ typedef UINT32 EFI_RESOURCE_ATTRIBUTE_TYPE;
|
|||
#define EFI_RESOURCE_ATTRIBUTE_READ_PROTECTABLE 0x00100000
|
||||
#define EFI_RESOURCE_ATTRIBUTE_WRITE_PROTECTABLE 0x00200000
|
||||
#define EFI_RESOURCE_ATTRIBUTE_EXECUTION_PROTECTABLE 0x00400000
|
||||
#define EFI_RESOURCE_ATTRIBUTE_PERSISTABLE 0x01000000
|
||||
|
||||
///
|
||||
/// Describes the resource properties of all fixed,
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/** @file
|
||||
This includes some definitions introduced in UEFI that will be used in both PEI and DXE phases.
|
||||
|
||||
Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.<BR>
|
||||
This program and the accompanying materials are licensed and made available under
|
||||
the terms and conditions of the BSD License that accompanies this distribution.
|
||||
The full text of the license may be found at
|
||||
|
@ -82,6 +82,11 @@ typedef enum {
|
|||
/// Address space reserved by the firmware for code that is part of the processor.
|
||||
///
|
||||
EfiPalCode,
|
||||
///
|
||||
/// A memory region that operates as EfiConventionalMemory,
|
||||
/// however it happens to also support byte-addressable non-volatility.
|
||||
///
|
||||
EfiPersistentMemory,
|
||||
EfiMaxMemoryType
|
||||
} EFI_MEMORY_TYPE;
|
||||
|
||||
|
|
|
@ -75,6 +75,11 @@ typedef enum {
|
|||
#define EFI_MEMORY_RP 0x0000000000002000ULL
|
||||
#define EFI_MEMORY_XP 0x0000000000004000ULL
|
||||
//
|
||||
// Physical memory persistence attribute.
|
||||
// The memory region supports byte-addressable non-volatility.
|
||||
//
|
||||
#define EFI_MEMORY_NV 0x0000000000008000ULL
|
||||
//
|
||||
// Runtime memory attribute
|
||||
//
|
||||
#define EFI_MEMORY_RUNTIME 0x8000000000000000ULL
|
||||
|
@ -128,6 +133,7 @@ typedef struct {
|
|||
AllocateMaxAddress or AllocateAddress.
|
||||
2) MemoryType is in the range
|
||||
3) Memory is NULL.
|
||||
4) MemoryType was EfiPersistentMemory.
|
||||
EfiMaxMemoryType..0x7FFFFFFF.
|
||||
@retval EFI_OUT_OF_RESOURCES The pages could not be allocated.
|
||||
@retval EFI_NOT_FOUND The requested pages could not be found.
|
||||
|
@ -207,6 +213,7 @@ EFI_STATUS
|
|||
@retval EFI_SUCCESS The requested number of bytes was allocated.
|
||||
@retval EFI_OUT_OF_RESOURCES The pool requested could not be allocated.
|
||||
@retval EFI_INVALID_PARAMETER PoolType was invalid or Buffer is NULL.
|
||||
PoolType was EfiPersistentMemory.
|
||||
|
||||
**/
|
||||
typedef
|
||||
|
|
Loading…
Reference in New Issue