]> git.proxmox.com Git - mirror_edk2.git/blame - SecurityPkg/Tcg/Tcg2Config/Tcg2Config.vfr
Add TPM2 support defined in trusted computing group.
[mirror_edk2.git] / SecurityPkg / Tcg / Tcg2Config / Tcg2Config.vfr
CommitLineData
1abfa4ce
JY
1/** @file\r
2 VFR file used by the TCG2 configuration component.\r
3\r
4Copyright (c) 2015, 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#include "Tcg2ConfigNvData.h"\r
16\r
17formset\r
18 guid = TCG2_CONFIG_FORM_SET_GUID,\r
19 title = STRING_TOKEN(STR_TCG2_TITLE),\r
20 help = STRING_TOKEN(STR_TCG2_HELP),\r
21 classguid = EFI_HII_PLATFORM_SETUP_FORMSET_GUID,\r
22\r
23 efivarstore TCG2_CONFIGURATION,\r
24 varid = TCG2_CONFIGURATION_VARSTORE_ID,\r
25 attribute = 0x03, // EFI variable attribures EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_NON_VOLATILE\r
26 name = TCG2_CONFIGURATION,\r
27 guid = TCG2_CONFIG_FORM_SET_GUID;\r
28\r
29 form formid = TCG2_CONFIGURATION_FORM_ID,\r
30 title = STRING_TOKEN(STR_TCG2_TITLE);\r
31\r
32 subtitle text = STRING_TOKEN(STR_NULL);\r
33\r
34 text\r
35 help = STRING_TOKEN(STR_TCG2_DEVICE_STATE_HELP),\r
36 text = STRING_TOKEN(STR_TCG2_DEVICE_STATE_PROMPT),\r
37 text = STRING_TOKEN(STR_TCG2_DEVICE_STATE_CONTENT);\r
38\r
39 oneof varid = TCG2_CONFIGURATION.TpmDevice,\r
40 questionid = KEY_TPM_DEVICE,\r
41 prompt = STRING_TOKEN(STR_TCG2_DEVICE_PROMPT),\r
42 help = STRING_TOKEN(STR_TCG2_DEVICE_HELP),\r
43 flags = INTERACTIVE,\r
44 option text = STRING_TOKEN(STR_TCG2_TPM_1_2), value = TPM_DEVICE_1_2, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;\r
45 option text = STRING_TOKEN(STR_TCG2_TPM_2_0_DTPM), value = TPM_DEVICE_2_0_DTPM, flags = RESET_REQUIRED;\r
46 endoneof;\r
47\r
48 subtitle text = STRING_TOKEN(STR_NULL);\r
49\r
50 suppressif ideqvallist TCG2_CONFIGURATION.TpmDevice == TPM_DEVICE_NULL TPM_DEVICE_1_2;\r
51 text\r
52 help = STRING_TOKEN(STR_TPM2_ACTIVE_HASH_ALGO_HELP),\r
53 text = STRING_TOKEN(STR_TPM2_ACTIVE_HASH_ALGO),\r
54 text = STRING_TOKEN(STR_TPM2_ACTIVE_HASH_ALGO_CONTENT);\r
55 text\r
56 help = STRING_TOKEN(STR_TPM2_SUPPORTED_HASH_ALGO_HELP),\r
57 text = STRING_TOKEN(STR_TPM2_SUPPORTED_HASH_ALGO),\r
58 text = STRING_TOKEN(STR_TPM2_SUPPORTED_HASH_ALGO_CONTENT);\r
59 text\r
60 help = STRING_TOKEN(STR_BIOS_HASH_ALGO_HELP),\r
61 text = STRING_TOKEN(STR_BIOS_HASH_ALGO),\r
62 text = STRING_TOKEN(STR_BIOS_HASH_ALGO_CONTENT);\r
63\r
64 subtitle text = STRING_TOKEN(STR_NULL);\r
65 subtitle text = STRING_TOKEN(STR_TCG2_PP_OPERATION);\r
66\r
67 oneof name = Tpm2Operation,\r
68 questionid = KEY_TPM2_OPERATION,\r
69 prompt = STRING_TOKEN(STR_TCG2_OPERATION),\r
70 help = STRING_TOKEN(STR_TCG2_OPERATION_HELP),\r
71 flags = INTERACTIVE | NUMERIC_SIZE_1,\r
72 option text = STRING_TOKEN(STR_TCG2_NO_ACTION), value = TCG2_PHYSICAL_PRESENCE_NO_ACTION, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;\r
73 option text = STRING_TOKEN(STR_TCG2_ENABLE), value = TCG2_PHYSICAL_PRESENCE_ENABLE, flags = RESET_REQUIRED;\r
74 option text = STRING_TOKEN(STR_TCG2_DISABLE), value = TCG2_PHYSICAL_PRESENCE_DISABLE, flags = RESET_REQUIRED;\r
75 option text = STRING_TOKEN(STR_TCG2_CLEAR), value = TCG2_PHYSICAL_PRESENCE_CLEAR, flags = RESET_REQUIRED;\r
76 option text = STRING_TOKEN(STR_TCG2_SET_PCD_BANKS), value = TCG2_PHYSICAL_PRESENCE_SET_PCR_BANKS, flags = RESET_REQUIRED;\r
77 option text = STRING_TOKEN(STR_TCG2_CHANGE_EPS), value = TCG2_PHYSICAL_PRESENCE_CHANGE_EPS, flags = RESET_REQUIRED;\r
78 option text = STRING_TOKEN(STR_TCG2_LOG_ALL_DIGESTS), value = TCG2_PHYSICAL_PRESENCE_LOG_ALL_DIGESTS, flags = RESET_REQUIRED;\r
79 option text = STRING_TOKEN(STR_TCG2_DISABLE_ENDORSEMENT_ENABLE_STORAGE_HIERARCHY), value = TCG2_PHYSICAL_PRESENCE_DISABLE_ENDORSEMENT_ENABLE_STORAGE_HIERARCHY, flags = RESET_REQUIRED;\r
80\r
81 option text = STRING_TOKEN(STR_TCG2_ENABLE_BLOCK_SID), value = TCG2_PHYSICAL_PRESENCE_ENABLE_BLOCK_SID, flags = RESET_REQUIRED;\r
82 option text = STRING_TOKEN(STR_TCG2_DISABLE_BLOCK_SID), value = TCG2_PHYSICAL_PRESENCE_DISABLE_BLOCK_SID, flags = RESET_REQUIRED;\r
83 endoneof;\r
84 \r
85 suppressif NOT questionref(Tpm2Operation) == TCG2_PHYSICAL_PRESENCE_SET_PCR_BANKS;\r
86 numeric name = Tpm2OperationParameter,\r
87 questionid = KEY_TPM2_OPERATION_PARAMETER,\r
88 prompt = STRING_TOKEN(STR_TCG2_OPERATION_PARAMETER),\r
89 help = STRING_TOKEN(STR_TCG2_OPERATION_PARAMETER_HELP),\r
90 flags = DISPLAY_UINT_HEX | INTERACTIVE | NUMERIC_SIZE_4,\r
91 minimum = 0,\r
92 maximum = 0xFFFFFFFF,\r
93 step = 0,\r
94 default = 0,\r
95 endnumeric;\r
96 endif;\r
97\r
98 subtitle text = STRING_TOKEN(STR_NULL);\r
99 subtitle text = STRING_TOKEN(STR_TCG2_CONFIGURATION);\r
100\r
101 text\r
102 help = STRING_TOKEN(STR_TCG2_SUPPORTED_EVENT_LOG_FORMAT_HELP),\r
103 text = STRING_TOKEN(STR_TCG2_SUPPORTED_EVENT_LOG_FORMAT),\r
104 text = STRING_TOKEN(STR_TCG2_SUPPORTED_EVENT_LOG_FORMAT_CONTENT);\r
105\r
106 text\r
107 help = STRING_TOKEN(STR_TCG2_HASH_ALGO_BITMAP_HELP),\r
108 text = STRING_TOKEN(STR_TCG2_HASH_ALGO_BITMAP),\r
109 text = STRING_TOKEN(STR_TCG2_HASH_ALGO_BITMAP_CONTENT);\r
110\r
111 text\r
112 help = STRING_TOKEN(STR_TCG2_NUMBER_OF_PCR_BANKS_HELP),\r
113 text = STRING_TOKEN(STR_TCG2_NUMBER_OF_PCR_BANKS),\r
114 text = STRING_TOKEN(STR_TCG2_NUMBER_OF_PCR_BANKS_CONTENT);\r
115\r
116 text\r
117 help = STRING_TOKEN(STR_TCG2_ACTIVE_PCR_BANKS_HELP),\r
118 text = STRING_TOKEN(STR_TCG2_ACTIVE_PCR_BANKS),\r
119 text = STRING_TOKEN(STR_TCG2_ACTIVE_PCR_BANKS_CONTENT);\r
120\r
121 subtitle text = STRING_TOKEN(STR_NULL);\r
122\r
123 checkbox name = TCG2ActivatePCRBank0,\r
124 questionid = KEY_TPM2_PCR_BANKS_REQUEST_0,\r
125 prompt = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA1),\r
126 help = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA1_HELP),\r
127 flags = INTERACTIVE,\r
128 default = 1,\r
129 endcheckbox;\r
130\r
131 checkbox name = TCG2ActivatePCRBank1,\r
132 questionid = KEY_TPM2_PCR_BANKS_REQUEST_1,\r
133 prompt = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA256),\r
134 help = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA256_HELP),\r
135 flags = INTERACTIVE,\r
136 default = 0,\r
137 endcheckbox;\r
138\r
139 checkbox name = TCG2ActivatePCRBank2,\r
140 questionid = KEY_TPM2_PCR_BANKS_REQUEST_2,\r
141 prompt = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA384),\r
142 help = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA384_HELP),\r
143 flags = INTERACTIVE,\r
144 default = 0,\r
145 endcheckbox;\r
146\r
147 checkbox name = TCG2ActivatePCRBank3,\r
148 questionid = KEY_TPM2_PCR_BANKS_REQUEST_3,\r
149 prompt = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA512),\r
150 help = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA512_HELP),\r
151 flags = INTERACTIVE,\r
152 default = 0,\r
153 endcheckbox;\r
154\r
155 checkbox name = TCG2ActivatePCRBank4,\r
156 questionid = KEY_TPM2_PCR_BANKS_REQUEST_4,\r
157 prompt = STRING_TOKEN(STR_TCG2_PCR_BANK_SM3_256),\r
158 help = STRING_TOKEN(STR_TCG2_PCR_BANK_SM3_256_HELP),\r
159 flags = INTERACTIVE,\r
160 default = 0,\r
161 endcheckbox;\r
162\r
163 endif;\r
164\r
165 endform;\r
166\r
167endformset;\r