2 Define some data used for Boot Maint
4 Copyright (c) 2004 - 2015, Intel Corporation. All rights reserved.<BR>
5 This program and the accompanying materials
6 are licensed and made available under the terms and conditions of the BSD License
7 which accompanies this distribution. The full text of the license may be found at
8 http://opensource.org/licenses/bsd-license.php
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
15 #include "BootMaintenanceManager.h"
17 VOID
*mStartOpCodeHandle
= NULL
;
18 VOID
*mEndOpCodeHandle
= NULL
;
19 EFI_IFR_GUID_LABEL
*mStartLabel
= NULL
;
20 EFI_IFR_GUID_LABEL
*mEndLabel
= NULL
;
23 /// Terminal type string token storage
25 UINT16 TerminalType
[] = {
26 STRING_TOKEN(STR_COM_TYPE_0
),
27 STRING_TOKEN(STR_COM_TYPE_1
),
28 STRING_TOKEN(STR_COM_TYPE_2
),
29 STRING_TOKEN(STR_COM_TYPE_3
),
30 STRING_TOKEN(STR_COM_TYPE_4
),
34 /// Flow Control type string token storage
36 UINT16 mFlowControlType
[2] = {
37 STRING_TOKEN(STR_NONE_FLOW_CONTROL
),
38 STRING_TOKEN(STR_HARDWARE_FLOW_CONTROL
)
41 UINT32 mFlowControlValue
[2] = {
43 UART_FLOW_CONTROL_HARDWARE
47 /// Console Input Device Selection Menu
49 BM_MENU_OPTION ConsoleInpMenu
= {
50 BM_MENU_OPTION_SIGNATURE
,
56 /// Console Output Device Selection Menu
58 BM_MENU_OPTION ConsoleOutMenu
= {
59 BM_MENU_OPTION_SIGNATURE
,
65 /// Error Output Device Selection Menu
67 BM_MENU_OPTION ConsoleErrMenu
= {
68 BM_MENU_OPTION_SIGNATURE
,
74 /// Boot Option from variable Menu
76 BM_MENU_OPTION BootOptionMenu
= {
77 BM_MENU_OPTION_SIGNATURE
,
83 /// Driver Option from variable menu
85 BM_MENU_OPTION DriverOptionMenu
= {
86 BM_MENU_OPTION_SIGNATURE
,
92 /// Handles in current system selection menu
94 BM_MENU_OPTION DriverMenu
= {
95 BM_MENU_OPTION_SIGNATURE
,
100 BM_MENU_OPTION TerminalMenu
= {
101 BM_MENU_OPTION_SIGNATURE
,
107 /// Value and string token correspondency for BaudRate
109 COM_ATTR BaudRateList
[19] = {
112 STRING_TOKEN(STR_COM_BAUD_RATE_0
)
116 STRING_TOKEN(STR_COM_BAUD_RATE_1
)
120 STRING_TOKEN(STR_COM_BAUD_RATE_2
)
124 STRING_TOKEN(STR_COM_BAUD_RATE_3
)
128 STRING_TOKEN(STR_COM_BAUD_RATE_4
)
132 STRING_TOKEN(STR_COM_BAUD_RATE_5
)
136 STRING_TOKEN(STR_COM_BAUD_RATE_6
)
140 STRING_TOKEN(STR_COM_BAUD_RATE_7
)
144 STRING_TOKEN(STR_COM_BAUD_RATE_8
)
148 STRING_TOKEN(STR_COM_BAUD_RATE_9
)
152 STRING_TOKEN(STR_COM_BAUD_RATE_10
)
156 STRING_TOKEN(STR_COM_BAUD_RATE_11
)
160 STRING_TOKEN(STR_COM_BAUD_RATE_12
)
164 STRING_TOKEN(STR_COM_BAUD_RATE_13
)
168 STRING_TOKEN(STR_COM_BAUD_RATE_14
)
172 STRING_TOKEN(STR_COM_BAUD_RATE_15
)
176 STRING_TOKEN(STR_COM_BAUD_RATE_16
)
180 STRING_TOKEN(STR_COM_BAUD_RATE_17
)
184 STRING_TOKEN(STR_COM_BAUD_RATE_18
)
189 /// Value and string token correspondency for DataBits
191 COM_ATTR DataBitsList
[4] = {
194 STRING_TOKEN(STR_COM_DATA_BITS_0
)
198 STRING_TOKEN(STR_COM_DATA_BITS_1
)
202 STRING_TOKEN(STR_COM_DATA_BITS_2
)
206 STRING_TOKEN(STR_COM_DATA_BITS_3
)
211 /// Value and string token correspondency for Parity
213 COM_ATTR ParityList
[5] = {
216 STRING_TOKEN(STR_COM_PAR_0
)
220 STRING_TOKEN(STR_COM_PAR_1
)
224 STRING_TOKEN(STR_COM_PAR_2
)
228 STRING_TOKEN(STR_COM_PAR_3
)
232 STRING_TOKEN(STR_COM_PAR_4
)
237 /// Value and string token correspondency for Baudreate
239 COM_ATTR StopBitsList
[3] = {
242 STRING_TOKEN(STR_COM_STOP_BITS_0
)
246 STRING_TOKEN(STR_COM_STOP_BITS_1
)
250 STRING_TOKEN(STR_COM_STOP_BITS_2
)
255 /// Guid for messaging path, used in Serial port setting.
257 EFI_GUID TerminalTypeGuid
[] = {
258 DEVICE_PATH_MESSAGING_PC_ANSI
,
259 DEVICE_PATH_MESSAGING_VT_100
,
260 DEVICE_PATH_MESSAGING_VT_100_PLUS
,
261 DEVICE_PATH_MESSAGING_VT_UTF8
,