Browse Source

MdePkg: Add NVMe boot partition header definition

REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4304

Add NVMe boot partition header definition to NVMe.h
according to NVMe spec 2.0.

Cc: Hao Wu <hao.a.wu@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>
Signed-off-by: Weipu Zhu <weipu.zhu@intel.com>
Reviewed-by: Hao A Wu <hao.a.wu@intel.com>
Acked-by: Michael D Kinney <michael.d.kinney@intel.com>
Weipu Zhu 1 year ago
parent
commit
93a21b465b
1 changed files with 13 additions and 0 deletions
  1. 13 0
      MdePkg/Include/IndustryStandard/Nvme.h

+ 13 - 0
MdePkg/Include/IndustryStandard/Nvme.h

@@ -546,6 +546,19 @@ typedef struct {
 #define NVME_RPMB_RESULT_AUTHKEY_NOT_PROGRAMMED  0x07
 #define NVME_RPMB_RESULT_INVALID_DCB             0x08
 
+//
+// Get Log Page - Boot Partition Log Header.
+// (ref. NVMe Base spec. v2.0 Figure 262).
+//
+typedef struct {
+  UINT8     LogIdentifier;   /* Log Identifier, shall be set to 15h */
+  UINT8     Rsvd1[3];
+  UINT32    Bpsz  : 15;      /* Boot Partition Size */
+  UINT32    Rsvd2 : 16;
+  UINT32    Abpid : 1;       /* Active Boot Partition ID */
+  UINT8     Rsvd3[8];
+} NVME_BOOT_PARTITION_HEADER;
+
 //
 // NvmExpress Admin Identify Cmd
 //