]> git.proxmox.com Git - mirror_edk2.git/blame - MdeModulePkg/Library/BootMaintenanceManagerUiLib/FormGuid.h
MdeModulePkg: Replace BSD License with BSD+Patent License
[mirror_edk2.git] / MdeModulePkg / Library / BootMaintenanceManagerUiLib / FormGuid.h
CommitLineData
4af04335
DB
1/** @file\r
2Formset guids, form id and VarStore data structure for Boot Maintenance Manager.\r
3\r
d1102dba 4Copyright (c) 2004 - 2018, Intel Corporation. All rights reserved.<BR>\r
9d510e61 5SPDX-License-Identifier: BSD-2-Clause-Patent\r
4af04335
DB
6\r
7**/\r
8#ifndef _FORM_GUID_H_\r
9#define _FORM_GUID_H_\r
10\r
11#define BOOT_MAINT_FORMSET_GUID \\r
12 { \\r
13 0x642237c7, 0x35d4, 0x472d, {0x83, 0x65, 0x12, 0xe0, 0xcc, 0xf2, 0x7a, 0x22} \\r
14 }\r
15\r
16#define FORM_MAIN_ID 0x1001\r
17#define FORM_BOOT_ADD_ID 0x1002\r
18#define FORM_BOOT_DEL_ID 0x1003\r
19#define FORM_BOOT_CHG_ID 0x1004\r
20#define FORM_DRV_ADD_ID 0x1005\r
21#define FORM_DRV_DEL_ID 0x1006\r
22#define FORM_DRV_CHG_ID 0x1007\r
23#define FORM_CON_MAIN_ID 0x1008\r
24#define FORM_CON_IN_ID 0x1009\r
25#define FORM_CON_OUT_ID 0x100A\r
26#define FORM_CON_ERR_ID 0x100B\r
27#define FORM_FILE_SEEK_ID 0x100C\r
28#define FORM_FILE_NEW_SEEK_ID 0x100D\r
29#define FORM_DRV_ADD_FILE_ID 0x100E\r
30#define FORM_DRV_ADD_HANDLE_ID 0x100F\r
31#define FORM_DRV_ADD_HANDLE_DESC_ID 0x1010\r
32#define FORM_BOOT_NEXT_ID 0x1011\r
33#define FORM_TIME_OUT_ID 0x1012\r
34#define FORM_BOOT_SETUP_ID 0x1014\r
35#define FORM_DRIVER_SETUP_ID 0x1015\r
36#define FORM_BOOT_LEGACY_DEVICE_ID 0x1016\r
37#define FORM_CON_COM_ID 0x1017\r
38#define FORM_CON_COM_SETUP_ID 0x1018\r
39#define FORM_BOOT_ADD_DESCRIPTION_ID 0x101F\r
40#define FORM_DRIVER_ADD_FILE_DESCRIPTION_ID 0x1020\r
41#define FORM_CON_MODE_ID 0x1021\r
4af04335
DB
42#define FORM_BOOT_FROM_FILE_ID 0x1024\r
43\r
44\r
45#define MAXIMUM_FORM_ID 0x10FF\r
46\r
47#define KEY_VALUE_COM_SET_BAUD_RATE 0x1101\r
48#define KEY_VALUE_COM_SET_DATA_BITS 0x1102\r
49#define KEY_VALUE_COM_SET_STOP_BITS 0x1103\r
50#define KEY_VALUE_COM_SET_PARITY 0x1104\r
51#define KEY_VALUE_COM_SET_TERMI_TYPE 0x1105\r
52#define KEY_VALUE_MAIN_BOOT_NEXT 0x1106\r
53#define KEY_VALUE_BOOT_ADD_DESC_DATA 0x1107\r
54#define KEY_VALUE_BOOT_ADD_OPT_DATA 0x1108\r
55#define KEY_VALUE_DRIVER_ADD_DESC_DATA 0x1109\r
56#define KEY_VALUE_DRIVER_ADD_OPT_DATA 0x110A\r
57#define KEY_VALUE_SAVE_AND_EXIT 0x110B\r
58#define KEY_VALUE_NO_SAVE_AND_EXIT 0x110C\r
59#define KEY_VALUE_BOOT_FROM_FILE 0x110D\r
60#define FORM_RESET 0x110E\r
61#define KEY_VALUE_BOOT_DESCRIPTION 0x110F\r
62#define KEY_VALUE_BOOT_OPTION 0x1110\r
63#define KEY_VALUE_DRIVER_DESCRIPTION 0x1111\r
64#define KEY_VALUE_DRIVER_OPTION 0x1112\r
65#define KEY_VALUE_SAVE_AND_EXIT_BOOT 0x1113\r
66#define KEY_VALUE_NO_SAVE_AND_EXIT_BOOT 0x1114\r
67#define KEY_VALUE_SAVE_AND_EXIT_DRIVER 0x1115\r
68#define KEY_VALUE_NO_SAVE_AND_EXIT_DRIVER 0x1116\r
984cb646 69#define KEY_VALUE_TRIGGER_FORM_OPEN_ACTION 0x1117\r
4af04335
DB
70\r
71#define MAXIMUM_NORMAL_KEY_VALUE 0x11FF\r
72\r
73//\r
74// Varstore ID defined for Buffer Storage\r
75//\r
76#define VARSTORE_ID_BOOT_MAINT 0x1000\r
77\r
78//\r
79// End Label\r
80//\r
a85be3ae
ED
81#define LABEL_FORM_MAIN_START 0xfffc\r
82#define LABEL_FORM_MAIN_END 0xfffd\r
83\r
4af04335
DB
84#define LABEL_BMM_PLATFORM_INFORMATION 0xfffe\r
85#define LABEL_END 0xffff\r
86#define MAX_MENU_NUMBER 100\r
87\r
a85be3ae 88\r
4af04335
DB
89///\r
90/// This is the structure that will be used to store the\r
91/// question's current value. Use it at initialize time to\r
92/// set default value for each question. When using at run\r
93/// time, this map is returned by the callback function,\r
94/// so dynamically changing the question's value will be\r
95/// possible through this mechanism\r
96///\r
97typedef struct {\r
98 //\r
99 // Three questions displayed at the main page\r
100 // for Timeout, BootNext, Variables respectively\r
101 //\r
102 UINT16 BootTimeOut;\r
f7986526 103 UINT32 BootNext;\r
4af04335
DB
104\r
105 //\r
106 // This is the COM1 Attributes value storage\r
107 //\r
108 UINT8 COM1BaudRate;\r
109 UINT8 COM1DataRate;\r
110 UINT8 COM1StopBits;\r
111 UINT8 COM1Parity;\r
112 UINT8 COM1TerminalType;\r
113\r
114 //\r
115 // This is the COM2 Attributes value storage\r
116 //\r
117 UINT8 COM2BaudRate;\r
118 UINT8 COM2DataRate;\r
119 UINT8 COM2StopBits;\r
120 UINT8 COM2Parity;\r
121 UINT8 COM2TerminalType;\r
122\r
123 //\r
124 // Driver Option Add Handle page storage\r
125 //\r
126 UINT16 DriverAddHandleDesc[MAX_MENU_NUMBER];\r
127 UINT16 DriverAddHandleOptionalData[MAX_MENU_NUMBER];\r
128 UINT8 DriverAddActive;\r
129 UINT8 DriverAddForceReconnect;\r
130\r
131 //\r
132 // Console Input/Output/Errorout using COM port check storage\r
133 //\r
134 UINT8 ConsoleInputCOM1;\r
135 UINT8 ConsoleInputCOM2;\r
136 UINT8 ConsoleOutputCOM1;\r
137 UINT8 ConsoleOutputCOM2;\r
138 UINT8 ConsoleErrorCOM1;\r
139 UINT8 ConsoleErrorCOM2;\r
140\r
141 //\r
142 // At most 100 input/output/errorout device for console storage\r
143 //\r
144 UINT8 ConsoleCheck[MAX_MENU_NUMBER];\r
d1102dba 145\r
4af04335
DB
146 //\r
147 // At most 100 input/output/errorout device for console storage\r
148 //\r
149 UINT8 ConsoleInCheck[MAX_MENU_NUMBER];\r
150 UINT8 ConsoleOutCheck[MAX_MENU_NUMBER];\r
151 UINT8 ConsoleErrCheck[MAX_MENU_NUMBER];\r
152\r
153 //\r
154 // Boot or Driver Option Order storage\r
155 // The value is the OptionNumber+1 because the order list value cannot be 0\r
156 // Use UINT32 to hold the potential value 0xFFFF+1=0x10000\r
157 //\r
158 UINT32 BootOptionOrder[MAX_MENU_NUMBER];\r
159 UINT32 DriverOptionOrder[MAX_MENU_NUMBER];\r
160 //\r
161 // Boot or Driver Option Delete storage\r
162 //\r
163 BOOLEAN BootOptionDel[MAX_MENU_NUMBER];\r
164 BOOLEAN DriverOptionDel[MAX_MENU_NUMBER];\r
165 BOOLEAN BootOptionDelMark[MAX_MENU_NUMBER];\r
166 BOOLEAN DriverOptionDelMark[MAX_MENU_NUMBER];\r
167\r
168 //\r
169 // This is the Terminal Attributes value storage\r
170 //\r
171 UINT8 COMBaudRate[MAX_MENU_NUMBER];\r
172 UINT8 COMDataRate[MAX_MENU_NUMBER];\r
173 UINT8 COMStopBits[MAX_MENU_NUMBER];\r
174 UINT8 COMParity[MAX_MENU_NUMBER];\r
175 UINT8 COMTerminalType[MAX_MENU_NUMBER];\r
176 UINT8 COMFlowControl[MAX_MENU_NUMBER];\r
177\r
178 //\r
179 // We use DisableMap array to record the enable/disable state of each boot device\r
180 // It should be taken as a bit array, from left to right there are totally 256 bits\r
181 // the most left one stands for BBS table item 0, and the most right one stands for item 256\r
182 // If the bit is 1, it means the boot device has been disabled.\r
183 //\r
184 UINT8 DisableMap[32];\r
185\r
186 //\r
187 // Console Output Text Mode\r
188 //\r
189 UINT16 ConsoleOutMode;\r
190\r
191 //\r
192 // UINT16 PadArea[10];\r
193 //\r
194\r
195 UINT16 BootDescriptionData[MAX_MENU_NUMBER];\r
196 UINT16 BootOptionalData[127];\r
197 UINT16 DriverDescriptionData[MAX_MENU_NUMBER];\r
198 UINT16 DriverOptionalData[127];\r
199 BOOLEAN BootOptionChanged;\r
200 BOOLEAN DriverOptionChanged;\r
201 UINT8 Active;\r
202 UINT8 ForceReconnect;\r
203} BMM_FAKE_NV_DATA;\r
204\r
205#endif\r
206\r