From a4b8944e27f497b0f4dbfb6aa412decab2874b58 Mon Sep 17 00:00:00 2001 From: Junfeng Guan Date: Fri, 22 Dec 2023 09:46:30 +0800 Subject: 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 Cc: Michael D Kinney Cc: Liming Gao Cc: Zhiguang Liu Reviewed-by: Liming Gao --- MdePkg/Include/Protocol/NvdimmLabel.h | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/MdePkg/Include/Protocol/NvdimmLabel.h b/MdePkg/Include/Protocol/NvdimmLabel.h index 59416f11cb..0ba1003243 100644 --- a/MdePkg/Include/Protocol/NvdimmLabel.h +++ b/MdePkg/Include/Protocol/NvdimmLabel.h @@ -124,6 +124,12 @@ typedef struct { /// #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 { /// /// Unique Label Identifier UUID per RFC 4122. @@ -198,10 +204,18 @@ typedef struct { /// 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. /// - UINT8 Reserved1[88]; + UINT8 Reserved1[80]; /// /// 64-bit Fletcher64 checksum of all fields in this Label. -- cgit v1.2.3