X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=MdePkg%2FInclude%2FUefi%2FUefiInternalFormRepresentation.h;h=70b037488da5ac39b9d2ac71ffabd0f2b5c8c9c6;hb=d9044ec5553c946e20154b7b5c61cd3979472f60;hp=5cfe91a44c5523a971fbc76c3cae7867657b7616;hpb=8c6d73fb6beb2a84bebaf4543acbb531a788b2d5;p=mirror_edk2.git diff --git a/MdePkg/Include/Uefi/UefiInternalFormRepresentation.h b/MdePkg/Include/Uefi/UefiInternalFormRepresentation.h index 5cfe91a44c..70b037488d 100644 --- a/MdePkg/Include/Uefi/UefiInternalFormRepresentation.h +++ b/MdePkg/Include/Uefi/UefiInternalFormRepresentation.h @@ -3,14 +3,14 @@ IFR is primarily consumed by the EFI presentation engine, and produced by EFI internal application and drivers as well as all add-in card option-ROM drivers - Copyright (c) 2006 - 2010, Intel Corporation - All rights reserved. This program and the accompanying materials - are licensed and made available under the terms and conditions of the BSD License - which accompanies this distribution. The full text of the license may be found at - http://opensource.org/licenses/bsd-license.php - - THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, - WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. +Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.
+This program and the accompanying materials are licensed and made available under +the terms and conditions of the BSD License that accompanies this distribution. +The full text of the license may be found at +http://opensource.org/licenses/bsd-license.php. + +THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, +WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. @par Revision Reference: These definitions are from UEFI 2.1 and 2.2. @@ -86,7 +86,7 @@ typedef struct { // /// -/// Contents of EFI_NARROW_GLYPH.Attributes +/// Contents of EFI_NARROW_GLYPH.Attributes. ///@{ #define EFI_GLYPH_NON_SPACING 0x01 #define EFI_GLYPH_WIDE 0x02 @@ -187,7 +187,7 @@ typedef struct _EFI_HII_GLYPH_INFO { } EFI_HII_GLYPH_INFO; /// -/// The fixed header consists of a standard record header and +/// The fixed header consists of a standard record header, /// then the character values in this section, the flags /// (including the encoding method) and the offsets of the glyph /// information, the glyph bitmaps and the character map. @@ -658,6 +658,13 @@ typedef struct { UINT8 Day; } EFI_HII_DATE; +typedef struct { + EFI_QUESTION_ID QuestionId; + EFI_FORM_ID FormId; + EFI_GUID FormSetGuid; + EFI_STRING_ID DevicePath; +} EFI_HII_REF; + typedef union { UINT8 u8; UINT16 u16; @@ -667,7 +674,8 @@ typedef union { EFI_HII_TIME time; EFI_HII_DATE date; EFI_STRING_ID string; ///< EFI_IFR_TYPE_STRING, EFI_IFR_TYPE_ACTION - // UINT8 buffer[]; ///< EFI_IFR_TYPE_ORDERED_LIST + EFI_HII_REF ref; ///< EFI_IFR_TYPE_REF + // UINT8 buffer[]; ///< EFI_IFR_TYPE_BUFFER } EFI_IFR_TYPE_VALUE; // @@ -692,7 +700,7 @@ typedef union { #define EFI_IFR_INCONSISTENT_IF_OP 0x11 #define EFI_IFR_EQ_ID_VAL_OP 0x12 #define EFI_IFR_EQ_ID_ID_OP 0x13 -#define EFI_IFR_EQ_ID_LIST_OP 0x14 +#define EFI_IFR_EQ_ID_VAL_LIST_OP 0x14 #define EFI_IFR_AND_OP 0x15 #define EFI_IFR_OR_OP 0x16 #define EFI_IFR_NOT_OP 0x17 @@ -715,8 +723,8 @@ typedef union { #define EFI_IFR_VERSION_OP 0x28 #define EFI_IFR_END_OP 0x29 #define EFI_IFR_MATCH_OP 0x2A -#define EFI_IFR_SET_OP 0x2C #define EFI_IFR_GET_OP 0x2B +#define EFI_IFR_SET_OP 0x2C #define EFI_IFR_READ_OP 0x2D #define EFI_IFR_WRITE_OP 0x2E #define EFI_IFR_EQUAL_OP 0x2F @@ -769,6 +777,9 @@ typedef union { #define EFI_IFR_CATENATE_OP 0x5E #define EFI_IFR_GUID_OP 0x5F #define EFI_IFR_SECURITY_OP 0x60 +#define EFI_IFR_MODAL_TAG_OP 0x61 +#define EFI_IFR_REFRESH_ID_OP 0x62 +#define EFI_IFR_WARNING_IF_OP 0x63 // // Definitions of IFR Standard Headers @@ -841,6 +852,8 @@ typedef struct _EFI_IFR_VARSTORE_EFI { EFI_VARSTORE_ID VarStoreId; EFI_GUID Guid; UINT32 Attributes; + UINT16 Size; + UINT8 Name[1]; } EFI_IFR_VARSTORE_EFI; typedef struct _EFI_IFR_VARSTORE_NAME_VALUE { @@ -873,6 +886,10 @@ typedef struct _EFI_IFR_IMAGE { EFI_IMAGE_ID Id; } EFI_IFR_IMAGE; +typedef struct _EFI_IFR_MODAL_TAG { + EFI_IFR_OP_HEADER Header; +} EFI_IFR_MODAL_TAG; + typedef struct _EFI_IFR_LOCKED { EFI_IFR_OP_HEADER Header; } EFI_IFR_LOCKED; @@ -889,6 +906,12 @@ typedef struct _EFI_IFR_DEFAULT { EFI_IFR_TYPE_VALUE Value; } EFI_IFR_DEFAULT; +typedef struct _EFI_IFR_DEFAULT_2 { + EFI_IFR_OP_HEADER Header; + UINT16 DefaultId; + UINT8 Type; +} EFI_IFR_DEFAULT_2; + typedef struct _EFI_IFR_VALUE { EFI_IFR_OP_HEADER Header; } EFI_IFR_VALUE; @@ -946,6 +969,11 @@ typedef struct _EFI_IFR_REF4 { EFI_STRING_ID DevicePath; } EFI_IFR_REF4; +typedef struct _EFI_IFR_REF5 { + EFI_IFR_OP_HEADER Header; + EFI_IFR_QUESTION_HEADER Question; +} EFI_IFR_REF5; + typedef struct _EFI_IFR_RESET_BUTTON { EFI_IFR_OP_HEADER Header; EFI_IFR_STATEMENT_HEADER Statement; @@ -1099,6 +1127,12 @@ typedef struct _EFI_IFR_NO_SUBMIT_IF { EFI_STRING_ID Error; } EFI_IFR_NO_SUBMIT_IF; +typedef struct _EFI_IFR_WARNING_IF { + EFI_IFR_OP_HEADER Header; + EFI_STRING_ID Warning; + UINT8 TimeOut; +} EFI_IFR_WARNING_IF; + typedef struct _EFI_IFR_REFRESH { EFI_IFR_OP_HEADER Header; UINT8 RefreshInterval; @@ -1132,6 +1166,7 @@ typedef struct _EFI_IFR_ONE_OF_OPTION { #define EFI_IFR_TYPE_UNDEFINED 0x09 #define EFI_IFR_TYPE_ACTION 0x0A #define EFI_IFR_TYPE_BUFFER 0x0B +#define EFI_IFR_TYPE_REF 0x0C #define EFI_IFR_OPTION_DEFAULT 0x10 #define EFI_IFR_OPTION_DEFAULT_MFG 0x20 @@ -1142,6 +1177,11 @@ typedef struct _EFI_IFR_GUID { //Optional Data Follows } EFI_IFR_GUID; +typedef struct _EFI_IFR_REFRESH_ID { + EFI_IFR_OP_HEADER Header; + EFI_GUID RefreshEventGroupId; +} EFI_IFR_REFRESH_ID; + typedef struct _EFI_IFR_DUP { EFI_IFR_OP_HEADER Header; } EFI_IFR_DUP; @@ -1274,10 +1314,10 @@ typedef struct _EFI_IFR_TO_BOOLEAN { /// /// For EFI_IFR_TO_STRING, when converting from /// unsigned integers, these flags control the format: -/// 0 = unsigned decimal -/// 1 = signed decimal -/// 2 = hexadecimal (lower-case alpha) -/// 3 = hexadecimal (upper-case alpha) +/// 0 = unsigned decimal. +/// 1 = signed decimal. +/// 2 = hexadecimal (lower-case alpha). +/// 3 = hexadecimal (upper-case alpha). ///@{ #define EFI_IFR_STRING_UNSIGNED_DEC 0 #define EFI_IFR_STRING_SIGNED_DEC 1 @@ -1287,8 +1327,8 @@ typedef struct _EFI_IFR_TO_BOOLEAN { /// /// When converting from a buffer, these flags control the format: -/// 0 = ASCII -/// 8 = Unicode +/// 0 = ASCII. +/// 8 = Unicode. ///@{ #define EFI_IFR_STRING_ASCII 0 #define EFI_IFR_STRING_UNICODE 8 @@ -1459,7 +1499,7 @@ typedef struct _EFI_IFR_FORM_MAP { /// /// One or more configuration method's name and unique identifier. /// - EFI_IFR_FORM_MAP_METHOD Methods[1]; + // EFI_IFR_FORM_MAP_METHOD Methods[]; } EFI_IFR_FORM_MAP; typedef struct _EFI_IFR_SET { @@ -1483,6 +1523,10 @@ typedef struct _EFI_IFR_SET { /// UINT16 VarOffset; } VarStoreInfo; + /// + /// Specifies the type used for storage. + /// + UINT8 VarStoreType; } EFI_IFR_SET; typedef struct _EFI_IFR_GET { @@ -1774,7 +1818,7 @@ typedef struct _EFI_IFR_ANIMATION { } EFI_IFR_ANIMATION; /// -/// HII animation package header +/// HII animation package header. /// typedef struct _EFI_HII_ANIMATION_PACKAGE_HDR { /// @@ -1790,7 +1834,7 @@ typedef struct _EFI_HII_ANIMATION_PACKAGE_HDR { /// /// Animation information is encoded as a series of blocks, -/// with each block prefixed by a single byte header EFI_HII_ANIMATION_BLOCK +/// with each block prefixed by a single byte header EFI_HII_ANIMATION_BLOCK. /// typedef struct _EFI_HII_ANIMATION_BLOCK { UINT8 BlockType; @@ -1798,7 +1842,7 @@ typedef struct _EFI_HII_ANIMATION_BLOCK { } EFI_HII_ANIMATION_BLOCK; /// -/// Animation block types +/// Animation block types. /// #define EFI_HII_AIBT_END 0x00 #define EFI_HII_AIBT_OVERLAY_IMAGES 0x10 @@ -1821,11 +1865,11 @@ typedef struct _EFI_HII_ANIMATION_BLOCK { typedef struct _EFI_HII_AIBT_EXT1_BLOCK { /// - /// Standard animation header, where Header.BlockType = EFI_HII_AIBT_EXT1 + /// Standard animation header, where Header.BlockType = EFI_HII_AIBT_EXT1. /// EFI_HII_ANIMATION_BLOCK Header; /// - /// The block type + /// The block type. /// UINT8 BlockType2; /// @@ -1836,7 +1880,7 @@ typedef struct _EFI_HII_AIBT_EXT1_BLOCK { typedef struct _EFI_HII_AIBT_EXT2_BLOCK { /// - /// Standard animation header, where Header.BlockType = EFI_HII_AIBT_EXT2 + /// Standard animation header, where Header.BlockType = EFI_HII_AIBT_EXT2. /// EFI_HII_ANIMATION_BLOCK Header; /// @@ -1851,7 +1895,7 @@ typedef struct _EFI_HII_AIBT_EXT2_BLOCK { typedef struct _EFI_HII_AIBT_EXT4_BLOCK { /// - /// Standard animation header, where Header.BlockType = EFI_HII_AIBT_EXT4 + /// Standard animation header, where Header.BlockType = EFI_HII_AIBT_EXT4. /// EFI_HII_ANIMATION_BLOCK Header; ///