]> git.proxmox.com Git - mirror_edk2.git/blobdiff - SecurityPkg/Tcg/Tcg2Config/Tcg2ConfigNvData.h
OvmfPkg/Csm/LegacyBiosDxe: Update to make it build for OVMF
[mirror_edk2.git] / SecurityPkg / Tcg / Tcg2Config / Tcg2ConfigNvData.h
index 20eaa508fad238c19c35bffff63539a053174892..d0a124684f011682ab28c2de2c9ccc3c84e5fa71 100644 (file)
@@ -1,14 +1,8 @@
 /** @file\r
   Header file for NV data structure definition.\r
 \r
-Copyright (c) 2015 - 2016, Intel Corporation. All rights reserved.<BR>\r
-This program and the accompanying materials \r
-are licensed and made available under the terms and conditions of the BSD License \r
-which accompanies this distribution.  The full text of the license may be found at \r
-http://opensource.org/licenses/bsd-license.php\r
-\r
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+Copyright (c) 2015 - 2018, Intel Corporation. All rights reserved.<BR>\r
+SPDX-License-Identifier: BSD-2-Clause-Patent\r
 \r
 **/\r
 \r
@@ -29,7 +23,8 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #define EFI_TCG2_EVENT_LOG_FORMAT_ALL           (EFI_TCG2_EVENT_LOG_FORMAT_TCG_1_2 | EFI_TCG2_EVENT_LOG_FORMAT_TCG_2)\r
 \r
 #define TCG2_CONFIGURATION_VARSTORE_ID  0x0001\r
-#define TCG2_CONFIGURATION_INFO_VARSTORE_ID  0x0002\r
+#define TCG2_CONFIGURATION_INFO_VARSTORE_ID     0x0002\r
+#define TCG2_VERSION_VARSTORE_ID        0x0003\r
 #define TCG2_CONFIGURATION_FORM_ID      0x0001\r
 \r
 #define KEY_TPM_DEVICE                                 0x2000\r
@@ -41,6 +36,8 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #define KEY_TPM2_PCR_BANKS_REQUEST_3            0x2006\r
 #define KEY_TPM2_PCR_BANKS_REQUEST_4            0x2007\r
 #define KEY_TPM_DEVICE_INTERFACE                       0x2008\r
+#define KEY_TCG2_PPI_VERSION                    0x2009\r
+#define KEY_TPM2_ACPI_REVISION                  0x200A\r
 \r
 #define TPM_DEVICE_NULL           0\r
 #define TPM_DEVICE_1_2            1\r
@@ -49,6 +46,9 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #define TPM_DEVICE_MAX            TPM_DEVICE_2_0_DTPM\r
 #define TPM_DEVICE_DEFAULT        TPM_DEVICE_1_2\r
 \r
+#define TPM2_ACPI_REVISION_3       3\r
+#define TPM2_ACPI_REVISION_4       4\r
+\r
 #define TPM_DEVICE_INTERFACE_TIS       0\r
 #define TPM_DEVICE_INTERFACE_PTP_FIFO  1\r
 #define TPM_DEVICE_INTERFACE_PTP_CRB   2\r
@@ -58,6 +58,9 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #define TCG2_PROTOCOL_VERSION_DEFAULT        0x0001\r
 #define EFI_TCG2_EVENT_LOG_FORMAT_DEFAULT    EFI_TCG2_EVENT_LOG_FORMAT_TCG_1_2\r
 \r
+#define TCG2_PPI_VERSION_1_2                    0x322E31  // "1.2"\r
+#define TCG2_PPI_VERSION_1_3                    0x332E31  // "1.3"\r
+\r
 //\r
 // Nv Data structure referenced by IFR, TPM device user desired\r
 //\r
@@ -65,6 +68,11 @@ typedef struct {
   UINT8   TpmDevice;\r
 } TCG2_CONFIGURATION;\r
 \r
+typedef struct {\r
+  UINT64  PpiVersion;\r
+  UINT8   Tpm2AcpiTableRev;\r
+} TCG2_VERSION;\r
+\r
 typedef struct {\r
   BOOLEAN  Sha1Supported;\r
   BOOLEAN  Sha256Supported;\r
@@ -87,6 +95,7 @@ typedef struct {
 #define TCG2_STORAGE_NAME           L"TCG2_CONFIGURATION"\r
 #define TCG2_STORAGE_INFO_NAME      L"TCG2_CONFIGURATION_INFO"\r
 #define TCG2_DEVICE_DETECTION_NAME  L"TCG2_DEVICE_DETECTION"\r
+#define TCG2_VERSION_NAME           L"TCG2_VERSION"\r
 \r
 #define TPM_INSTANCE_ID_LIST  { \\r
   {TPM_DEVICE_INTERFACE_NONE,           TPM_DEVICE_NULL},      \\r