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