MdePkg: Update the Label definitions of the EFI_NVDIMM_LABEL

Refer to Uefi spec 2.10 section 13.19.5, update the label definitions
for NVDIMM SPA location cookie.

Signed-off-by: Junfeng Guan <junfengx.guan@intel.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Liming Gao <gaoliming@byosoft.com.cn>
Cc: Zhiguang Liu <zhiguang.liu@intel.com>
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn>
This commit is contained in:
Junfeng Guan 2023-12-22 09:46:30 +08:00 committed by mergify[bot]
parent 682a5ed1a2
commit a4b8944e27
1 changed files with 15 additions and 1 deletions

View File

@ -124,6 +124,12 @@ typedef struct {
/// ///
#define EFI_NVDIMM_LABEL_FLAGS_UPDATING 0x00000008 #define EFI_NVDIMM_LABEL_FLAGS_UPDATING 0x00000008
///
/// When set, the SPALocationCookie in the namespace label is valid and should match the
/// current value in the NFIT SPA Range Structure.
///
#define EFI_NVDIMM_LABEL_FLAGS_SPACOOKIE_BOUND 0x00000010
typedef struct { typedef struct {
/// ///
/// Unique Label Identifier UUID per RFC 4122. /// Unique Label Identifier UUID per RFC 4122.
@ -198,10 +204,18 @@ typedef struct {
/// ///
EFI_GUID AddressAbstractionGuid; EFI_GUID AddressAbstractionGuid;
///
/// When creating the label, this value is set to the value from the NFIT SPA Range Structure if the
/// SPALocationCookie flag (bit 2) is set. If EFI_NVDIMM_LABEL_FLAGS_SPACOOKIE_BOUND is set, the SPALocationCookie
/// value stored in the namespace label should match the current value in the NFIT SPA Range Structure.
/// Otherwise, the data may not be read correctly.
///
UINT64 SPALocationCookie;
/// ///
/// Shall be 0. /// Shall be 0.
/// ///
UINT8 Reserved1[88]; UINT8 Reserved1[80];
/// ///
/// 64-bit Fletcher64 checksum of all fields in this Label. /// 64-bit Fletcher64 checksum of all fields in this Label.