iPXE
GlobalVariable.h
Go to the documentation of this file.
1 /** @file
2  GUID for EFI (NVRAM) Variables.
3 
4  Copyright (c) 2006 - 2024, Intel Corporation. All rights reserved.<BR>
5  SPDX-License-Identifier: BSD-2-Clause-Patent
6 
7  @par Revision Reference:
8  GUID defined in UEFI 2.1
9 **/
10 
11 #ifndef __GLOBAL_VARIABLE_GUID_H__
12 #define __GLOBAL_VARIABLE_GUID_H__
13 
14 FILE_LICENCE ( BSD2_PATENT );
15 
16 #define EFI_GLOBAL_VARIABLE \
17  { \
18  0x8BE4DF61, 0x93CA, 0x11d2, {0xAA, 0x0D, 0x00, 0xE0, 0x98, 0x03, 0x2B, 0x8C } \
19  }
20 
22 
23 //
24 // Follow UEFI 2.4 spec:
25 // To prevent name collisions with possible future globally defined variables,
26 // other internal firmware data variables that are not defined here must be
27 // saved with a unique VendorGuid other than EFI_GLOBAL_VARIABLE or
28 // any other GUID defined by the UEFI Specification. Implementations must
29 // only permit the creation of variables with a UEFI Specification-defined
30 // VendorGuid when these variables are documented in the UEFI Specification.
31 //
32 // Note: except the globally defined variables defined below, the spec also defines
33 // L"Boot####" - A boot load option.
34 // L"Driver####" - A driver load option.
35 // L"SysPrep####" - A System Prep application load option.
36 // L"Key####" - Describes hot key relationship with a Boot#### load option.
37 // The attribute for them is NV+BS+RT, #### is a printed hex value, and no 0x or h
38 // is included in the hex value. They can not be expressed as a #define like other globally
39 // defined variables, it is because we can not list the Boot0000, Boot0001, etc one by one.
40 //
41 
42 ///
43 /// The language codes that the firmware supports. This value is deprecated.
44 /// Its attribute is BS+RT.
45 ///
46 #define EFI_LANG_CODES_VARIABLE_NAME L"LangCodes"
47 ///
48 /// The language code that the system is configured for. This value is deprecated.
49 /// Its attribute is NV+BS+RT.
50 ///
51 #define EFI_LANG_VARIABLE_NAME L"Lang"
52 ///
53 /// The firmware's boot managers timeout, in seconds, before initiating the default boot selection.
54 /// Its attribute is NV+BS+RT.
55 ///
56 #define EFI_TIME_OUT_VARIABLE_NAME L"Timeout"
57 ///
58 /// The language codes that the firmware supports.
59 /// Its attribute is BS+RT.
60 ///
61 #define EFI_PLATFORM_LANG_CODES_VARIABLE_NAME L"PlatformLangCodes"
62 ///
63 /// The language code that the system is configured for.
64 /// Its attribute is NV+BS+RT.
65 ///
66 #define EFI_PLATFORM_LANG_VARIABLE_NAME L"PlatformLang"
67 ///
68 /// The device path of the default input/output/error output console.
69 /// Its attribute is NV+BS+RT.
70 ///
71 #define EFI_CON_IN_VARIABLE_NAME L"ConIn"
72 #define EFI_CON_OUT_VARIABLE_NAME L"ConOut"
73 #define EFI_ERR_OUT_VARIABLE_NAME L"ErrOut"
74 ///
75 /// The device path of all possible input/output/error output devices.
76 /// Its attribute is BS+RT.
77 ///
78 #define EFI_CON_IN_DEV_VARIABLE_NAME L"ConInDev"
79 #define EFI_CON_OUT_DEV_VARIABLE_NAME L"ConOutDev"
80 #define EFI_ERR_OUT_DEV_VARIABLE_NAME L"ErrOutDev"
81 ///
82 /// The ordered boot option load list.
83 /// Its attribute is NV+BS+RT.
84 ///
85 #define EFI_BOOT_ORDER_VARIABLE_NAME L"BootOrder"
86 ///
87 /// The boot option for the next boot only.
88 /// Its attribute is NV+BS+RT.
89 ///
90 #define EFI_BOOT_NEXT_VARIABLE_NAME L"BootNext"
91 ///
92 /// The boot option that was selected for the current boot.
93 /// Its attribute is BS+RT.
94 ///
95 #define EFI_BOOT_CURRENT_VARIABLE_NAME L"BootCurrent"
96 ///
97 /// The types of boot options supported by the boot manager. Should be treated as read-only.
98 /// Its attribute is BS+RT.
99 ///
100 #define EFI_BOOT_OPTION_SUPPORT_VARIABLE_NAME L"BootOptionSupport"
101 ///
102 /// The ordered driver load option list.
103 /// Its attribute is NV+BS+RT.
104 ///
105 #define EFI_DRIVER_ORDER_VARIABLE_NAME L"DriverOrder"
106 ///
107 /// The ordered System Prep Application load option list.
108 /// Its attribute is NV+BS+RT.
109 ///
110 #define EFI_SYS_PREP_ORDER_VARIABLE_NAME L"SysPrepOrder"
111 ///
112 /// Identifies the level of hardware error record persistence
113 /// support implemented by the platform. This variable is
114 /// only modified by firmware and is read-only to the OS.
115 /// Its attribute is NV+BS+RT.
116 ///
117 #define EFI_HW_ERR_REC_SUPPORT_VARIABLE_NAME L"HwErrRecSupport"
118 ///
119 /// Whether the system is operating in setup mode (1) or not (0).
120 /// All other values are reserved. Should be treated as read-only.
121 /// Its attribute is BS+RT.
122 ///
123 #define EFI_SETUP_MODE_NAME L"SetupMode"
124 ///
125 /// The Key Exchange Key Signature Database.
126 /// Its attribute is NV+BS+RT+AT.
127 ///
128 #define EFI_KEY_EXCHANGE_KEY_NAME L"KEK"
129 ///
130 /// The public Platform Key.
131 /// Its attribute is NV+BS+RT+AT.
132 ///
133 #define EFI_PLATFORM_KEY_NAME L"PK"
134 ///
135 /// Array of GUIDs representing the type of signatures supported
136 /// by the platform firmware. Should be treated as read-only.
137 /// Its attribute is BS+RT.
138 ///
139 #define EFI_SIGNATURE_SUPPORT_NAME L"SignatureSupport"
140 ///
141 /// Whether the platform firmware is operating in Secure boot mode (1) or not (0).
142 /// All other values are reserved. Should be treated as read-only.
143 /// Its attribute is BS+RT.
144 ///
145 #define EFI_SECURE_BOOT_MODE_NAME L"SecureBoot"
146 ///
147 /// The OEM's default Key Exchange Key Signature Database. Should be treated as read-only.
148 /// Its attribute is BS+RT.
149 ///
150 #define EFI_KEK_DEFAULT_VARIABLE_NAME L"KEKDefault"
151 ///
152 /// The OEM's default public Platform Key. Should be treated as read-only.
153 /// Its attribute is BS+RT.
154 ///
155 #define EFI_PK_DEFAULT_VARIABLE_NAME L"PKDefault"
156 ///
157 /// The OEM's default secure boot signature store. Should be treated as read-only.
158 /// Its attribute is BS+RT.
159 ///
160 #define EFI_DB_DEFAULT_VARIABLE_NAME L"dbDefault"
161 ///
162 /// The OEM's default secure boot blacklist signature store. Should be treated as read-only.
163 /// Its attribute is BS+RT.
164 ///
165 #define EFI_DBX_DEFAULT_VARIABLE_NAME L"dbxDefault"
166 ///
167 /// The OEM's default secure boot timestamp signature store. Should be treated as read-only.
168 /// Its attribute is BS+RT.
169 ///
170 #define EFI_DBT_DEFAULT_VARIABLE_NAME L"dbtDefault"
171 ///
172 /// Allows the firmware to indicate supported features and actions to the OS.
173 /// Its attribute is BS+RT.
174 ///
175 #define EFI_OS_INDICATIONS_SUPPORT_VARIABLE_NAME L"OsIndicationsSupported"
176 ///
177 /// Allows the OS to request the firmware to enable certain features and to take certain actions.
178 /// Its attribute is NV+BS+RT.
179 ///
180 #define EFI_OS_INDICATIONS_VARIABLE_NAME L"OsIndications"
181 ///
182 /// Whether the system is configured to use only vendor provided
183 /// keys or not. Should be treated as read-only.
184 /// Its attribute is BS+RT.
185 ///
186 #define EFI_VENDOR_KEYS_VARIABLE_NAME L"VendorKeys"
187 
188 ///
189 /// Whether the platform firmware is operating in device authentication boot mode (1) or not (0).
190 /// The content is UINT8.
191 ///
192 #define EFI_DEVICE_AUTH_BOOT_MODE_NAME L"devAuthBoot"
193 
194 #endif
128 bit buffer containing a unique identifier value.
Definition: Base.h:215
FILE_LICENCE(BSD2_PATENT)
EFI_GUID gEfiGlobalVariableGuid