]> git.proxmox.com Git - mirror_edk2.git/blame - SecurityPkg/Tcg/Tcg2Config/Tcg2Config.vfr
SecurityPkg Tcg2ConfigDxe: Add setup option to configure PPI version
[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
a6e0e994 4Copyright (c) 2015 - 2017, Intel Corporation. All rights reserved.<BR>\r
1abfa4ce
JY
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
c41eeb44
JY
22 \r
23 efivarstore TCG2_CONFIGURATION_INFO,\r
24 varid = TCG2_CONFIGURATION_INFO_VARSTORE_ID,\r
25 attribute = 0x02, // EFI variable attribures EFI_VARIABLE_BOOTSERVICE_ACCESS\r
26 name = TCG2_CONFIGURATION_INFO,\r
27 guid = TCG2_CONFIG_FORM_SET_GUID;\r
1abfa4ce
JY
28\r
29 efivarstore TCG2_CONFIGURATION,\r
30 varid = TCG2_CONFIGURATION_VARSTORE_ID,\r
31 attribute = 0x03, // EFI variable attribures EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_NON_VOLATILE\r
32 name = TCG2_CONFIGURATION,\r
33 guid = TCG2_CONFIG_FORM_SET_GUID;\r
34\r
dd6d0a52
SZ
35 efivarstore TCG2_VERSION,\r
36 varid = TCG2_VERSION_VARSTORE_ID,\r
37 attribute = 0x03, // EFI variable attribures EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_NON_VOLATILE\r
38 name = TCG2_VERSION,\r
39 guid = TCG2_CONFIG_FORM_SET_GUID;\r
40\r
1abfa4ce
JY
41 form formid = TCG2_CONFIGURATION_FORM_ID,\r
42 title = STRING_TOKEN(STR_TCG2_TITLE);\r
43\r
44 subtitle text = STRING_TOKEN(STR_NULL);\r
45\r
46 text\r
47 help = STRING_TOKEN(STR_TCG2_DEVICE_STATE_HELP),\r
48 text = STRING_TOKEN(STR_TCG2_DEVICE_STATE_PROMPT),\r
49 text = STRING_TOKEN(STR_TCG2_DEVICE_STATE_CONTENT);\r
50\r
51 oneof varid = TCG2_CONFIGURATION.TpmDevice,\r
52 questionid = KEY_TPM_DEVICE,\r
53 prompt = STRING_TOKEN(STR_TCG2_DEVICE_PROMPT),\r
54 help = STRING_TOKEN(STR_TCG2_DEVICE_HELP),\r
55 flags = INTERACTIVE,\r
56 option text = STRING_TOKEN(STR_TCG2_TPM_1_2), value = TPM_DEVICE_1_2, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;\r
57 option text = STRING_TOKEN(STR_TCG2_TPM_2_0_DTPM), value = TPM_DEVICE_2_0_DTPM, flags = RESET_REQUIRED;\r
58 endoneof;\r
59\r
518b6f65 60 suppressif ideqvallist TCG2_CONFIGURATION.TpmDevice == TPM_DEVICE_NULL TPM_DEVICE_1_2;\r
a6e0e994
ZC
61\r
62 subtitle text = STRING_TOKEN(STR_NULL);\r
63\r
64 text\r
65 help = STRING_TOKEN(STR_TPM2_ACPI_HID_HELP),\r
66 text = STRING_TOKEN(STR_TPM2_ACPI_HID_PROMPT),\r
67 text = STRING_TOKEN(STR_TPM2_ACPI_HID_CONTENT);\r
68\r
518b6f65
JY
69 text\r
70 help = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_STATE_HELP),\r
71 text = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_STATE_PROMPT),\r
72 text = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_STATE_CONTENT);\r
73\r
74 text\r
75 help = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_CAPABILITY_HELP),\r
76 text = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_CAPABILITY_PROMPT),\r
77 text = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_CAPABILITY_CONTENT);\r
78\r
79 suppressif ideqval TCG2_CONFIGURATION_INFO.TpmDeviceInterfacePtpFifoSupported == 0\r
80 OR ideqval TCG2_CONFIGURATION_INFO.TpmDeviceInterfacePtpCrbSupported == 0;\r
81 oneof varid = TCG2_CONFIGURATION_INFO.TpmDeviceInterfaceAttempt,\r
82 questionid = KEY_TPM_DEVICE_INTERFACE,\r
83 prompt = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_PROMPT),\r
84 help = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_HELP),\r
85 flags = INTERACTIVE,\r
86 option text = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_TIS), value = TPM_DEVICE_INTERFACE_TIS, flags = RESET_REQUIRED;\r
87 option text = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_PTP_FIFO), value = TPM_DEVICE_INTERFACE_PTP_FIFO, flags = RESET_REQUIRED;\r
88 option text = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_PTP_CRB), value = TPM_DEVICE_INTERFACE_PTP_CRB, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;\r
89 endoneof;\r
90 endif;\r
91\r
92 endif;\r
93\r
1abfa4ce
JY
94 subtitle text = STRING_TOKEN(STR_NULL);\r
95\r
96 suppressif ideqvallist TCG2_CONFIGURATION.TpmDevice == TPM_DEVICE_NULL TPM_DEVICE_1_2;\r
97 text\r
98 help = STRING_TOKEN(STR_TPM2_ACTIVE_HASH_ALGO_HELP),\r
99 text = STRING_TOKEN(STR_TPM2_ACTIVE_HASH_ALGO),\r
100 text = STRING_TOKEN(STR_TPM2_ACTIVE_HASH_ALGO_CONTENT);\r
101 text\r
102 help = STRING_TOKEN(STR_TPM2_SUPPORTED_HASH_ALGO_HELP),\r
103 text = STRING_TOKEN(STR_TPM2_SUPPORTED_HASH_ALGO),\r
104 text = STRING_TOKEN(STR_TPM2_SUPPORTED_HASH_ALGO_CONTENT);\r
105 text\r
106 help = STRING_TOKEN(STR_BIOS_HASH_ALGO_HELP),\r
107 text = STRING_TOKEN(STR_BIOS_HASH_ALGO),\r
108 text = STRING_TOKEN(STR_BIOS_HASH_ALGO_CONTENT);\r
109\r
110 subtitle text = STRING_TOKEN(STR_NULL);\r
111 subtitle text = STRING_TOKEN(STR_TCG2_PP_OPERATION);\r
112\r
dd6d0a52
SZ
113 text\r
114 help = STRING_TOKEN(STR_TCG2_PPI_VERSION_STATE_HELP),\r
115 text = STRING_TOKEN(STR_TCG2_PPI_VERSION_STATE_PROMPT),\r
116 text = STRING_TOKEN(STR_TCG2_PPI_VERSION_STATE_CONTENT);\r
117\r
118 oneof varid = TCG2_VERSION.PpiVersion,\r
119 questionid = KEY_TCG2_PPI_VERSION,\r
120 prompt = STRING_TOKEN(STR_TCG2_PPI_VERSION_PROMPT),\r
121 help = STRING_TOKEN(STR_TCG2_PPI_VERSION_HELP),\r
122 flags = INTERACTIVE,\r
123 option text = STRING_TOKEN(STR_TCG2_PPI_VERSION_1_2), value = TCG2_PPI_VERSION_1_2, flags = RESET_REQUIRED;\r
124 option text = STRING_TOKEN(STR_TCG2_PPI_VERSION_1_3), value = TCG2_PPI_VERSION_1_3, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;\r
125 endoneof;\r
126\r
1abfa4ce
JY
127 oneof name = Tpm2Operation,\r
128 questionid = KEY_TPM2_OPERATION,\r
129 prompt = STRING_TOKEN(STR_TCG2_OPERATION),\r
130 help = STRING_TOKEN(STR_TCG2_OPERATION_HELP),\r
131 flags = INTERACTIVE | NUMERIC_SIZE_1,\r
132 option text = STRING_TOKEN(STR_TCG2_NO_ACTION), value = TCG2_PHYSICAL_PRESENCE_NO_ACTION, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;\r
133 option text = STRING_TOKEN(STR_TCG2_ENABLE), value = TCG2_PHYSICAL_PRESENCE_ENABLE, flags = RESET_REQUIRED;\r
134 option text = STRING_TOKEN(STR_TCG2_DISABLE), value = TCG2_PHYSICAL_PRESENCE_DISABLE, flags = RESET_REQUIRED;\r
135 option text = STRING_TOKEN(STR_TCG2_CLEAR), value = TCG2_PHYSICAL_PRESENCE_CLEAR, flags = RESET_REQUIRED;\r
136 option text = STRING_TOKEN(STR_TCG2_SET_PCD_BANKS), value = TCG2_PHYSICAL_PRESENCE_SET_PCR_BANKS, flags = RESET_REQUIRED;\r
137 option text = STRING_TOKEN(STR_TCG2_CHANGE_EPS), value = TCG2_PHYSICAL_PRESENCE_CHANGE_EPS, flags = RESET_REQUIRED;\r
138 option text = STRING_TOKEN(STR_TCG2_LOG_ALL_DIGESTS), value = TCG2_PHYSICAL_PRESENCE_LOG_ALL_DIGESTS, flags = RESET_REQUIRED;\r
139 option text = STRING_TOKEN(STR_TCG2_DISABLE_ENDORSEMENT_ENABLE_STORAGE_HIERARCHY), value = TCG2_PHYSICAL_PRESENCE_DISABLE_ENDORSEMENT_ENABLE_STORAGE_HIERARCHY, flags = RESET_REQUIRED;\r
1abfa4ce
JY
140 endoneof;\r
141 \r
142 suppressif NOT questionref(Tpm2Operation) == TCG2_PHYSICAL_PRESENCE_SET_PCR_BANKS;\r
143 numeric name = Tpm2OperationParameter,\r
144 questionid = KEY_TPM2_OPERATION_PARAMETER,\r
145 prompt = STRING_TOKEN(STR_TCG2_OPERATION_PARAMETER),\r
146 help = STRING_TOKEN(STR_TCG2_OPERATION_PARAMETER_HELP),\r
147 flags = DISPLAY_UINT_HEX | INTERACTIVE | NUMERIC_SIZE_4,\r
148 minimum = 0,\r
149 maximum = 0xFFFFFFFF,\r
150 step = 0,\r
151 default = 0,\r
152 endnumeric;\r
153 endif;\r
154\r
155 subtitle text = STRING_TOKEN(STR_NULL);\r
156 subtitle text = STRING_TOKEN(STR_TCG2_CONFIGURATION);\r
157\r
158 text\r
159 help = STRING_TOKEN(STR_TCG2_SUPPORTED_EVENT_LOG_FORMAT_HELP),\r
160 text = STRING_TOKEN(STR_TCG2_SUPPORTED_EVENT_LOG_FORMAT),\r
161 text = STRING_TOKEN(STR_TCG2_SUPPORTED_EVENT_LOG_FORMAT_CONTENT);\r
162\r
163 text\r
164 help = STRING_TOKEN(STR_TCG2_HASH_ALGO_BITMAP_HELP),\r
165 text = STRING_TOKEN(STR_TCG2_HASH_ALGO_BITMAP),\r
166 text = STRING_TOKEN(STR_TCG2_HASH_ALGO_BITMAP_CONTENT);\r
167\r
168 text\r
169 help = STRING_TOKEN(STR_TCG2_NUMBER_OF_PCR_BANKS_HELP),\r
170 text = STRING_TOKEN(STR_TCG2_NUMBER_OF_PCR_BANKS),\r
171 text = STRING_TOKEN(STR_TCG2_NUMBER_OF_PCR_BANKS_CONTENT);\r
172\r
173 text\r
174 help = STRING_TOKEN(STR_TCG2_ACTIVE_PCR_BANKS_HELP),\r
175 text = STRING_TOKEN(STR_TCG2_ACTIVE_PCR_BANKS),\r
176 text = STRING_TOKEN(STR_TCG2_ACTIVE_PCR_BANKS_CONTENT);\r
177\r
178 subtitle text = STRING_TOKEN(STR_NULL);\r
179\r
c41eeb44 180 suppressif ideqval TCG2_CONFIGURATION_INFO.Sha1Supported == 0;\r
1abfa4ce
JY
181 checkbox name = TCG2ActivatePCRBank0,\r
182 questionid = KEY_TPM2_PCR_BANKS_REQUEST_0,\r
183 prompt = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA1),\r
184 help = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA1_HELP),\r
151ca688 185 flags = INTERACTIVE | RESET_REQUIRED,\r
1abfa4ce
JY
186 default = 1,\r
187 endcheckbox;\r
c41eeb44 188 endif;\r
1abfa4ce 189\r
c41eeb44 190 suppressif ideqval TCG2_CONFIGURATION_INFO.Sha256Supported == 0;\r
1abfa4ce
JY
191 checkbox name = TCG2ActivatePCRBank1,\r
192 questionid = KEY_TPM2_PCR_BANKS_REQUEST_1,\r
193 prompt = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA256),\r
194 help = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA256_HELP),\r
151ca688 195 flags = INTERACTIVE | RESET_REQUIRED,\r
1abfa4ce
JY
196 default = 0,\r
197 endcheckbox;\r
c41eeb44 198 endif;\r
1abfa4ce 199\r
c41eeb44 200 suppressif ideqval TCG2_CONFIGURATION_INFO.Sha384Supported == 0;\r
1abfa4ce
JY
201 checkbox name = TCG2ActivatePCRBank2,\r
202 questionid = KEY_TPM2_PCR_BANKS_REQUEST_2,\r
203 prompt = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA384),\r
204 help = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA384_HELP),\r
151ca688 205 flags = INTERACTIVE | RESET_REQUIRED,\r
1abfa4ce
JY
206 default = 0,\r
207 endcheckbox;\r
c41eeb44 208 endif;\r
1abfa4ce 209\r
c41eeb44 210 suppressif ideqval TCG2_CONFIGURATION_INFO.Sha512Supported == 0;\r
1abfa4ce
JY
211 checkbox name = TCG2ActivatePCRBank3,\r
212 questionid = KEY_TPM2_PCR_BANKS_REQUEST_3,\r
213 prompt = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA512),\r
214 help = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA512_HELP),\r
151ca688 215 flags = INTERACTIVE | RESET_REQUIRED,\r
1abfa4ce
JY
216 default = 0,\r
217 endcheckbox;\r
c41eeb44 218 endif;\r
1abfa4ce 219\r
c41eeb44 220 suppressif ideqval TCG2_CONFIGURATION_INFO.Sm3Supported == 0;\r
1abfa4ce
JY
221 checkbox name = TCG2ActivatePCRBank4,\r
222 questionid = KEY_TPM2_PCR_BANKS_REQUEST_4,\r
223 prompt = STRING_TOKEN(STR_TCG2_PCR_BANK_SM3_256),\r
224 help = STRING_TOKEN(STR_TCG2_PCR_BANK_SM3_256_HELP),\r
151ca688 225 flags = INTERACTIVE | RESET_REQUIRED,\r
1abfa4ce
JY
226 default = 0,\r
227 endcheckbox;\r
c41eeb44 228 endif;\r
1abfa4ce
JY
229\r
230 endif;\r
231\r
232 endform;\r
233\r
234endformset;\r