1 /** @file 2 Define some data used for Boot Maint 3 4 Copyright (c) 2004 - 2015, Intel Corporation. All rights reserved.<BR> 5 SPDX-License-Identifier: BSD-2-Clause-Patent 6 7 **/ 8 9 #include "BootMaintenanceManager.h" 10 11 VOID *mStartOpCodeHandle = NULL; 12 VOID *mEndOpCodeHandle = NULL; 13 EFI_IFR_GUID_LABEL *mStartLabel = NULL; 14 EFI_IFR_GUID_LABEL *mEndLabel = NULL; 15 16 /// 17 /// Terminal type string token storage 18 /// 19 UINT16 TerminalType[] = { 20 STRING_TOKEN(STR_COM_TYPE_0), 21 STRING_TOKEN(STR_COM_TYPE_1), 22 STRING_TOKEN(STR_COM_TYPE_2), 23 STRING_TOKEN(STR_COM_TYPE_3), 24 STRING_TOKEN(STR_COM_TYPE_4), 25 }; 26 27 /// 28 /// Flow Control type string token storage 29 /// 30 UINT16 mFlowControlType[2] = { 31 STRING_TOKEN(STR_NONE_FLOW_CONTROL), 32 STRING_TOKEN(STR_HARDWARE_FLOW_CONTROL) 33 }; 34 35 UINT32 mFlowControlValue[2] = { 36 0, 37 UART_FLOW_CONTROL_HARDWARE 38 }; 39 40 /// 41 /// Console Input Device Selection Menu 42 /// 43 BM_MENU_OPTION ConsoleInpMenu = { 44 BM_MENU_OPTION_SIGNATURE, 45 {NULL}, 46 0 47 }; 48 49 /// 50 /// Console Output Device Selection Menu 51 /// 52 BM_MENU_OPTION ConsoleOutMenu = { 53 BM_MENU_OPTION_SIGNATURE, 54 {NULL}, 55 0 56 }; 57 58 /// 59 /// Error Output Device Selection Menu 60 /// 61 BM_MENU_OPTION ConsoleErrMenu = { 62 BM_MENU_OPTION_SIGNATURE, 63 {NULL}, 64 0 65 }; 66 67 /// 68 /// Boot Option from variable Menu 69 /// 70 BM_MENU_OPTION BootOptionMenu = { 71 BM_MENU_OPTION_SIGNATURE, 72 {NULL}, 73 0 74 }; 75 76 /// 77 /// Driver Option from variable menu 78 /// 79 BM_MENU_OPTION DriverOptionMenu = { 80 BM_MENU_OPTION_SIGNATURE, 81 {NULL}, 82 0 83 }; 84 85 /// 86 /// Handles in current system selection menu 87 /// 88 BM_MENU_OPTION DriverMenu = { 89 BM_MENU_OPTION_SIGNATURE, 90 {NULL}, 91 0 92 }; 93 94 BM_MENU_OPTION TerminalMenu = { 95 BM_MENU_OPTION_SIGNATURE, 96 {NULL}, 97 0 98 }; 99 100 /// 101 /// Value and string token correspondency for BaudRate 102 /// 103 COM_ATTR BaudRateList[19] = { 104 { 105 115200, 106 STRING_TOKEN(STR_COM_BAUD_RATE_0) 107 }, 108 { 109 57600, 110 STRING_TOKEN(STR_COM_BAUD_RATE_1) 111 }, 112 { 113 38400, 114 STRING_TOKEN(STR_COM_BAUD_RATE_2) 115 }, 116 { 117 19200, 118 STRING_TOKEN(STR_COM_BAUD_RATE_3) 119 }, 120 { 121 9600, 122 STRING_TOKEN(STR_COM_BAUD_RATE_4) 123 }, 124 { 125 7200, 126 STRING_TOKEN(STR_COM_BAUD_RATE_5) 127 }, 128 { 129 4800, 130 STRING_TOKEN(STR_COM_BAUD_RATE_6) 131 }, 132 { 133 3600, 134 STRING_TOKEN(STR_COM_BAUD_RATE_7) 135 }, 136 { 137 2400, 138 STRING_TOKEN(STR_COM_BAUD_RATE_8) 139 }, 140 { 141 2000, 142 STRING_TOKEN(STR_COM_BAUD_RATE_9) 143 }, 144 { 145 1800, 146 STRING_TOKEN(STR_COM_BAUD_RATE_10) 147 }, 148 { 149 1200, 150 STRING_TOKEN(STR_COM_BAUD_RATE_11) 151 }, 152 { 153 600, 154 STRING_TOKEN(STR_COM_BAUD_RATE_12) 155 }, 156 { 157 300, 158 STRING_TOKEN(STR_COM_BAUD_RATE_13) 159 }, 160 { 161 150, 162 STRING_TOKEN(STR_COM_BAUD_RATE_14) 163 }, 164 { 165 134, 166 STRING_TOKEN(STR_COM_BAUD_RATE_15) 167 }, 168 { 169 110, 170 STRING_TOKEN(STR_COM_BAUD_RATE_16) 171 }, 172 { 173 75, 174 STRING_TOKEN(STR_COM_BAUD_RATE_17) 175 }, 176 { 177 50, 178 STRING_TOKEN(STR_COM_BAUD_RATE_18) 179 } 180 }; 181 182 /// 183 /// Value and string token correspondency for DataBits 184 /// 185 COM_ATTR DataBitsList[4] = { 186 { 187 5, 188 STRING_TOKEN(STR_COM_DATA_BITS_0) 189 }, 190 { 191 6, 192 STRING_TOKEN(STR_COM_DATA_BITS_1) 193 }, 194 { 195 7, 196 STRING_TOKEN(STR_COM_DATA_BITS_2) 197 }, 198 { 199 8, 200 STRING_TOKEN(STR_COM_DATA_BITS_3) 201 } 202 }; 203 204 /// 205 /// Value and string token correspondency for Parity 206 /// 207 COM_ATTR ParityList[5] = { 208 { 209 NoParity, 210 STRING_TOKEN(STR_COM_PAR_0) 211 }, 212 { 213 EvenParity, 214 STRING_TOKEN(STR_COM_PAR_1) 215 }, 216 { 217 OddParity, 218 STRING_TOKEN(STR_COM_PAR_2) 219 }, 220 { 221 MarkParity, 222 STRING_TOKEN(STR_COM_PAR_3) 223 }, 224 { 225 SpaceParity, 226 STRING_TOKEN(STR_COM_PAR_4) 227 } 228 }; 229 230 /// 231 /// Value and string token correspondency for Baudreate 232 /// 233 COM_ATTR StopBitsList[3] = { 234 { 235 OneStopBit, 236 STRING_TOKEN(STR_COM_STOP_BITS_0) 237 }, 238 { 239 OneFiveStopBits, 240 STRING_TOKEN(STR_COM_STOP_BITS_1) 241 }, 242 { 243 TwoStopBits, 244 STRING_TOKEN(STR_COM_STOP_BITS_2) 245 } 246 }; 247 248 /// 249 /// Guid for messaging path, used in Serial port setting. 250 /// 251 EFI_GUID TerminalTypeGuid[] = { 252 DEVICE_PATH_MESSAGING_PC_ANSI, 253 DEVICE_PATH_MESSAGING_VT_100, 254 DEVICE_PATH_MESSAGING_VT_100_PLUS, 255 DEVICE_PATH_MESSAGING_VT_UTF8, 256 EFI_TTY_TERM_GUID 257 }; 258