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