]> git.proxmox.com Git - mirror_edk2.git/blob - SecurityPkg/Tcg/Tcg2Config/Tcg2Config.vfr
SecurityPkg Tcg2: Rename internal API IsZeroBuffer to InternalIsZeroBuffer
[mirror_edk2.git] / SecurityPkg / Tcg / Tcg2Config / Tcg2Config.vfr
1 /** @file
2 VFR file used by the TCG2 configuration component.
3
4 Copyright (c) 2015 - 2016, 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 form formid = TCG2_CONFIGURATION_FORM_ID,
36 title = STRING_TOKEN(STR_TCG2_TITLE);
37
38 subtitle text = STRING_TOKEN(STR_NULL);
39
40 text
41 help = STRING_TOKEN(STR_TCG2_DEVICE_STATE_HELP),
42 text = STRING_TOKEN(STR_TCG2_DEVICE_STATE_PROMPT),
43 text = STRING_TOKEN(STR_TCG2_DEVICE_STATE_CONTENT);
44
45 oneof varid = TCG2_CONFIGURATION.TpmDevice,
46 questionid = KEY_TPM_DEVICE,
47 prompt = STRING_TOKEN(STR_TCG2_DEVICE_PROMPT),
48 help = STRING_TOKEN(STR_TCG2_DEVICE_HELP),
49 flags = INTERACTIVE,
50 option text = STRING_TOKEN(STR_TCG2_TPM_1_2), value = TPM_DEVICE_1_2, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;
51 option text = STRING_TOKEN(STR_TCG2_TPM_2_0_DTPM), value = TPM_DEVICE_2_0_DTPM, flags = RESET_REQUIRED;
52 endoneof;
53
54 suppressif ideqvallist TCG2_CONFIGURATION.TpmDevice == TPM_DEVICE_NULL TPM_DEVICE_1_2;
55 text
56 help = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_STATE_HELP),
57 text = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_STATE_PROMPT),
58 text = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_STATE_CONTENT);
59
60 text
61 help = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_CAPABILITY_HELP),
62 text = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_CAPABILITY_PROMPT),
63 text = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_CAPABILITY_CONTENT);
64
65 suppressif ideqval TCG2_CONFIGURATION_INFO.TpmDeviceInterfacePtpFifoSupported == 0
66 OR ideqval TCG2_CONFIGURATION_INFO.TpmDeviceInterfacePtpCrbSupported == 0;
67 oneof varid = TCG2_CONFIGURATION_INFO.TpmDeviceInterfaceAttempt,
68 questionid = KEY_TPM_DEVICE_INTERFACE,
69 prompt = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_PROMPT),
70 help = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_HELP),
71 flags = INTERACTIVE,
72 option text = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_TIS), value = TPM_DEVICE_INTERFACE_TIS, flags = RESET_REQUIRED;
73 option text = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_PTP_FIFO), value = TPM_DEVICE_INTERFACE_PTP_FIFO, flags = RESET_REQUIRED;
74 option text = STRING_TOKEN(STR_TCG2_DEVICE_INTERFACE_PTP_CRB), value = TPM_DEVICE_INTERFACE_PTP_CRB, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;
75 endoneof;
76 endif;
77
78 endif;
79
80 subtitle text = STRING_TOKEN(STR_NULL);
81
82 suppressif ideqvallist TCG2_CONFIGURATION.TpmDevice == TPM_DEVICE_NULL TPM_DEVICE_1_2;
83 text
84 help = STRING_TOKEN(STR_TPM2_ACTIVE_HASH_ALGO_HELP),
85 text = STRING_TOKEN(STR_TPM2_ACTIVE_HASH_ALGO),
86 text = STRING_TOKEN(STR_TPM2_ACTIVE_HASH_ALGO_CONTENT);
87 text
88 help = STRING_TOKEN(STR_TPM2_SUPPORTED_HASH_ALGO_HELP),
89 text = STRING_TOKEN(STR_TPM2_SUPPORTED_HASH_ALGO),
90 text = STRING_TOKEN(STR_TPM2_SUPPORTED_HASH_ALGO_CONTENT);
91 text
92 help = STRING_TOKEN(STR_BIOS_HASH_ALGO_HELP),
93 text = STRING_TOKEN(STR_BIOS_HASH_ALGO),
94 text = STRING_TOKEN(STR_BIOS_HASH_ALGO_CONTENT);
95
96 subtitle text = STRING_TOKEN(STR_NULL);
97 subtitle text = STRING_TOKEN(STR_TCG2_PP_OPERATION);
98
99 oneof name = Tpm2Operation,
100 questionid = KEY_TPM2_OPERATION,
101 prompt = STRING_TOKEN(STR_TCG2_OPERATION),
102 help = STRING_TOKEN(STR_TCG2_OPERATION_HELP),
103 flags = INTERACTIVE | NUMERIC_SIZE_1,
104 option text = STRING_TOKEN(STR_TCG2_NO_ACTION), value = TCG2_PHYSICAL_PRESENCE_NO_ACTION, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;
105 option text = STRING_TOKEN(STR_TCG2_ENABLE), value = TCG2_PHYSICAL_PRESENCE_ENABLE, flags = RESET_REQUIRED;
106 option text = STRING_TOKEN(STR_TCG2_DISABLE), value = TCG2_PHYSICAL_PRESENCE_DISABLE, flags = RESET_REQUIRED;
107 option text = STRING_TOKEN(STR_TCG2_CLEAR), value = TCG2_PHYSICAL_PRESENCE_CLEAR, flags = RESET_REQUIRED;
108 option text = STRING_TOKEN(STR_TCG2_SET_PCD_BANKS), value = TCG2_PHYSICAL_PRESENCE_SET_PCR_BANKS, flags = RESET_REQUIRED;
109 option text = STRING_TOKEN(STR_TCG2_CHANGE_EPS), value = TCG2_PHYSICAL_PRESENCE_CHANGE_EPS, flags = RESET_REQUIRED;
110 option text = STRING_TOKEN(STR_TCG2_LOG_ALL_DIGESTS), value = TCG2_PHYSICAL_PRESENCE_LOG_ALL_DIGESTS, flags = RESET_REQUIRED;
111 option text = STRING_TOKEN(STR_TCG2_DISABLE_ENDORSEMENT_ENABLE_STORAGE_HIERARCHY), value = TCG2_PHYSICAL_PRESENCE_DISABLE_ENDORSEMENT_ENABLE_STORAGE_HIERARCHY, flags = RESET_REQUIRED;
112
113 option text = STRING_TOKEN(STR_TCG2_ENABLE_BLOCK_SID), value = TCG2_PHYSICAL_PRESENCE_ENABLE_BLOCK_SID, flags = RESET_REQUIRED;
114 option text = STRING_TOKEN(STR_TCG2_DISABLE_BLOCK_SID), value = TCG2_PHYSICAL_PRESENCE_DISABLE_BLOCK_SID, flags = RESET_REQUIRED;
115 endoneof;
116
117 suppressif NOT questionref(Tpm2Operation) == TCG2_PHYSICAL_PRESENCE_SET_PCR_BANKS;
118 numeric name = Tpm2OperationParameter,
119 questionid = KEY_TPM2_OPERATION_PARAMETER,
120 prompt = STRING_TOKEN(STR_TCG2_OPERATION_PARAMETER),
121 help = STRING_TOKEN(STR_TCG2_OPERATION_PARAMETER_HELP),
122 flags = DISPLAY_UINT_HEX | INTERACTIVE | NUMERIC_SIZE_4,
123 minimum = 0,
124 maximum = 0xFFFFFFFF,
125 step = 0,
126 default = 0,
127 endnumeric;
128 endif;
129
130 subtitle text = STRING_TOKEN(STR_NULL);
131 subtitle text = STRING_TOKEN(STR_TCG2_CONFIGURATION);
132
133 text
134 help = STRING_TOKEN(STR_TCG2_SUPPORTED_EVENT_LOG_FORMAT_HELP),
135 text = STRING_TOKEN(STR_TCG2_SUPPORTED_EVENT_LOG_FORMAT),
136 text = STRING_TOKEN(STR_TCG2_SUPPORTED_EVENT_LOG_FORMAT_CONTENT);
137
138 text
139 help = STRING_TOKEN(STR_TCG2_HASH_ALGO_BITMAP_HELP),
140 text = STRING_TOKEN(STR_TCG2_HASH_ALGO_BITMAP),
141 text = STRING_TOKEN(STR_TCG2_HASH_ALGO_BITMAP_CONTENT);
142
143 text
144 help = STRING_TOKEN(STR_TCG2_NUMBER_OF_PCR_BANKS_HELP),
145 text = STRING_TOKEN(STR_TCG2_NUMBER_OF_PCR_BANKS),
146 text = STRING_TOKEN(STR_TCG2_NUMBER_OF_PCR_BANKS_CONTENT);
147
148 text
149 help = STRING_TOKEN(STR_TCG2_ACTIVE_PCR_BANKS_HELP),
150 text = STRING_TOKEN(STR_TCG2_ACTIVE_PCR_BANKS),
151 text = STRING_TOKEN(STR_TCG2_ACTIVE_PCR_BANKS_CONTENT);
152
153 subtitle text = STRING_TOKEN(STR_NULL);
154
155 suppressif ideqval TCG2_CONFIGURATION_INFO.Sha1Supported == 0;
156 checkbox name = TCG2ActivatePCRBank0,
157 questionid = KEY_TPM2_PCR_BANKS_REQUEST_0,
158 prompt = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA1),
159 help = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA1_HELP),
160 flags = INTERACTIVE,
161 default = 1,
162 endcheckbox;
163 endif;
164
165 suppressif ideqval TCG2_CONFIGURATION_INFO.Sha256Supported == 0;
166 checkbox name = TCG2ActivatePCRBank1,
167 questionid = KEY_TPM2_PCR_BANKS_REQUEST_1,
168 prompt = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA256),
169 help = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA256_HELP),
170 flags = INTERACTIVE,
171 default = 0,
172 endcheckbox;
173 endif;
174
175 suppressif ideqval TCG2_CONFIGURATION_INFO.Sha384Supported == 0;
176 checkbox name = TCG2ActivatePCRBank2,
177 questionid = KEY_TPM2_PCR_BANKS_REQUEST_2,
178 prompt = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA384),
179 help = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA384_HELP),
180 flags = INTERACTIVE,
181 default = 0,
182 endcheckbox;
183 endif;
184
185 suppressif ideqval TCG2_CONFIGURATION_INFO.Sha512Supported == 0;
186 checkbox name = TCG2ActivatePCRBank3,
187 questionid = KEY_TPM2_PCR_BANKS_REQUEST_3,
188 prompt = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA512),
189 help = STRING_TOKEN(STR_TCG2_PCR_BANK_SHA512_HELP),
190 flags = INTERACTIVE,
191 default = 0,
192 endcheckbox;
193 endif;
194
195 suppressif ideqval TCG2_CONFIGURATION_INFO.Sm3Supported == 0;
196 checkbox name = TCG2ActivatePCRBank4,
197 questionid = KEY_TPM2_PCR_BANKS_REQUEST_4,
198 prompt = STRING_TOKEN(STR_TCG2_PCR_BANK_SM3_256),
199 help = STRING_TOKEN(STR_TCG2_PCR_BANK_SM3_256_HELP),
200 flags = INTERACTIVE,
201 default = 0,
202 endcheckbox;
203 endif;
204
205 endif;
206
207 endform;
208
209 endformset;