Revision: 17241
http://sourceforge.net/p/edk2/code/17241
Author: lgao4
Date: 2015-04-29 01:36:16 +0000 (Wed, 29 Apr 2015)
Log Message:
-----------
MdePkg: Add UEFI2.5 and PI1.4 PersistentMemory definition
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Liming Gao <[email protected]>
Reviewed-by: Star Zeng <[email protected]>
Modified Paths:
--------------
trunk/edk2/MdePkg/Include/Pi/PiDxeCis.h
trunk/edk2/MdePkg/Include/Pi/PiHob.h
trunk/edk2/MdePkg/Include/Uefi/UefiMultiPhase.h
trunk/edk2/MdePkg/Include/Uefi/UefiSpec.h
Modified: trunk/edk2/MdePkg/Include/Pi/PiDxeCis.h
===================================================================
--- trunk/edk2/MdePkg/Include/Pi/PiDxeCis.h 2015-04-28 08:13:39 UTC (rev
17240)
+++ trunk/edk2/MdePkg/Include/Pi/PiDxeCis.h 2015-04-29 01:36:16 UTC (rev
17241)
@@ -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 @@
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 @@
/// 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;
Modified: trunk/edk2/MdePkg/Include/Pi/PiHob.h
===================================================================
--- trunk/edk2/MdePkg/Include/Pi/PiHob.h 2015-04-28 08:13:39 UTC (rev
17240)
+++ trunk/edk2/MdePkg/Include/Pi/PiHob.h 2015-04-29 01:36:16 UTC (rev
17241)
@@ -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 @@
#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 @@
#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,
Modified: trunk/edk2/MdePkg/Include/Uefi/UefiMultiPhase.h
===================================================================
--- trunk/edk2/MdePkg/Include/Uefi/UefiMultiPhase.h 2015-04-28 08:13:39 UTC
(rev 17240)
+++ trunk/edk2/MdePkg/Include/Uefi/UefiMultiPhase.h 2015-04-29 01:36:16 UTC
(rev 17241)
@@ -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 @@
/// 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;
Modified: trunk/edk2/MdePkg/Include/Uefi/UefiSpec.h
===================================================================
--- trunk/edk2/MdePkg/Include/Uefi/UefiSpec.h 2015-04-28 08:13:39 UTC (rev
17240)
+++ trunk/edk2/MdePkg/Include/Uefi/UefiSpec.h 2015-04-29 01:36:16 UTC (rev
17241)
@@ -75,6 +75,11 @@
#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 @@
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 @@
@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
------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
edk2-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-commits