MdePkg: UefiTcgPlatform.h: Add UEFI_VARIABLE_DATA
authorZhang, Chao B <chao.b.zhang@intel.com>
Tue, 24 Jan 2017 07:28:01 +0000 (15:28 +0800)
committerZhang, Chao B <chao.b.zhang@intel.com>
Wed, 25 Jan 2017 02:23:58 +0000 (10:23 +0800)
Add UEFI_VARIABLE_DATA according to TCG PC-Client PFP Spec 00.21.
http://www.trustedcomputinggroup.org/wp-content/uploads/PC-ClientSpecific_Platform_Profile_for_TPM_2p0_Systems_v21.pdf

Cc: Star Zeng <star.zeng@intel.com>
Cc: Yao Jiewen <jiewen.yao@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Chao Zhang <chao.b.zhang@intel.com>
Reviewed-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Yao Jiewen <jiewen.yao@intel.com>
MdePkg/Include/IndustryStandard/UefiTcgPlatform.h

index 6ce808e6c95145b2b0052644aa845a39e0d29b6a..8a3e1704afc1ad2763c281910a6e8b3bad403e9f 100644 (file)
@@ -151,6 +151,7 @@ typedef struct tdEFI_HANDOFF_TABLE_POINTERS {
 /// This structure serves as the header for measuring variables. The name of the\r
 /// variable (in Unicode format) should immediately follow, then the variable\r
 /// data.\r
 /// This structure serves as the header for measuring variables. The name of the\r
 /// variable (in Unicode format) should immediately follow, then the variable\r
 /// data.\r
+/// This is defined in TCG EFI Platform Spec for TPM1.1 or 1.2 V1.22\r
 ///\r
 typedef struct tdEFI_VARIABLE_DATA {\r
   EFI_GUID                          VariableName;\r
 ///\r
 typedef struct tdEFI_VARIABLE_DATA {\r
   EFI_GUID                          VariableName;\r
@@ -160,6 +161,22 @@ typedef struct tdEFI_VARIABLE_DATA {
   INT8                              VariableData[1];  ///< Driver or platform-specific data\r
 } EFI_VARIABLE_DATA;\r
 \r
   INT8                              VariableData[1];  ///< Driver or platform-specific data\r
 } EFI_VARIABLE_DATA;\r
 \r
+///\r
+/// UEFI_VARIABLE_DATA\r
+///\r
+/// This structure serves as the header for measuring variables. The name of the\r
+/// variable (in Unicode format) should immediately follow, then the variable\r
+/// data.\r
+/// This is defined in TCG PC Client Firmware Profile Spec 00.21\r
+///\r
+typedef struct tdUEFI_VARIABLE_DATA {\r
+  EFI_GUID                          VariableName;\r
+  UINT64                            UnicodeNameLength;\r
+  UINT64                            VariableDataLength;\r
+  CHAR16                            UnicodeName[1];\r
+  INT8                              VariableData[1];  ///< Driver or platform-specific data\r
+} UEFI_VARIABLE_DATA;\r
+\r
 //\r
 // For TrEE1.0 compatibility\r
 //\r
 //\r
 // For TrEE1.0 compatibility\r
 //\r