]> git.proxmox.com Git - mirror_edk2.git/blob - SecurityPkg/Tcg/Tcg2Config/Tcg2Config.vfr
SecurityPkg: Removing ipf which is no longer supported from edk2.
[mirror_edk2.git] / SecurityPkg / Tcg / Tcg2Config / Tcg2Config.vfr
1 /** @file
2 VFR file used by the TCG2 configuration component.
3
4 Copyright (c) 2015 - 2018, Intel Corporation. All rights reserved.<BR>
5 This program and the accompanying materials
6 are licensed and made available under the terms and conditions of the BSD License
7 which accompanies this distribution. The full text of the license may be found at
8 http://opensource.org/licenses/bsd-license.php
9
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12
13 **/
14
15 #include "Tcg2ConfigNvData.h"
16
17 formset
18 guid = TCG2_CONFIG_FORM_SET_GUID,
19 title = STRING_TOKEN(STR_TCG2_TITLE),
20 help = STRING_TOKEN(STR_TCG2_HELP),
21 classguid = EFI_HII_PLATFORM_SETUP_FORMSET_GUID,
22
23 efivarstore TCG2_CONFIGURATION_INFO,
24 varid = TCG2_CONFIGURATION_INFO_VARSTORE_ID,
25 attribute = 0x02, // EFI variable attribures EFI_VARIABLE_BOOTSERVICE_ACCESS
26 name = TCG2_CONFIGURATION_INFO,
27 guid = TCG2_CONFIG_FORM_SET_GUID;
28
29 efivarstore TCG2_CONFIGURATION,
30 varid = TCG2_CONFIGURATION_VARSTORE_ID,
31 attribute = 0x03, // EFI variable attribures EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_NON_VOLATILE
32 name = TCG2_CONFIGURATION,
33 guid = TCG2_CONFIG_FORM_SET_GUID;
34
35 efivarstore TCG2_VERSION,
36 varid = TCG2_VERSION_VARSTORE_ID,
37 attribute = 0x03, // EFI variable attribures EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_NON_VOLATILE
38 name = TCG2_VERSION,
39 guid = TCG2_CONFIG_FORM_SET_GUID;
40
41 form formid = TCG2_CONFIGURATION_FORM_ID,
42 title = STRING_TOKEN(STR_TCG2_TITLE);
43
44 subtitle text = STRING_TOKEN(STR_NULL);
45
46 text
47 help = STRING_TOKEN(STR_TCG2_DEVICE_STATE_HELP),
48 text = STRING_TOKEN(STR_TCG2_DEVICE_STATE_PROMPT),
49 text = STRING_TOKEN(STR_TCG2_DEVICE_STATE_CONTENT);
50
51 oneof varid = TCG2_CONFIGURATION.TpmDevice,
52 questionid = KEY_TPM_DEVICE,
53 prompt = STRING_TOKEN(STR_TCG2_DEVICE_PROMPT),
54 help = STRING_TOKEN(STR_TCG2_DEVICE_HELP),
55 flags = INTERACTIVE,
56 option text = STRING_TOKEN(STR_TCG2_TPM_1_2), value = TPM_DEVICE_1_2, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;
57 option text = STRING_TOKEN(STR_TCG2_TPM_2_0_DTPM), value = TPM_DEVICE_2_0_DTPM, flags = RESET_REQUIRED;
58 endoneof;
59
60 suppressif ideqvallist TCG2_CONFIGURATION.TpmDevice == TPM_DEVICE_NULL TPM_DEVICE_1_2;
61
62 subtitle text = STRING_TOKEN(STR_NULL);
63
64 text
65 help = STRING_TOKEN(STR_TPM2_ACPI_HID_HELP),
66 text = STRING_TOKEN(STR_TPM2_ACPI_HID_PROMPT),
67 text = STRING_TOKEN(STR_TPM2_ACPI_HID_CONTENT);
68
69 text
70 help = STRING_TOKEN(STR_TPM2_ACPI_REVISION_STATE_HELP),
71 text = STRING_TOKEN(STR_TPM2_ACPI_REVISION_STATE_PROMPT),
72 text = STRING_TOKEN(STR_TPM2_ACPI_REVISION_STATE_CONTENT);
73
74 oneof varid = TCG2_VERSION.Tpm2AcpiTableRev,
75 questionid = KEY_TPM2_ACPI_REVISION,
76 prompt = STRING_TOKEN(STR_TPM2_ACPI_REVISION_PROMPT),
77 help = STRING_TOKEN(STR_TPM2_ACPI_REVISION_HELP),
78 flags = INTERACTIVE,
79 option text = STRING_TOKEN(STR_TPM2_ACPI_REVISION_3), value = TPM2_ACPI_REVISION_3, flags = RESET_REQUIRED;
80 option text = STRING_TOKEN(STR_TPM2_ACPI_REVISION_4), value = TPM2_ACPI_REVISION_4, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;
81 endoneof;
82
83 subtitle text = STRING_TOKEN(STR_NULL);
84
85 text
86 help = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_STATE_HELP),
87 text = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_STATE_PROMPT),
88 text = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_STATE_CONTENT);
89
90 text
91 help = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_CAPABILITY_HELP),
92 text = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_CAPABILITY_PROMPT),
93 text = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_CAPABILITY_CONTENT);
94
95 suppressif ideqval TCG2_CONFIGURATION_INFO.TpmDeviceInterfacePtpFifoSupported == 0
96 OR ideqval TCG2_CONFIGURATION_INFO.TpmDeviceInterfacePtpCrbSupported == 0;
97 oneof varid = TCG2_CONFIGURATION_INFO.TpmDeviceInterfaceAttempt,
98 questionid = KEY_TPM_DEVICE_INTERFACE,
99 prompt = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_PROMPT),
100 help = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_HELP),
101 flags = INTERACTIVE,
102 option text = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_TIS), value = TPM_DEVICE_INTERFACE_TIS, flags = RESET_REQUIRED;
103 option text = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_PTP_FIFO), value = TPM_DEVICE_INTERFACE_PTP_FIFO, flags = RESET_REQUIRED;
104 option text = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_PTP_CRB), value = TPM_DEVICE_INTERFACE_PTP_CRB, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;
105 endoneof;
106 endif;
107
108 endif;
109
110 subtitle text = STRING_TOKEN(STR_NULL);
111
112 suppressif ideqvallist TCG2_CONFIGURATION.TpmDevice == TPM_DEVICE_NULL TPM_DEVICE_1_2;
113 text
114 help = STRING_TOKEN(STR_TPM2_ACTIVE_HASH_ALGO_HELP),
115 text = STRING_TOKEN(STR_TPM2_ACTIVE_HASH_ALGO),
116 text = STRING_TOKEN(STR_TPM2_ACTIVE_HASH_ALGO_CONTENT);
117 text
118 help = STRING_TOKEN(STR_TPM2_SUPPORTED_HASH_ALGO_HELP),
119 text = STRING_TOKEN(STR_TPM2_SUPPORTED_HASH_ALGO),
120 text = STRING_TOKEN(STR_TPM2_SUPPORTED_HASH_ALGO_CONTENT);
121 text
122 help = STRING_TOKEN(STR_BIOS_HASH_ALGO_HELP),
123 text = STRING_TOKEN(STR_BIOS_HASH_ALGO),
124 text = STRING_TOKEN(STR_BIOS_HASH_ALGO_CONTENT);
125
126 subtitle text = STRING_TOKEN(STR_NULL);
127 subtitle text = STRING_TOKEN(STR_TCG2_PP_OPERATION);
128
129 text
130 help = STRING_TOKEN(STR_TCG2_PPI_VERSION_STATE_HELP),
131 text = STRING_TOKEN(STR_TCG2_PPI_VERSION_STATE_PROMPT),
132 text = STRING_TOKEN(STR_TCG2_PPI_VERSION_STATE_CONTENT);
133
134 oneof varid = TCG2_VERSION.PpiVersion,
135 questionid = KEY_TCG2_PPI_VERSION,
136 prompt = STRING_TOKEN(STR_TCG2_PPI_VERSION_PROMPT),
137 help = STRING_TOKEN(STR_TCG2_PPI_VERSION_HELP),
138 flags = INTERACTIVE,
139 option text = STRING_TOKEN(STR_TCG2_PPI_VERSION_1_2), value = TCG2_PPI_VERSION_1_2, flags = RESET_REQUIRED;
140 option text = STRING_TOKEN(STR_TCG2_PPI_VERSION_1_3), value = TCG2_PPI_VERSION_1_3, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;
141 endoneof;
142
143 oneof name = Tpm2Operation,
144 questionid = KEY_TPM2_OPERATION,
145 prompt = STRING_TOKEN(STR_TCG2_OPERATION),
146 help = STRING_TOKEN(STR_TCG2_OPERATION_HELP),
147 flags = INTERACTIVE | NUMERIC_SIZE_1,
148 option text = STRING_TOKEN(STR_TCG2_NO_ACTION), value = TCG2_PHYSICAL_PRESENCE_NO_ACTION, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;
149 option text = STRING_TOKEN(STR_TCG2_ENABLE), value = TCG2_PHYSICAL_PRESENCE_ENABLE, flags = RESET_REQUIRED;
150 option text = STRING_TOKEN(STR_TCG2_DISABLE), value = TCG2_PHYSICAL_PRESENCE_DISABLE, flags = RESET_REQUIRED;
151 option text = STRING_TOKEN(STR_TCG2_CLEAR), value = TCG2_PHYSICAL_PRESENCE_CLEAR, flags = RESET_REQUIRED;
152 option text = STRING_TOKEN(STR_TCG2_SET_PCD_BANKS), value = TCG2_PHYSICAL_PRESENCE_SET_PCR_BANKS, flags = RESET_REQUIRED;
153 option text = STRING_TOKEN(STR_TCG2_CHANGE_EPS), value = TCG2_PHYSICAL_PRESENCE_CHANGE_EPS, flags = RESET_REQUIRED;
154 option text = STRING_TOKEN(STR_TCG2_LOG_ALL_DIGESTS), value = TCG2_PHYSICAL_PRESENCE_LOG_ALL_DIGESTS, flags = RESET_REQUIRED;
155 option text = STRING_TOKEN(STR_TCG2_DISABLE_ENDORSEMENT_ENABLE_STORAGE_HIERARCHY), value = TCG2_PHYSICAL_PRESENCE_DISABLE_ENDORSEMENT_ENABLE_STORAGE_HIERARCHY, flags = RESET_REQUIRED;
156 endoneof;
157
158 suppressif NOT questionref(Tpm2Operation) == TCG2_PHYSICAL_PRESENCE_SET_PCR_BANKS;
159 numeric name = Tpm2OperationParameter,
160 questionid = KEY_TPM2_OPERATION_PARAMETER,
161 prompt = STRING_TOKEN(STR_TCG2_OPERATION_PARAMETER),
162 help = STRING_TOKEN(STR_TCG2_OPERATION_PARAMETER_HELP),
163 flags = DISPLAY_UINT_HEX | INTERACTIVE | NUMERIC_SIZE_4,
164 minimum = 0,
165 maximum = 0xFFFFFFFF,
166 step = 0,
167 default = 0,
168 endnumeric;
169 endif;
170
171 subtitle text = STRING_TOKEN(STR_NULL);
172 subtitle text = STRING_TOKEN(STR_TCG2_CONFIGURATION);
173
174 text
175 help = STRING_TOKEN(STR_TCG2_SUPPORTED_EVENT_LOG_FORMAT_HELP),
176 text = STRING_TOKEN(STR_TCG2_SUPPORTED_EVENT_LOG_FORMAT),
177 text = STRING_TOKEN(STR_TCG2_SUPPORTED_EVENT_LOG_FORMAT_CONTENT);
178
179 text
180 help = STRING_TOKEN(STR_TCG2_HASH_ALGO_BITMAP_HELP),
181 text = STRING_TOKEN(STR_TCG2_HASH_ALGO_BITMAP),
182 text = STRING_TOKEN(STR_TCG2_HASH_ALGO_BITMAP_CONTENT);
183
184 text
185 help = STRING_TOKEN(STR_TCG2_NUMBER_OF_PCR_BANKS_HELP),
186 text = STRING_TOKEN(STR_TCG2_NUMBER_OF_PCR_BANKS),
187 text = STRING_TOKEN(STR_TCG2_NUMBER_OF_PCR_BANKS_CONTENT);
188
189 text
190 help = STRING_TOKEN(STR_TCG2_ACTIVE_PCR_BANKS_HELP),
191 text = STRING_TOKEN(STR_TCG2_ACTIVE_PCR_BANKS),
192 text = STRING_TOKEN(STR_TCG2_ACTIVE_PCR_BANKS_CONTENT);
193
194 subtitle text = STRING_TOKEN(STR_NULL);
195
196 suppressif ideqval TCG2_CONFIGURATION_INFO.Sha1Supported == 0;
197 checkbox name = TCG2ActivatePCRBank0,
198 questionid = KEY_TPM2_PCR_BANKS_REQUEST_0,
199 prompt = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA1),
200 help = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA1_HELP),
201 flags = INTERACTIVE | RESET_REQUIRED,
202 default = 1,
203 endcheckbox;
204 endif;
205
206 suppressif ideqval TCG2_CONFIGURATION_INFO.Sha256Supported == 0;
207 checkbox name = TCG2ActivatePCRBank1,
208 questionid = KEY_TPM2_PCR_BANKS_REQUEST_1,
209 prompt = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA256),
210 help = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA256_HELP),
211 flags = INTERACTIVE | RESET_REQUIRED,
212 default = 0,
213 endcheckbox;
214 endif;
215
216 suppressif ideqval TCG2_CONFIGURATION_INFO.Sha384Supported == 0;
217 checkbox name = TCG2ActivatePCRBank2,
218 questionid = KEY_TPM2_PCR_BANKS_REQUEST_2,
219 prompt = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA384),
220 help = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA384_HELP),
221 flags = INTERACTIVE | RESET_REQUIRED,
222 default = 0,
223 endcheckbox;
224 endif;
225
226 suppressif ideqval TCG2_CONFIGURATION_INFO.Sha512Supported == 0;
227 checkbox name = TCG2ActivatePCRBank3,
228 questionid = KEY_TPM2_PCR_BANKS_REQUEST_3,
229 prompt = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA512),
230 help = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA512_HELP),
231 flags = INTERACTIVE | RESET_REQUIRED,
232 default = 0,
233 endcheckbox;
234 endif;
235
236 suppressif ideqval TCG2_CONFIGURATION_INFO.Sm3Supported == 0;
237 checkbox name = TCG2ActivatePCRBank4,
238 questionid = KEY_TPM2_PCR_BANKS_REQUEST_4,
239 prompt = STRING_TOKEN(STR_TCG2_PCR_BANK_SM3_256),
240 help = STRING_TOKEN(STR_TCG2_PCR_BANK_SM3_256_HELP),
241 flags = INTERACTIVE | RESET_REQUIRED,
242 default = 0,
243 endcheckbox;
244 endif;
245
246 endif;
247
248 endform;
249
250 endformset;