3 Copyright (c) 2016, 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),
42 key = 0x800E, //32782,
48 subtitle text = STRING_TOKEN(STR_MAIN_OPAL_VERSION);
50 subtitle text = STRING_TOKEN(STR_NULL);
53 help = STRING_TOKEN(STR_NULL),
54 text = STRING_TOKEN(STR_MAIN_PHY_DISKS_LBL);
56 subtitle text = STRING_TOKEN(STR_NULL);
59 suppressif ( questionref(SupportedDisks) & ( 0x1 ) ) == 0;
60 goto FORMID_VALUE_DISK_INFO_FORM_MAIN,
61 prompt = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_0 ),
62 help = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_HELP),
63 flags = INTERACTIVE, \
68 suppressif ( questionref(SupportedDisks) & ( 0x2 ) ) == 0;
69 goto FORMID_VALUE_DISK_INFO_FORM_MAIN,
70 prompt = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_1 ),
71 help = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_HELP),
72 flags = INTERACTIVE, \
77 suppressif ( questionref(SupportedDisks) & ( 0x4 ) ) == 0;
78 goto FORMID_VALUE_DISK_INFO_FORM_MAIN,
79 prompt = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_2 ),
80 help = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_HELP),
81 flags = INTERACTIVE, \
86 suppressif ( questionref(SupportedDisks) & ( 0x8 ) ) == 0;
87 goto FORMID_VALUE_DISK_INFO_FORM_MAIN,
88 prompt = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_3 ),
89 help = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_HELP),
90 flags = INTERACTIVE, \
91 key = 0x8301; // 33537
95 suppressif ( questionref(SupportedDisks) & ( 0x10 ) ) == 0;
96 goto FORMID_VALUE_DISK_INFO_FORM_MAIN,
97 prompt = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_4 ),
98 help = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_HELP),
99 flags = INTERACTIVE, \
100 key = 0x8401; // 33793
104 suppressif ( questionref(SupportedDisks) & ( 0x20 ) ) == 0;
105 goto FORMID_VALUE_DISK_INFO_FORM_MAIN,
106 prompt = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_5 ),
107 help = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_HELP),
108 flags = INTERACTIVE, \
109 key = 0x8501; // 34049
113 suppressif ideqval OpalHiiConfig.NumDisks > 0;
115 help = STRING_TOKEN(STR_NULL),
116 text = STRING_TOKEN(STR_MAIN_NO_DISKS_PRESENT_LBL);
119 subtitle text = STRING_TOKEN(STR_NULL);
121 oneof varid = OpalHiiConfig.EnableBlockSid,
122 questionid = 0x8017, // 32791,
123 prompt = STRING_TOKEN(STR_DISK_INFO_ENABLE_BLOCKSID),
124 help = STRING_TOKEN(STR_DISK_INFO_GOTO_ENABLE_BLOCKSID_HELP),
126 option text = STRING_TOKEN(STR_DISABLED), value = 0, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;
127 option text = STRING_TOKEN(STR_ENABLED), value = 1, flags = RESET_REQUIRED;
130 endform; // MAIN MENU FORM
133 ///////////////// DISK INFO FORM /////////////////
135 form formid = FORMID_VALUE_DISK_INFO_FORM_MAIN,
136 title = STRING_TOKEN(STR_OPAL);
140 name = SelectedDiskAvailableActions,
141 varid = OpalHiiConfig.SelectedDiskAvailableActions,
142 prompt = STRING_TOKEN(STR_NULL),
143 help = STRING_TOKEN(STR_NULL),
145 key = 0x800F, // 32783
151 subtitle text = STRING_TOKEN(STR_MAIN_OPAL_VERSION);
153 subtitle text = STRING_TOKEN(STR_NULL);
156 help = STRING_TOKEN(STR_NULL),
157 text = STRING_TOKEN(STR_DISK_INFO_SELECTED_DISK_NAME);
159 subtitle text = STRING_TOKEN(STR_NULL);
161 suppressif ( questionref(SelectedDiskAvailableActions) & HII_ACTION_LOCK ) == 0;
162 goto FORMID_VALUE_DISK_ACTION_FORM,
163 prompt = STRING_TOKEN(STR_DISK_INFO_LOCK),
164 help = STRING_TOKEN(STR_DISK_INFO_GOTO_LOCK_HELP),
166 key = 0x8002; // 32770
169 suppressif ( questionref(SelectedDiskAvailableActions) & HII_ACTION_UNLOCK ) == 0;
170 goto FORMID_VALUE_DISK_ACTION_FORM,
171 prompt = STRING_TOKEN(STR_DISK_INFO_UNLOCK),
172 help = STRING_TOKEN(STR_DISK_INFO_GOTO_UNLOCK_HELP),
174 key = 0x8003; //32771;
177 suppressif ( questionref(SelectedDiskAvailableActions) & HII_ACTION_SET_ADMIN_PWD ) == 0;
178 goto FORMID_VALUE_DISK_ACTION_FORM,
179 prompt = STRING_TOKEN(STR_DISK_INFO_SET_ADMIN_PSWD),
180 help = STRING_TOKEN(STR_DISK_INFO_GOTO_SET_ADMIN_PSWD_HELP),
182 key = 0x8004; //32772;
185 suppressif ( questionref(SelectedDiskAvailableActions) & HII_ACTION_SET_USER_PWD ) == 0;
186 goto FORMID_VALUE_DISK_ACTION_FORM,
187 prompt = STRING_TOKEN(STR_DISK_INFO_SET_USER_PSWD),
188 help = STRING_TOKEN(STR_DISK_INFO_GOTO_SET_USER_PSWD_HELP),
190 key = 0x8005; //32773;
193 suppressif ( questionref(SelectedDiskAvailableActions) & HII_ACTION_SECURE_ERASE ) == 0;
194 goto FORMID_VALUE_DISK_ACTION_FORM,
195 prompt = STRING_TOKEN(STR_DISK_INFO_SECURE_ERASE),
196 help = STRING_TOKEN(STR_DISK_INFO_GOTO_SECURE_ERASE_HELP),
198 key = 0x8006; //32774;
201 suppressif ( questionref(SelectedDiskAvailableActions) & HII_ACTION_REVERT ) == 0;
202 goto FORMID_VALUE_DISK_ACTION_FORM,
203 prompt = STRING_TOKEN(STR_DISK_INFO_REVERT),
204 help = STRING_TOKEN(STR_DISK_INFO_GOTO_PSID_REVERT_HELP),
206 key = 0x8008; //32776;
209 suppressif ( questionref(SelectedDiskAvailableActions) & HII_ACTION_PSID_REVERT ) == 0;
210 goto FORMID_VALUE_DISK_ACTION_FORM,
211 prompt = STRING_TOKEN(STR_DISK_INFO_PSID_REVERT),
212 help = STRING_TOKEN(STR_DISK_INFO_GOTO_PSID_REVERT_HELP),
214 key = 0x8007; //32775;
217 suppressif ( questionref(SelectedDiskAvailableActions) & HII_ACTION_DISABLE_USER ) == 0;
218 goto FORMID_VALUE_DISK_ACTION_FORM,
219 prompt = STRING_TOKEN(STR_DISK_INFO_DISABLE_USER),
220 help = STRING_TOKEN(STR_DISK_INFO_GOTO_DISABLE_USER_HELP),
222 key = 0x8009; //32777;
225 suppressif ( questionref(SelectedDiskAvailableActions) & HII_ACTION_ENABLE_FEATURE ) == 0;
226 goto FORMID_VALUE_DISK_ACTION_FORM,
227 prompt = STRING_TOKEN(STR_DISK_INFO_ENABLE_FEATURE),
228 help = STRING_TOKEN(STR_DISK_INFO_GOTO_ENABLE_FEATURE_HELP),
230 key = 0x800A; //32778;
233 endform; // DISK INFO FORM
236 ///////////////// DISK ACTION FORM /////////////////
238 form formid = FORMID_VALUE_DISK_ACTION_FORM,
239 title = STRING_TOKEN(STR_OPAL);
243 name = AvailableFields,
244 varid = OpalHiiConfig.AvailableFields,
245 prompt = STRING_TOKEN(STR_NULL),
246 help = STRING_TOKEN(STR_NULL),
248 key = 0x8012, //32786,
254 subtitle text = STRING_TOKEN(STR_MAIN_OPAL_VERSION);
256 subtitle text = STRING_TOKEN(STR_NULL);
259 help = STRING_TOKEN(STR_NULL),
260 text = STRING_TOKEN(STR_DISK_INFO_SELECTED_DISK_NAME);
262 subtitle text = STRING_TOKEN(STR_NULL);
265 help = STRING_TOKEN(STR_NULL),
266 text = STRING_TOKEN(STR_DISK_ACTION_LBL);
268 subtitle text = STRING_TOKEN(STR_NULL);
270 suppressif (questionref(AvailableFields) & HII_FIELD_KEEP_USER_DATA) == 0;
271 grayoutif (questionref(AvailableFields) & HII_FIELD_KEEP_USER_DATA_FORCED) != 0;
274 varid = OpalHiiConfig.KeepUserData,
275 prompt = STRING_TOKEN(STR_KEEP_USER_DATA_PROMPT),
276 help = STRING_TOKEN(STR_KEEP_USER_DATA_HELP),
277 key = 0x8011, //32785,
282 help = STRING_TOKEN(STR_NULL),
283 text = STRING_TOKEN(STR_NULL);
287 suppressif (questionref(AvailableFields) & HII_FIELD_PASSWORD) == 0;
289 varid = OpalHiiConfig.Password,
290 prompt = STRING_TOKEN(STR_PASSWORD_PROMPT),
291 help = STRING_TOKEN(STR_PASSWORD_HELP),
293 key = 0x800C, //32780,
299 suppressif (questionref(AvailableFields) & HII_FIELD_PSID) == 0;
301 varid = OpalHiiConfig.Psid,
302 prompt = STRING_TOKEN(STR_REVERT_PROMPT),
303 help = STRING_TOKEN(STR_REVERT_HELP),
305 key = 0x800D, //32781,
306 minsize = PSID_CHARACTER_LENGTH,
307 maxsize = PSID_CHARACTER_LENGTH,
311 subtitle text = STRING_TOKEN(STR_NULL);
314 help = STRING_TOKEN(STR_NULL),
315 text = STRING_TOKEN(STR_ACTION_STATUS);
317 subtitle text = STRING_TOKEN(STR_NULL);
319 goto FORMID_VALUE_MAIN_MENU,
320 prompt = STRING_TOKEN(STR_GOTO_HOME),
321 help = STRING_TOKEN(STR_GOTO_HOME_HELP),
323 key = 0x8000; //32768;
325 endform; // DISK ACTION FORM