1///** @file
2//  Boot Maintenance Utility Formset
3//
4//  Copyright (c) 2004 - 2018, Intel Corporation. All rights reserved.<BR>
5//  SPDX-License-Identifier: BSD-2-Clause-Patent
6//
7//**/
8
9#include "FormGuid.h"
10
11formset
12  guid = BOOT_MAINT_FORMSET_GUID,
13  title = STRING_TOKEN(STR_FORM_MAIN_TITLE),
14  help = STRING_TOKEN(STR_BOOT_MAINT_MANAGER_HELP),
15  classguid = gEfiIfrFrontPageGuid,
16
17  varstore BMM_FAKE_NV_DATA,
18    varid = VARSTORE_ID_BOOT_MAINT,
19    name = BmmData,
20    guid = BOOT_MAINT_FORMSET_GUID;
21
22  form formid = FORM_MAIN_ID,
23       title = STRING_TOKEN(STR_FORM_MAIN_TITLE);
24       //
25       // Add this invisible text in order to indicate enter Boot Maintenance Manager form.
26       // To trigger the form open action.
27       //
28       suppressif TRUE;
29          text
30              help  = STRING_TOKEN(STR_NONE),
31              text  = STRING_TOKEN(STR_NONE),
32              flags = INTERACTIVE,
33              key   = KEY_VALUE_TRIGGER_FORM_OPEN_ACTION;
34       endif;
35
36    label LABEL_FORM_MAIN_START;
37    //
38    // This is where we will dynamically add a Action type op-code to show
39    // the platform information.
40    //
41    label LABEL_FORM_MAIN_END;
42
43  endform;
44
45  form formid = FORM_BOOT_SETUP_ID,
46       title = STRING_TOKEN(STR_FORM_BOOT_SETUP_TITLE);
47
48       goto FORM_MAIN_ID,
49            prompt = STRING_TOKEN(STR_FORM_GOTO_MAIN),
50            help = STRING_TOKEN(STR_FORM_GOTO_MAIN);
51            //flags = INTERACTIVE,
52            //key = FORM_MAIN_ID;
53
54       goto FORM_BOOT_SETUP_ID,
55            prompt = STRING_TOKEN(STR_FORM_BOOT_ADD_TITLE),
56            help = STRING_TOKEN(STR_FORM_BOOT_ADD_HELP),
57            flags = INTERACTIVE,
58            key = FORM_BOOT_ADD_ID;
59
60       goto FORM_BOOT_DEL_ID,
61            prompt = STRING_TOKEN(STR_FORM_BOOT_DEL_TITLE),
62            help = STRING_TOKEN(STR_FORM_BOOT_IMMEDIATE_HELP),
63            flags = INTERACTIVE,
64            key = FORM_BOOT_DEL_ID;
65
66       goto FORM_BOOT_CHG_ID,
67            prompt = STRING_TOKEN(STR_FORM_BOOT_CHG_TITLE),
68            help = STRING_TOKEN(STR_FORM_BOOT_IMMEDIATE_HELP),
69            flags = INTERACTIVE,
70            key = FORM_BOOT_CHG_ID;
71  endform;
72
73  form formid = FORM_DRIVER_SETUP_ID,
74       title = STRING_TOKEN(STR_FORM_DRIVER_SETUP_TITLE);
75
76       goto FORM_MAIN_ID,
77            prompt = STRING_TOKEN(STR_FORM_GOTO_MAIN),
78            help = STRING_TOKEN(STR_FORM_GOTO_MAIN);
79            //help = STRING_TOKEN(STR_FORM_GOTO_MAIN),
80            //flags = INTERACTIVE,
81            //key = FORM_MAIN_ID;
82
83       goto FORM_DRV_ADD_ID,
84            prompt = STRING_TOKEN(STR_FORM_DRV_ADD_TITLE),
85            help = STRING_TOKEN(STR_FORM_DRV_ADD_HELP),
86            flags = INTERACTIVE,
87            key = FORM_DRV_ADD_ID;
88
89       goto FORM_DRV_DEL_ID,
90            prompt = STRING_TOKEN(STR_FORM_DRV_DEL_TITLE),
91            help = STRING_TOKEN(STR_FORM_NEXT_BOOT_HELP),
92            flags = INTERACTIVE,
93            key = FORM_DRV_DEL_ID;
94
95       goto FORM_DRV_CHG_ID,
96            prompt = STRING_TOKEN(STR_FORM_DRV_CHG_TITLE),
97            help = STRING_TOKEN(STR_FORM_NEXT_BOOT_HELP),
98            flags = INTERACTIVE,
99            key = FORM_DRV_CHG_ID;
100  endform;
101
102   form formid = FORM_BOOT_ADD_ID,
103       title = STRING_TOKEN(STR_FORM_BOOT_ADD_DESC_TITLE);
104
105       label FORM_BOOT_ADD_ID;
106       label LABEL_END;
107
108       subtitle text = STRING_TOKEN(STR_NULL_STRING);
109
110       string    varid    = BmmData.BootDescriptionData,
111                 questionid = KEY_VALUE_BOOT_DESCRIPTION,
112                 prompt   = STRING_TOKEN(STR_LOAD_OPTION_DESC),
113                 help     = STRING_TOKEN(STR_NULL_STRING),
114                 flags    = INTERACTIVE,
115                 minsize  = 6,
116                 maxsize  = 75,
117       endstring;
118
119       string    varid    = BmmData.BootOptionalData,
120                 questionid = KEY_VALUE_BOOT_OPTION,
121                 prompt   = STRING_TOKEN(STR_OPTIONAL_DATA),
122                 help     = STRING_TOKEN(STR_NULL_STRING),
123                 flags    = INTERACTIVE,
124                 minsize  = 0,
125                 maxsize  = 120,
126       endstring;
127
128       subtitle text = STRING_TOKEN(STR_NULL_STRING);
129
130       text
131         help   = STRING_TOKEN(STR_SAVE_AND_EXIT),
132         text   = STRING_TOKEN(STR_SAVE_AND_EXIT),
133         flags  = INTERACTIVE,
134         key    = KEY_VALUE_SAVE_AND_EXIT_BOOT;
135
136       text
137         help   = STRING_TOKEN(STR_NO_SAVE_AND_EXIT),
138         text   = STRING_TOKEN(STR_NO_SAVE_AND_EXIT),
139         flags  = INTERACTIVE,
140         key    = KEY_VALUE_NO_SAVE_AND_EXIT_BOOT;
141
142  endform;
143
144  form formid = FORM_BOOT_DEL_ID,
145       title = STRING_TOKEN(STR_FORM_BOOT_DEL_TITLE);
146
147       label FORM_BOOT_DEL_ID;
148       label LABEL_END;
149  endform;
150
151  form formid = FORM_BOOT_CHG_ID,
152       title = STRING_TOKEN(STR_FORM_BOOT_CHG_TITLE);
153
154       label FORM_BOOT_CHG_ID;
155       label LABEL_END;
156
157  endform;
158
159  form formid = FORM_DRV_ADD_ID,
160       title = STRING_TOKEN(STR_FORM_DRV_ADD_TITLE);
161
162       goto FORM_MAIN_ID,
163            prompt = STRING_TOKEN(STR_FORM_GOTO_MAIN),
164            help = STRING_TOKEN(STR_FORM_GOTO_MAIN);
165            //flags = INTERACTIVE,
166            //key = FORM_MAIN_ID;
167
168       goto FORM_DRIVER_SETUP_ID,
169            prompt = STRING_TOKEN(STR_FORM_DRV_ADD_FILE_TITLE),
170            help = STRING_TOKEN(STR_FORM_DRV_ADD_FILE_TITLE),
171            flags = INTERACTIVE,
172            key = FORM_DRV_ADD_FILE_ID;
173
174  endform;
175
176  form formid = FORM_DRV_ADD_FILE_ID,
177       title = STRING_TOKEN(STR_FORM_DRV_ADD_DESC_TITLE);
178
179       label FORM_DRV_ADD_FILE_ID;
180       label LABEL_END;
181
182       subtitle text = STRING_TOKEN(STR_NULL_STRING);
183
184       string    varid    = BmmData.DriverDescriptionData,
185                 questionid = KEY_VALUE_DRIVER_DESCRIPTION,
186                 prompt   = STRING_TOKEN(STR_LOAD_OPTION_DESC),
187                 help     = STRING_TOKEN(STR_NULL_STRING),
188                 flags    = INTERACTIVE,
189                 minsize  = 6,
190                 maxsize  = 75,
191       endstring;
192
193       string    varid    = BmmData.DriverOptionalData,
194                 questionid = KEY_VALUE_DRIVER_OPTION,
195                 prompt   = STRING_TOKEN(STR_OPTIONAL_DATA),
196                 help     = STRING_TOKEN(STR_NULL_STRING),
197                 flags    = INTERACTIVE,
198                 minsize  = 0,
199                 maxsize  = 120,
200       endstring;
201
202       checkbox varid    = BmmData.ForceReconnect,
203               prompt   = STRING_TOKEN(STR_LOAD_OPTION_FORCE_RECON),
204               help     = STRING_TOKEN(STR_LOAD_OPTION_FORCE_RECON),
205               flags    = CHECKBOX_DEFAULT,
206               key      = 0,
207       endcheckbox;
208
209       subtitle text = STRING_TOKEN(STR_NULL_STRING);
210
211       text
212         help   = STRING_TOKEN(STR_SAVE_AND_EXIT),
213         text   = STRING_TOKEN(STR_SAVE_AND_EXIT),
214         flags  = INTERACTIVE,
215         key    = KEY_VALUE_SAVE_AND_EXIT_DRIVER;  //BUGBUB: allow duplicate key in one formset???
216
217       text
218         help   = STRING_TOKEN(STR_NO_SAVE_AND_EXIT),
219         text   = STRING_TOKEN(STR_NO_SAVE_AND_EXIT),
220         flags  = INTERACTIVE,
221         key    = KEY_VALUE_NO_SAVE_AND_EXIT_DRIVER;
222  endform;
223
224  form formid = FORM_DRV_DEL_ID,
225       title = STRING_TOKEN(STR_FORM_DRV_DEL_TITLE);
226
227       label FORM_DRV_DEL_ID;
228       label LABEL_END;
229
230  endform;
231
232  form formid = FORM_DRV_CHG_ID,
233       title = STRING_TOKEN(STR_FORM_DRV_CHG_TITLE);
234
235       label FORM_DRV_CHG_ID;
236       label LABEL_END;
237
238  endform;
239
240  form formid = FORM_CON_MAIN_ID,
241       title = STRING_TOKEN(STR_FORM_CON_MAIN_TITLE);
242
243       goto FORM_MAIN_ID,
244       prompt = STRING_TOKEN(STR_FORM_GOTO_MAIN),
245       help = STRING_TOKEN(STR_FORM_GOTO_MAIN);
246       //flags = INTERACTIVE,
247       //key = FORM_MAIN_ID;
248
249       goto FORM_CON_IN_ID,
250       prompt = STRING_TOKEN(STR_FORM_CON_IN_TITLE),
251       help = STRING_TOKEN(STR_FORM_CON_IN_HELP),
252       flags = INTERACTIVE,
253       key = FORM_CON_IN_ID;
254
255       goto FORM_CON_OUT_ID,
256       prompt = STRING_TOKEN(STR_FORM_CON_OUT_TITLE),
257       help = STRING_TOKEN(STR_FORM_CON_OUT_HELP),
258       flags = INTERACTIVE,
259       key = FORM_CON_OUT_ID;
260
261       goto FORM_CON_ERR_ID,
262       prompt = STRING_TOKEN(STR_FORM_STD_ERR_TITLE),
263       help = STRING_TOKEN(STR_FORM_STD_ERR_HELP),
264       flags = INTERACTIVE,
265       key = FORM_CON_ERR_ID;
266
267       goto FORM_CON_MODE_ID,
268       prompt = STRING_TOKEN(STR_FORM_MODE_TITLE),
269       help = STRING_TOKEN(STR_FORM_MODE_HELP),
270       flags = INTERACTIVE,
271       key = FORM_CON_MODE_ID;
272
273       goto FORM_CON_COM_ID,
274       prompt = STRING_TOKEN(STR_FORM_COM_TITLE),
275       help = STRING_TOKEN(STR_FORM_COM_HELP),
276       flags = INTERACTIVE,
277       key = FORM_CON_COM_ID;
278  endform;
279
280  form formid = FORM_CON_MODE_ID,
281       title = STRING_TOKEN(STR_FORM_MODE_TITLE);
282
283       label FORM_CON_MODE_ID;
284       label LABEL_END;
285  endform;
286
287  form formid = FORM_CON_COM_ID,
288       title = STRING_TOKEN(STR_FORM_COM_TITLE);
289
290       label FORM_CON_COM_ID;
291       label LABEL_END;
292  endform;
293
294  form formid = FORM_CON_COM_SETUP_ID,
295       title = STRING_TOKEN(STR_CON_COM_SETUP);
296
297       label FORM_CON_COM_SETUP_ID;
298       label LABEL_END;
299  endform;
300
301  form formid = FORM_FILE_SEEK_ID,
302       title = STRING_TOKEN(STR_FORM_BOOT_ADD_TITLE);
303
304       label FORM_FILE_SEEK_ID;
305       label LABEL_END;
306  endform;
307
308  form formid = FORM_FILE_NEW_SEEK_ID,
309       title = STRING_TOKEN(STR_FORM_BOOT_ADD_TITLE);
310
311       label FORM_FILE_NEW_SEEK_ID;
312       label LABEL_END;
313  endform;
314
315  form formid = FORM_DRV_ADD_HANDLE_ID,
316       title = STRING_TOKEN(STR_FORM_DRV_ADD_HANDLE_TITLE);
317
318       label FORM_DRV_ADD_HANDLE_ID;
319       label LABEL_END;
320  endform;
321
322  form formid = FORM_DRV_ADD_HANDLE_DESC_ID,
323       title = STRING_TOKEN(STR_FORM_DRV_ADD_DESC_TITLE);
324
325       label FORM_DRV_ADD_HANDLE_DESC_ID;
326       label LABEL_END;
327
328  endform;
329
330  form formid = FORM_CON_IN_ID,
331       title = STRING_TOKEN(STR_FORM_CON_IN_TITLE);
332
333       label FORM_CON_IN_ID;
334       label LABEL_END;
335
336  endform;
337
338  form formid = FORM_CON_OUT_ID,
339       title = STRING_TOKEN(STR_FORM_CON_OUT_TITLE);
340
341       label FORM_CON_OUT_ID;
342       label LABEL_END;
343
344  endform;
345
346  form formid = FORM_CON_ERR_ID,
347       title = STRING_TOKEN(STR_FORM_STD_ERR_TITLE);
348
349       label FORM_CON_ERR_ID;
350       label LABEL_END;
351
352  endform;
353
354endformset;
355