]> git.proxmox.com Git - mirror_edk2.git/blame - SecurityPkg/Tcg/TrEEConfig/TrEEConfigNvData.h
SecurityPkg: Tcg2Dxe: Report correct FinalEventLog size
[mirror_edk2.git] / SecurityPkg / Tcg / TrEEConfig / TrEEConfigNvData.h
CommitLineData
c1d93242
JY
1/** @file\r
2 Header file for NV data structure definition.\r
3\r
4Copyright (c) 2013, Intel Corporation. All rights reserved.<BR>\r
5This program and the accompanying materials \r
6are licensed and made available under the terms and conditions of the BSD License \r
7which accompanies this distribution. The full text of the license may be found at \r
8http://opensource.org/licenses/bsd-license.php\r
9\r
10THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
11WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
12\r
13**/\r
14\r
15#ifndef __TREE_CONFIG_NV_DATA_H__\r
16#define __TREE_CONFIG_NV_DATA_H__\r
17\r
18#include <Guid/HiiPlatformSetupFormset.h>\r
19#include <Guid/TrEEPhysicalPresenceData.h>\r
20#include <Guid/TrEEConfigHii.h>\r
21\r
22#define TREE_CONFIGURATION_VARSTORE_ID 0x0001\r
23#define TREE_CONFIGURATION_FORM_ID 0x0001\r
24\r
25#define KEY_TPM_DEVICE 0x2000\r
5437d457 26#define KEY_TPM2_OPERATION 0x2001\r
c1d93242
JY
27\r
28#define TPM_DEVICE_NULL 0\r
29#define TPM_DEVICE_1_2 1\r
30#define TPM_DEVICE_2_0_DTPM 2\r
5437d457 31#define TPM_DEVICE_MIN TPM_DEVICE_1_2\r
c1d93242
JY
32#define TPM_DEVICE_MAX TPM_DEVICE_2_0_DTPM\r
33#define TPM_DEVICE_DEFAULT TPM_DEVICE_1_2\r
34\r
35//\r
5437d457 36// Nv Data structure referenced by IFR, TPM device user desired\r
c1d93242
JY
37//\r
38typedef struct {\r
39 UINT8 TpmDevice;\r
c1d93242
JY
40} TREE_CONFIGURATION;\r
41\r
5437d457
JY
42//\r
43// Variable saved for S3, TPM detected, only valid in S3 path.\r
44// This variable is ReadOnly.\r
45//\r
46typedef struct {\r
47 UINT8 TpmDeviceDetected;\r
48} TREE_DEVICE_DETECTION;\r
49\r
c1d93242 50#define TREE_STORAGE_NAME L"TREE_CONFIGURATION"\r
5437d457 51#define TREE_DEVICE_DETECTION_NAME L"TREE_DEVICE_DETECTION"\r
c1d93242
JY
52\r
53#define TPM_INSTANCE_ID_LIST { \\r
54 {TPM_DEVICE_INTERFACE_NONE, TPM_DEVICE_NULL}, \\r
55 {TPM_DEVICE_INTERFACE_TPM12, TPM_DEVICE_1_2}, \\r
56 {TPM_DEVICE_INTERFACE_TPM20_DTPM, TPM_DEVICE_2_0_DTPM}, \\r
57}\r
58\r
59//\r
60// BUGBUG: In order to pass VfrCompiler, we have to redefine GUID here.\r
61//\r
62#ifndef __BASE_H__\r
63typedef struct {\r
64 UINT32 Data1;\r
65 UINT16 Data2;\r
66 UINT16 Data3;\r
67 UINT8 Data4[8];\r
68} GUID;\r
69#endif\r
70\r
71typedef struct {\r
72 GUID TpmInstanceGuid;\r
73 UINT8 TpmDevice;\r
74} TPM_INSTANCE_ID;\r
75\r
76#endif\r