]>
Commit | Line | Data |
---|---|---|
a06875e1 ED |
1 | /** @file\r |
2 | \r | |
3 | Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>\r | |
4 | This program and the accompanying materials\r | |
5 | are licensed and made available under the terms and conditions of the BSD License\r | |
6 | which accompanies this distribution. The full text of the license may be found at\r | |
7 | http://opensource.org/licenses/bsd-license.php\r | |
8 | \r | |
9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r | |
10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r | |
11 | \r | |
12 | **/\r | |
13 | #include "OpalHiiFormValues.h"\r | |
14 | \r | |
15 | \r | |
16 | #define EFI_HII_PLATFORM_SETUP_FORMSET_GUID \\r | |
17 | { 0x93039971, 0x8545, 0x4b04, { 0xb4, 0x5e, 0x32, 0xeb, 0x83, 0x26, 0x4, 0xe } }\r | |
18 | \r | |
19 | formset\r | |
20 | guid = SETUP_FORMSET_GUID,\r | |
21 | title = STRING_TOKEN(STR_OPAL),\r | |
22 | help = STRING_TOKEN(STR_FORM_SET_HELP),\r | |
23 | classguid = EFI_HII_PLATFORM_SETUP_FORMSET_GUID,\r | |
24 | \r | |
25 | // Define a Buffer Storage (EFI_IFR_VARSTORE) that will be filled\r | |
26 | // out initially through extractConfig call\r | |
27 | varstore OPAL_HII_CONFIGURATION, // This is the Data structure type\r | |
28 | name = OpalHiiConfig, // Define referenced name in vfr\r | |
29 | guid = SETUP_VARIABLE_GUID; // GUID of this Buffer storage\r | |
30 | \r | |
31 | form formid = FORMID_VALUE_MAIN_MENU,\r | |
32 | title = STRING_TOKEN(STR_OPAL);\r | |
33 | \r | |
34 | //CONFIG_VARIABLE(HII_KEY(HII_KEY_ID_VAR_SUPPORTED_DISKS), SupportedDisks, 0x0, 0xFFFF);\r | |
35 | suppressif TRUE;\r | |
36 | numeric\r | |
37 | name = SupportedDisks,\r | |
38 | varid = OpalHiiConfig.SupportedDisks,\r | |
39 | prompt = STRING_TOKEN(STR_NULL),\r | |
40 | help = STRING_TOKEN(STR_NULL),\r | |
41 | flags = INTERACTIVE,\r | |
42 | key = 0x800E, //32782,\r | |
43 | minimum = 0x0,\r | |
44 | maximum = 0xFFFF,\r | |
45 | endnumeric;\r | |
46 | endif;\r | |
47 | \r | |
48 | subtitle text = STRING_TOKEN(STR_MAIN_OPAL_VERSION);\r | |
49 | \r | |
50 | subtitle text = STRING_TOKEN(STR_NULL);\r | |
51 | \r | |
52 | text\r | |
53 | help = STRING_TOKEN(STR_NULL),\r | |
54 | text = STRING_TOKEN(STR_MAIN_PHY_DISKS_LBL);\r | |
55 | \r | |
56 | subtitle text = STRING_TOKEN(STR_NULL);\r | |
57 | \r | |
58 | //DISK( 0 );\r | |
59 | suppressif ( questionref(SupportedDisks) & ( 0x1 ) ) == 0;\r | |
60 | goto FORMID_VALUE_DISK_INFO_FORM_MAIN,\r | |
61 | prompt = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_0 ),\r | |
62 | help = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_HELP),\r | |
63 | flags = INTERACTIVE, \\r | |
64 | key = 0x8001; //32769\r | |
65 | endif;\r | |
66 | \r | |
67 | //DISK( 1 );\r | |
68 | suppressif ( questionref(SupportedDisks) & ( 0x2 ) ) == 0;\r | |
69 | goto FORMID_VALUE_DISK_INFO_FORM_MAIN,\r | |
70 | prompt = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_1 ),\r | |
71 | help = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_HELP),\r | |
72 | flags = INTERACTIVE, \\r | |
73 | key = 0x8101; //33025\r | |
74 | endif;\r | |
75 | \r | |
76 | //DISK( 2 );\r | |
77 | suppressif ( questionref(SupportedDisks) & ( 0x4 ) ) == 0;\r | |
78 | goto FORMID_VALUE_DISK_INFO_FORM_MAIN,\r | |
79 | prompt = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_2 ),\r | |
80 | help = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_HELP),\r | |
81 | flags = INTERACTIVE, \\r | |
82 | key = 0x8201; //33281\r | |
83 | endif;\r | |
84 | \r | |
85 | //DISK( 3 );\r | |
86 | suppressif ( questionref(SupportedDisks) & ( 0x8 ) ) == 0;\r | |
87 | goto FORMID_VALUE_DISK_INFO_FORM_MAIN,\r | |
88 | prompt = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_3 ),\r | |
89 | help = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_HELP),\r | |
90 | flags = INTERACTIVE, \\r | |
91 | key = 0x8301; // 33537\r | |
92 | endif;\r | |
93 | \r | |
94 | //DISK( 4 );\r | |
95 | suppressif ( questionref(SupportedDisks) & ( 0x10 ) ) == 0;\r | |
96 | goto FORMID_VALUE_DISK_INFO_FORM_MAIN,\r | |
97 | prompt = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_4 ),\r | |
98 | help = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_HELP),\r | |
99 | flags = INTERACTIVE, \\r | |
100 | key = 0x8401; // 33793\r | |
101 | endif;\r | |
102 | \r | |
103 | //DISK( 5 );\r | |
104 | suppressif ( questionref(SupportedDisks) & ( 0x20 ) ) == 0;\r | |
105 | goto FORMID_VALUE_DISK_INFO_FORM_MAIN,\r | |
106 | prompt = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_5 ),\r | |
107 | help = STRING_TOKEN(STR_MAIN_GOTO_DISK_INFO_HELP),\r | |
108 | flags = INTERACTIVE, \\r | |
109 | key = 0x8501; // 34049\r | |
110 | endif;\r | |
111 | \r | |
112 | //No disks on system\r | |
113 | suppressif ideqval OpalHiiConfig.NumDisks > 0;\r | |
114 | text\r | |
115 | help = STRING_TOKEN(STR_NULL),\r | |
116 | text = STRING_TOKEN(STR_MAIN_NO_DISKS_PRESENT_LBL);\r | |
117 | endif;\r | |
118 | \r | |
119 | endform; // MAIN MENU FORM\r | |
120 | \r | |
121 | //\r | |
122 | ///////////////// DISK INFO FORM /////////////////\r | |
123 | //\r | |
124 | form formid = FORMID_VALUE_DISK_INFO_FORM_MAIN,\r | |
125 | title = STRING_TOKEN(STR_OPAL);\r | |
126 | \r | |
127 | suppressif TRUE;\r | |
128 | numeric\r | |
129 | name = SelectedDiskAvailableActions,\r | |
130 | varid = OpalHiiConfig.SelectedDiskAvailableActions,\r | |
131 | prompt = STRING_TOKEN(STR_NULL),\r | |
132 | help = STRING_TOKEN(STR_NULL),\r | |
133 | flags = INTERACTIVE,\r | |
134 | key = 0x800F, // 32783\r | |
135 | minimum = 0x0,\r | |
136 | maximum = 0xFFFF,\r | |
137 | endnumeric;\r | |
138 | endif;\r | |
139 | \r | |
140 | subtitle text = STRING_TOKEN(STR_MAIN_OPAL_VERSION);\r | |
141 | \r | |
142 | subtitle text = STRING_TOKEN(STR_NULL);\r | |
143 | \r | |
144 | text\r | |
145 | help = STRING_TOKEN(STR_NULL),\r | |
146 | text = STRING_TOKEN(STR_DISK_INFO_SELECTED_DISK_NAME);\r | |
147 | \r | |
148 | subtitle text = STRING_TOKEN(STR_NULL);\r | |
149 | \r | |
150 | suppressif ( questionref(SelectedDiskAvailableActions) & HII_ACTION_LOCK ) == 0;\r | |
151 | goto FORMID_VALUE_DISK_ACTION_FORM,\r | |
152 | prompt = STRING_TOKEN(STR_DISK_INFO_LOCK),\r | |
153 | help = STRING_TOKEN(STR_DISK_INFO_GOTO_LOCK_HELP),\r | |
154 | flags = INTERACTIVE,\r | |
155 | key = 0x8002; // 32770\r | |
156 | endif;\r | |
157 | \r | |
158 | suppressif ( questionref(SelectedDiskAvailableActions) & HII_ACTION_UNLOCK ) == 0;\r | |
159 | goto FORMID_VALUE_DISK_ACTION_FORM,\r | |
160 | prompt = STRING_TOKEN(STR_DISK_INFO_UNLOCK),\r | |
161 | help = STRING_TOKEN(STR_DISK_INFO_GOTO_UNLOCK_HELP),\r | |
162 | flags = INTERACTIVE,\r | |
163 | key = 0x8003; //32771;\r | |
164 | endif;\r | |
165 | \r | |
166 | suppressif ( questionref(SelectedDiskAvailableActions) & HII_ACTION_SET_ADMIN_PWD ) == 0;\r | |
167 | goto FORMID_VALUE_DISK_ACTION_FORM,\r | |
168 | prompt = STRING_TOKEN(STR_DISK_INFO_SET_ADMIN_PSWD),\r | |
169 | help = STRING_TOKEN(STR_DISK_INFO_GOTO_SET_ADMIN_PSWD_HELP),\r | |
170 | flags = INTERACTIVE,\r | |
171 | key = 0x8004; //32772;\r | |
172 | endif;\r | |
173 | \r | |
174 | suppressif ( questionref(SelectedDiskAvailableActions) & HII_ACTION_SET_USER_PWD ) == 0;\r | |
175 | goto FORMID_VALUE_DISK_ACTION_FORM,\r | |
176 | prompt = STRING_TOKEN(STR_DISK_INFO_SET_USER_PSWD),\r | |
177 | help = STRING_TOKEN(STR_DISK_INFO_GOTO_SET_USER_PSWD_HELP),\r | |
178 | flags = INTERACTIVE,\r | |
179 | key = 0x8005; //32773;\r | |
180 | endif;\r | |
181 | \r | |
182 | suppressif ( questionref(SelectedDiskAvailableActions) & HII_ACTION_SECURE_ERASE ) == 0;\r | |
183 | goto FORMID_VALUE_DISK_ACTION_FORM,\r | |
184 | prompt = STRING_TOKEN(STR_DISK_INFO_SECURE_ERASE),\r | |
185 | help = STRING_TOKEN(STR_DISK_INFO_GOTO_SECURE_ERASE_HELP),\r | |
186 | flags = INTERACTIVE,\r | |
187 | key = 0x8006; //32774;\r | |
188 | endif;\r | |
189 | \r | |
190 | suppressif ( questionref(SelectedDiskAvailableActions) & HII_ACTION_REVERT ) == 0;\r | |
191 | goto FORMID_VALUE_DISK_ACTION_FORM,\r | |
192 | prompt = STRING_TOKEN(STR_DISK_INFO_REVERT),\r | |
193 | help = STRING_TOKEN(STR_DISK_INFO_GOTO_PSID_REVERT_HELP),\r | |
194 | flags = INTERACTIVE,\r | |
195 | key = 0x8008; //32776;\r | |
196 | endif;\r | |
197 | \r | |
198 | suppressif ( questionref(SelectedDiskAvailableActions) & HII_ACTION_PSID_REVERT ) == 0;\r | |
199 | goto FORMID_VALUE_DISK_ACTION_FORM,\r | |
200 | prompt = STRING_TOKEN(STR_DISK_INFO_PSID_REVERT),\r | |
201 | help = STRING_TOKEN(STR_DISK_INFO_GOTO_PSID_REVERT_HELP),\r | |
202 | flags = INTERACTIVE,\r | |
203 | key = 0x8007; //32775;\r | |
204 | endif;\r | |
205 | \r | |
206 | suppressif ( questionref(SelectedDiskAvailableActions) & HII_ACTION_DISABLE_USER ) == 0;\r | |
207 | goto FORMID_VALUE_DISK_ACTION_FORM,\r | |
208 | prompt = STRING_TOKEN(STR_DISK_INFO_DISABLE_USER),\r | |
209 | help = STRING_TOKEN(STR_DISK_INFO_GOTO_DISABLE_USER_HELP),\r | |
210 | flags = INTERACTIVE,\r | |
211 | key = 0x8009; //32777;\r | |
212 | endif;\r | |
213 | \r | |
214 | suppressif ( questionref(SelectedDiskAvailableActions) & HII_ACTION_ENABLE_FEATURE ) == 0;\r | |
215 | goto FORMID_VALUE_DISK_ACTION_FORM,\r | |
216 | prompt = STRING_TOKEN(STR_DISK_INFO_ENABLE_FEATURE),\r | |
217 | help = STRING_TOKEN(STR_DISK_INFO_GOTO_ENABLE_FEATURE_HELP),\r | |
218 | flags = INTERACTIVE,\r | |
219 | key = 0x800A; //32778;\r | |
220 | endif;\r | |
221 | \r | |
222 | suppressif ( questionref(SelectedDiskAvailableActions) & HII_ACTION_ENABLE_BLOCKSID ) == 0;\r | |
223 | oneof varid = OpalHiiConfig.EnableBlockSid,\r | |
224 | questionid = 0x8017, // 32791,\r | |
225 | prompt = STRING_TOKEN(STR_DISK_INFO_ENABLE_BLOCKSID),\r | |
226 | help = STRING_TOKEN(STR_DISK_INFO_GOTO_ENABLE_BLOCKSID_HELP),\r | |
227 | flags = INTERACTIVE,\r | |
228 | option text = STRING_TOKEN(STR_DISABLED), value = 0, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED;\r | |
229 | option text = STRING_TOKEN(STR_ENABLED), value = 1, flags = RESET_REQUIRED;\r | |
230 | endoneof;\r | |
231 | endif;\r | |
232 | \r | |
233 | endform; // DISK INFO FORM\r | |
234 | \r | |
235 | //\r | |
236 | ///////////////// DISK ACTION FORM /////////////////\r | |
237 | //\r | |
238 | form formid = FORMID_VALUE_DISK_ACTION_FORM,\r | |
239 | title = STRING_TOKEN(STR_OPAL);\r | |
240 | \r | |
241 | suppressif TRUE;\r | |
242 | numeric\r | |
243 | name = AvailableFields,\r | |
244 | varid = OpalHiiConfig.AvailableFields,\r | |
245 | prompt = STRING_TOKEN(STR_NULL),\r | |
246 | help = STRING_TOKEN(STR_NULL),\r | |
247 | flags = INTERACTIVE,\r | |
248 | key = 0x8012, //32786,\r | |
249 | minimum = 0x0,\r | |
250 | maximum = 0xFFFF,\r | |
251 | endnumeric;\r | |
252 | endif;\r | |
253 | \r | |
254 | subtitle text = STRING_TOKEN(STR_MAIN_OPAL_VERSION);\r | |
255 | \r | |
256 | subtitle text = STRING_TOKEN(STR_NULL);\r | |
257 | \r | |
258 | text\r | |
259 | help = STRING_TOKEN(STR_NULL),\r | |
260 | text = STRING_TOKEN(STR_DISK_INFO_SELECTED_DISK_NAME);\r | |
261 | \r | |
262 | subtitle text = STRING_TOKEN(STR_NULL);\r | |
263 | \r | |
264 | text\r | |
265 | help = STRING_TOKEN(STR_NULL),\r | |
266 | text = STRING_TOKEN(STR_DISK_ACTION_LBL);\r | |
267 | \r | |
268 | subtitle text = STRING_TOKEN(STR_NULL);\r | |
269 | \r | |
270 | suppressif (questionref(AvailableFields) & HII_FIELD_KEEP_USER_DATA) == 0;\r | |
271 | grayoutif (questionref(AvailableFields) & HII_FIELD_KEEP_USER_DATA_FORCED) != 0;\r | |
272 | checkbox\r | |
273 | name = MyCheckbox,\r | |
274 | varid = OpalHiiConfig.KeepUserData,\r | |
275 | prompt = STRING_TOKEN(STR_KEEP_USER_DATA_PROMPT),\r | |
276 | help = STRING_TOKEN(STR_KEEP_USER_DATA_HELP),\r | |
277 | key = 0x8011, //32785,\r | |
278 | endcheckbox;\r | |
279 | \r | |
280 | //EMPTY_LINE;\r | |
281 | text\r | |
282 | help = STRING_TOKEN(STR_NULL),\r | |
283 | text = STRING_TOKEN(STR_NULL);\r | |
284 | endif;\r | |
285 | endif;\r | |
286 | \r | |
287 | suppressif (questionref(AvailableFields) & HII_FIELD_PASSWORD) == 0;\r | |
288 | password\r | |
289 | varid = OpalHiiConfig.Password,\r | |
290 | prompt = STRING_TOKEN(STR_PASSWORD_PROMPT),\r | |
291 | help = STRING_TOKEN(STR_PASSWORD_HELP),\r | |
292 | flags = INTERACTIVE,\r | |
293 | key = 0x800C, //32780,\r | |
294 | minsize = 6,\r | |
295 | maxsize = 20,\r | |
296 | endpassword;\r | |
297 | endif;\r | |
298 | \r | |
299 | suppressif (questionref(AvailableFields) & HII_FIELD_PSID) == 0;\r | |
300 | string\r | |
301 | varid = OpalHiiConfig.Psid,\r | |
302 | prompt = STRING_TOKEN(STR_REVERT_PROMPT),\r | |
303 | help = STRING_TOKEN(STR_REVERT_HELP),\r | |
304 | flags = INTERACTIVE,\r | |
305 | key = 0x800D, //32781,\r | |
306 | minsize = PSID_CHARACTER_LENGTH,\r | |
307 | maxsize = PSID_CHARACTER_LENGTH,\r | |
308 | endstring;\r | |
309 | endif;\r | |
310 | \r | |
311 | subtitle text = STRING_TOKEN(STR_NULL);\r | |
312 | \r | |
313 | text\r | |
314 | help = STRING_TOKEN(STR_NULL),\r | |
315 | text = STRING_TOKEN(STR_ACTION_STATUS);\r | |
316 | \r | |
317 | subtitle text = STRING_TOKEN(STR_NULL);\r | |
318 | \r | |
319 | goto FORMID_VALUE_MAIN_MENU,\r | |
320 | prompt = STRING_TOKEN(STR_GOTO_HOME),\r | |
321 | help = STRING_TOKEN(STR_GOTO_HOME_HELP),\r | |
322 | flags = INTERACTIVE,\r | |
323 | key = 0x8000; //32768;\r | |
324 | \r | |
325 | endform; // DISK ACTION FORM\r | |
326 | \r | |
327 | endformset;\r |