3 Copyright (c) 2016 - 2018, Intel Corporation. All rights reserved.<BR>
4 This program and the accompanying materials
5 are licensed and made available under the terms and conditions of the BSD License
6 which accompanies this distribution. The full text of the license may be found at
7 http://opensource.org/licenses/bsd-license.php
9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
13 #include "OpalHiiFormValues.h"
16 #define EFI_HII_PLATFORM_SETUP_FORMSET_GUID \
17 { 0x93039971, 0x8545, 0x4b04, { 0xb4, 0x5e, 0x32, 0xeb, 0x83, 0x26, 0x4, 0xe } }
20 guid = SETUP_FORMSET_GUID,
21 title = STRING_TOKEN(STR_OPAL),
22 help = STRING_TOKEN(STR_FORM_SET_HELP),
23 classguid = EFI_HII_PLATFORM_SETUP_FORMSET_GUID,
25 // Define a Buffer Storage (EFI_IFR_VARSTORE) that will be filled
26 // out initially through extractConfig call
27 varstore OPAL_HII_CONFIGURATION, // This is the Data structure type
28 name = OpalHiiConfig, // Define referenced name in vfr
29 guid = SETUP_VARIABLE_GUID; // GUID of this Buffer storage
31 form formid = FORMID_VALUE_MAIN_MENU,
32 title = STRING_TOKEN(STR_OPAL);
34 //CONFIG_VARIABLE(HII_KEY(HII_KEY_ID_VAR_SUPPORTED_DISKS), SupportedDisks, 0x0, 0xFFFF);
37 name = SupportedDisks,
38 varid = OpalHiiConfig.SupportedDisks,
39 prompt = STRING_TOKEN(STR_NULL),
40 help = STRING_TOKEN(STR_NULL),
48 subtitle text = STRING_TOKEN(STR_MAIN_OPAL_VERSION);
50 subtitle text = STRING_TOKEN(STR_NULL);
52 subtitle text = STRING_TOKEN(STR_MAIN_PHY_DISKS_LBL);
55 suppressif ( questionref(SupportedDisks) & ( 0x1 ) ) == 0;
56 goto FORMID_VALUE_DISK_INFO_FORM_MAIN,
57 prompt = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_0 ),
58 help = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_HELP),
64 suppressif ( questionref(SupportedDisks) & ( 0x2 ) ) == 0;
65 goto FORMID_VALUE_DISK_INFO_FORM_MAIN,
66 prompt = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_1 ),
67 help = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_HELP),
73 suppressif ( questionref(SupportedDisks) & ( 0x4 ) ) == 0;
74 goto FORMID_VALUE_DISK_INFO_FORM_MAIN,
75 prompt = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_2 ),
76 help = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_HELP),
82 suppressif ( questionref(SupportedDisks) & ( 0x8 ) ) == 0;
83 goto FORMID_VALUE_DISK_INFO_FORM_MAIN,
84 prompt = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_3 ),
85 help = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_HELP),
91 suppressif ( questionref(SupportedDisks) & ( 0x10 ) ) == 0;
92 goto FORMID_VALUE_DISK_INFO_FORM_MAIN,
93 prompt = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_4 ),
94 help = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_HELP),
100 suppressif ( questionref(SupportedDisks) & ( 0x20 ) ) == 0;
101 goto FORMID_VALUE_DISK_INFO_FORM_MAIN,
102 prompt = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_5 ),
103 help = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_HELP),
109 suppressif ideqval OpalHiiConfig.NumDisks > 0;
111 help = STRING_TOKEN(STR_MAIN_NO_DISKS_PRESENT_LBL_HELP),
112 text = STRING_TOKEN(STR_MAIN_NO_DISKS_PRESENT_LBL);
115 subtitle text = STRING_TOKEN(STR_NULL);
119 help = STRING_TOKEN(STR_BLOCKSID_STATUS_HELP),
120 text = STRING_TOKEN(STR_BLOCKSID_STATUS);
122 help = STRING_TOKEN(STR_BLOCKSID_STATUS_HELP),
123 text = STRING_TOKEN(STR_BLOCKSID_STATUS1);
125 help = STRING_TOKEN(STR_BLOCKSID_STATUS_HELP),
126 text = STRING_TOKEN(STR_BLOCKSID_STATUS2);
128 help = STRING_TOKEN(STR_BLOCKSID_STATUS_HELP),
129 text = STRING_TOKEN(STR_BLOCKSID_STATUS3);
130 subtitle text = STRING_TOKEN(STR_NULL);
133 oneof varid = OpalHiiConfig.EnableBlockSid,
135 prompt = STRING_TOKEN(STR_DISK_INFO_ENABLE_BLOCKSID),
136 help = STRING_TOKEN(STR_DISK_INFO_ENABLE_BLOCKSID_HELP),
138 option text = STRING_TOKEN(STR_NONE), value = 0, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;
139 option text = STRING_TOKEN(STR_ENABLED), value = 1, flags = RESET_REQUIRED;
140 option text = STRING_TOKEN(STR_DISABLED), value = 2, flags = RESET_REQUIRED;
141 option text = STRING_TOKEN(STR_DISK_INFO_ENABLE_BLOCKSID_TRUE), value = 3, flags = RESET_REQUIRED;
142 option text = STRING_TOKEN(STR_DISK_INFO_ENABLE_BLOCKSID_FALSE), value = 4, flags = RESET_REQUIRED;
143 option text = STRING_TOKEN(STR_DISK_INFO_DISABLE_BLOCKSID_TRUE), value = 5, flags = RESET_REQUIRED;
144 option text = STRING_TOKEN(STR_DISK_INFO_DISABLE_BLOCKSID_FALSE), value = 6, flags = RESET_REQUIRED;
149 endform; // MAIN MENU FORM
152 ///////////////// DISK INFO FORM /////////////////
154 form formid = FORMID_VALUE_DISK_INFO_FORM_MAIN,
155 title = STRING_TOKEN(STR_OPAL);
159 name = SelectedDiskAvailableActions,
160 varid = OpalHiiConfig.SelectedDiskAvailableActions,
161 prompt = STRING_TOKEN(STR_NULL),
162 help = STRING_TOKEN(STR_NULL),
171 checkbox varid = OpalHiiConfig.KeepUserDataForced,
172 prompt = STRING_TOKEN(STR_NULL),
173 help = STRING_TOKEN(STR_NULL),
177 subtitle text = STRING_TOKEN(STR_MAIN_OPAL_VERSION);
179 subtitle text = STRING_TOKEN(STR_NULL);
182 help = STRING_TOKEN(STR_NULL),
183 text = STRING_TOKEN(STR_DISK_INFO_SELECTED_DISK_NAME);
185 subtitle text = STRING_TOKEN(STR_NULL);
187 subtitle text = STRING_TOKEN(STR_OPAL_REQUESTS_LBL);
189 suppressif ( questionref(SelectedDiskAvailableActions) & HII_ACTION_SET_ADMIN_PWD ) == 0;
190 grayoutif ideqval OpalHiiConfig.OpalRequest.Revert == 1;
191 grayoutif ideqval OpalHiiConfig.OpalRequest.PsidRevert == 1;
192 checkbox varid = OpalHiiConfig.OpalRequest.SetAdminPwd,
193 prompt = STRING_TOKEN(STR_DISK_INFO_SET_ADMIN_PSWD),
194 help = STRING_TOKEN(STR_DISK_INFO_SET_ADMIN_PSWD_HELP),
195 flags = INTERACTIVE | RESET_REQUIRED,
202 suppressif ( questionref(SelectedDiskAvailableActions) & HII_ACTION_SET_USER_PWD ) == 0;
203 grayoutif ideqval OpalHiiConfig.OpalRequest.DisableUser == 1;
204 grayoutif ideqval OpalHiiConfig.OpalRequest.Revert == 1;
205 grayoutif ideqval OpalHiiConfig.OpalRequest.PsidRevert == 1;
206 checkbox varid = OpalHiiConfig.OpalRequest.SetUserPwd,
207 prompt = STRING_TOKEN(STR_DISK_INFO_SET_USER_PSWD),
208 help = STRING_TOKEN(STR_DISK_INFO_SET_USER_PSWD_HELP),
209 flags = INTERACTIVE | RESET_REQUIRED,
217 suppressif ( questionref(SelectedDiskAvailableActions) & HII_ACTION_SECURE_ERASE ) == 0;
218 grayoutif ideqval OpalHiiConfig.OpalRequest.Revert == 1;
219 grayoutif ideqval OpalHiiConfig.OpalRequest.PsidRevert == 1;
220 checkbox varid = OpalHiiConfig.OpalRequest.SecureErase,
221 prompt = STRING_TOKEN(STR_DISK_INFO_SECURE_ERASE),
222 help = STRING_TOKEN(STR_DISK_INFO_SECURE_ERASE_HELP),
223 flags = INTERACTIVE | RESET_REQUIRED,
230 suppressif ( questionref(SelectedDiskAvailableActions) & HII_ACTION_REVERT ) == 0;
231 grayoutif ideqval OpalHiiConfig.OpalRequest.SetAdminPwd == 1;
232 grayoutif ideqval OpalHiiConfig.OpalRequest.SetUserPwd == 1;
233 grayoutif ideqval OpalHiiConfig.OpalRequest.SecureErase == 1;
234 grayoutif ideqval OpalHiiConfig.OpalRequest.DisableUser == 1;
235 grayoutif ideqval OpalHiiConfig.OpalRequest.PsidRevert == 1;
236 checkbox varid = OpalHiiConfig.OpalRequest.Revert,
237 prompt = STRING_TOKEN(STR_DISK_INFO_REVERT),
238 help = STRING_TOKEN(STR_DISK_INFO_REVERT_HELP),
239 flags = INTERACTIVE | RESET_REQUIRED,
249 suppressif ideqval OpalHiiConfig.OpalRequest.Revert == 0;
250 grayoutif ideqval OpalHiiConfig.KeepUserDataForced == 1;
251 checkbox varid = OpalHiiConfig.OpalRequest.KeepUserData,
252 prompt = STRING_TOKEN(STR_KEEP_USER_DATA_PROMPT),
253 help = STRING_TOKEN(STR_KEEP_USER_DATA_HELP),
254 flags = INTERACTIVE | RESET_REQUIRED,
260 suppressif ( questionref(SelectedDiskAvailableActions) & HII_ACTION_PSID_REVERT ) == 0;
261 grayoutif ideqval OpalHiiConfig.OpalRequest.SetAdminPwd == 1;
262 grayoutif ideqval OpalHiiConfig.OpalRequest.SetUserPwd == 1;
263 grayoutif ideqval OpalHiiConfig.OpalRequest.SecureErase == 1;
264 grayoutif ideqval OpalHiiConfig.OpalRequest.DisableUser == 1;
265 grayoutif ideqval OpalHiiConfig.OpalRequest.EnableFeature == 1;
266 grayoutif ideqval OpalHiiConfig.OpalRequest.Revert == 1;
267 checkbox varid = OpalHiiConfig.OpalRequest.PsidRevert,
268 prompt = STRING_TOKEN(STR_DISK_INFO_PSID_REVERT),
269 help = STRING_TOKEN(STR_DISK_INFO_PSID_REVERT_HELP),
270 flags = INTERACTIVE | RESET_REQUIRED,
281 suppressif ( questionref(SelectedDiskAvailableActions) & HII_ACTION_DISABLE_USER ) == 0;
282 grayoutif ideqval OpalHiiConfig.OpalRequest.SetUserPwd == 1;
283 grayoutif ideqval OpalHiiConfig.OpalRequest.Revert == 1;
284 grayoutif ideqval OpalHiiConfig.OpalRequest.PsidRevert == 1;
285 checkbox varid = OpalHiiConfig.OpalRequest.DisableUser,
286 prompt = STRING_TOKEN(STR_DISK_INFO_DISABLE_USER),
287 help = STRING_TOKEN(STR_DISK_INFO_DISABLE_USER_HELP),
288 flags = INTERACTIVE | RESET_REQUIRED,
296 suppressif ( questionref(SelectedDiskAvailableActions) & HII_ACTION_ENABLE_FEATURE ) == 0;
297 grayoutif ideqval OpalHiiConfig.OpalRequest.PsidRevert == 1;
298 checkbox varid = OpalHiiConfig.OpalRequest.EnableFeature,
299 prompt = STRING_TOKEN(STR_DISK_INFO_ENABLE_FEATURE),
300 help = STRING_TOKEN(STR_DISK_INFO_ENABLE_FEATURE_HELP),
301 flags = INTERACTIVE | RESET_REQUIRED,
307 endform; // DISK INFO FORM