]> git.proxmox.com Git - mirror_edk2.git/blobdiff - BaseTools/Source/C/Include/Common/UefiInternalFormRepresentation.h
BaseTools: Clean up source files
[mirror_edk2.git] / BaseTools / Source / C / Include / Common / UefiInternalFormRepresentation.h
index 8c2edf20f3618f845a939a3875fc6339c45197fb..a4e62a76d0c46bf000c2d701ad2b2a849352ffdf 100644 (file)
@@ -3,10 +3,8 @@
   IFR is primarily consumed by the EFI presentation engine, and produced by EFI\r
   internal application and drivers as well as all add-in card option-ROM drivers\r
 \r
-  @par Revision Reference:\r
-  These definitions are from UEFI2.1.\r
-\r
-  Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.<BR>\r
+  Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>\r
+ (C) Copyright 2016 Hewlett Packard Enterprise Development LP<BR>\r
 \r
   This program and the accompanying materials are licensed and made available\r
   under the terms and conditions of the BSD License which accompanies this\r
@@ -16,6 +14,9 @@
   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
 \r
+  @par Revision Reference:\r
+  These definitions are from UEFI 2.6\r
+\r
 **/\r
 \r
 #ifndef __UEFI_INTERNAL_FORMREPRESENTATION_H__\r
@@ -54,27 +55,27 @@ typedef struct {
 } EFI_HII_PACKAGE_LIST_HEADER;\r
 \r
 /**\r
-    \r
-  Each package starts with a header, as defined above, which  \r
-  indicates the size and type of the package. When added to a  \r
-  pointer pointing to the start of the header, Length points at  \r
-  the next package. The package lists form a package list when  \r
-  concatenated together and terminated with an  \r
-  EFI_HII_PACKAGE_HEADER with a Type of EFI_HII_PACKAGE_END. The  \r
-  type EFI_HII_PACKAGE_TYPE_GUID is used for vendor-defined HII  \r
-  packages, whose contents are determined by the Guid. The range  \r
-  of package types starting with EFI_HII_PACKAGE_TYPE_SYSTEM_BEGIN  \r
-  through EFI_HII_PACKAGE_TYPE_SYSTEM_END are reserved for system  \r
-  firmware implementers.  \r
-  \r
+\r
+  Each package starts with a header, as defined above, which\r
+  indicates the size and type of the package. When added to a\r
+  pointer pointing to the start of the header, Length points at\r
+  the next package. The package lists form a package list when\r
+  concatenated together and terminated with an\r
+  EFI_HII_PACKAGE_HEADER with a Type of EFI_HII_PACKAGE_END. The\r
+  type EFI_HII_PACKAGE_TYPE_GUID is used for vendor-defined HII\r
+  packages, whose contents are determined by the Guid. The range\r
+  of package types starting with EFI_HII_PACKAGE_TYPE_SYSTEM_BEGIN\r
+  through EFI_HII_PACKAGE_TYPE_SYSTEM_END are reserved for system\r
+  firmware implementers.\r
+\r
   @param Length The size of the package in bytes.\r
-  \r
+\r
   @param Type   The package type. See EFI_HII_PACKAGE_TYPE_x,\r
                 below.\r
-  \r
+\r
   @param Data   The package data, the format of which is\r
                 determined by Type.\r
-  \r
+\r
 **/\r
 typedef struct {\r
   UINT32  Length:24;\r
@@ -84,7 +85,7 @@ typedef struct {
 \r
 //\r
 // EFI_HII_PACKAGE_TYPE_x.\r
-// \r
+//\r
 #define EFI_HII_PACKAGE_TYPE_ALL             0x00\r
 #define EFI_HII_PACKAGE_TYPE_GUID            0x01\r
 #define EFI_HII_PACKAGE_FORM                 0x02\r
@@ -167,6 +168,7 @@ typedef struct _EFI_HII_FONT_PACKAGE_HDR {
 #define EFI_HII_GIBT_GLYPHS               0x11\r
 #define EFI_HII_GIBT_GLYPH_DEFAULT        0x12\r
 #define EFI_HII_GIBT_GLYPHS_DEFAULT       0x13\r
+#define EFI_HII_GIBT_GLYPH_VARIABILITY    0x14\r
 #define EFI_HII_GIBT_DUPLICATE            0x20\r
 #define EFI_HII_GIBT_SKIP2                0x21\r
 #define EFI_HII_GIBT_SKIP1                0x22\r
@@ -220,7 +222,7 @@ typedef struct _EFI_HII_GIBT_GLYPH_BLOCK {
 typedef struct _EFI_HII_GIBT_GLYPHS_BLOCK {\r
   EFI_HII_GLYPH_BLOCK    Header;\r
   EFI_HII_GLYPH_INFO     Cell;\r
-  UINT16                 Count;  \r
+  UINT16                 Count;\r
   UINT8                  BitmapData[1]; // the number of bytes per bitmap can be calculated by ((Cell.Width+7)/8)*Cell.Height\r
 } EFI_HII_GIBT_GLYPHS_BLOCK;\r
 \r
@@ -235,6 +237,13 @@ typedef struct _EFI_HII_GIBT_GLYPHS_DEFAULT_BLOCK {
   UINT8                  BitmapData[1]; // the number of bytes per bitmap can be calculated by ((Global.Cell.Width+7)/8)*Global.Cell.Height\r
 } EFI_HII_GIBT_GLYPHS_DEFAULT_BLOCK;\r
 \r
+typedef struct _EFI_HII_GIBT_VARIABILITY_BLOCK {\r
+  EFI_HII_GLYPH_BLOCK    Header;\r
+  EFI_HII_GLYPH_INFO     Cell;\r
+  UINT8                  GlyphPackInBits;\r
+  UINT8                  BitmapData [1];\r
+} EFI_HII_GIBT_VARIABILITY_BLOCK;\r
+\r
 typedef struct _EFI_HII_GIBT_SKIP1_BLOCK {\r
   EFI_HII_GLYPH_BLOCK    Header;\r
   UINT8                  SkipCount;\r
@@ -416,6 +425,7 @@ typedef struct _EFI_HII_IMAGE_BLOCK {
 #define EFI_HII_IIBT_IMAGE_24BIT       0x16\r
 #define EFI_HII_IIBT_IMAGE_24BIT_TRANS 0x17\r
 #define EFI_HII_IIBT_IMAGE_JPEG        0x18\r
+#define EFI_HII_IIBT_IMAGE_PNG         0x19\r
 #define EFI_HII_IIBT_DUPLICATE         0x20\r
 #define EFI_HII_IIBT_SKIP2             0x21\r
 #define EFI_HII_IIBT_SKIP1             0x22\r
@@ -532,6 +542,12 @@ typedef struct _EFI_HII_IIBT_JPEG_BLOCK {
   UINT8                        Data[1];\r
 } EFI_HII_IIBT_JPEG_BLOCK;\r
 \r
+typedef struct _EFI_HII_IIBT_PNG_BLOCK {\r
+  EFI_HII_IMAGE_BLOCK          Header;\r
+  UINT32                       Size;\r
+  UINT8                        Data[1];\r
+} EFI_HII_IIBT_PNG_BLOCK;\r
+\r
 typedef struct _EFI_HII_IIBT_SKIP1_BLOCK {\r
   EFI_HII_IMAGE_BLOCK          Header;\r
   UINT8                        SkipCount;\r
@@ -1344,12 +1360,12 @@ typedef struct _EFI_IFR_SECURITY {
 \r
 typedef struct _EFI_IFR_FORM_MAP_METHOD {\r
   ///\r
-  /// The string identifier which provides the human-readable name of \r
+  /// The string identifier which provides the human-readable name of\r
   /// the configuration method for this standards map form.\r
   ///\r
   EFI_STRING_ID            MethodTitle;\r
   ///\r
-  /// Identifier which uniquely specifies the configuration methods \r
+  /// Identifier which uniquely specifies the configuration methods\r
   /// associated with this standards map form.\r
   ///\r
   EFI_GUID                 MethodIdentifier;\r
@@ -1357,8 +1373,8 @@ typedef struct _EFI_IFR_FORM_MAP_METHOD {
 \r
 typedef struct _EFI_IFR_FORM_MAP {\r
   ///\r
-  /// The sequence that defines the type of opcode as well as the length \r
-  /// of the opcode being defined. Header.OpCode = EFI_IFR_FORM_MAP_OP. \r
+  /// The sequence that defines the type of opcode as well as the length\r
+  /// of the opcode being defined. Header.OpCode = EFI_IFR_FORM_MAP_OP.\r
   ///\r
   EFI_IFR_OP_HEADER        Header;\r
   ///\r
@@ -1373,13 +1389,13 @@ typedef struct _EFI_IFR_FORM_MAP {
 \r
 typedef struct _EFI_IFR_SET {\r
   ///\r
-  /// The sequence that defines the type of opcode as well as the length \r
-  /// of the opcode being defined. Header.OpCode = EFI_IFR_SET_OP. \r
+  /// The sequence that defines the type of opcode as well as the length\r
+  /// of the opcode being defined. Header.OpCode = EFI_IFR_SET_OP.\r
   ///\r
   EFI_IFR_OP_HEADER  Header;\r
   ///\r
-  /// Specifies the identifier of a previously declared variable store to \r
-  /// use when storing the question's value. \r
+  /// Specifies the identifier of a previously declared variable store to\r
+  /// use when storing the question's value.\r
   ///\r
   EFI_VARSTORE_ID    VarStoreId;\r
   union {\r
@@ -1393,20 +1409,20 @@ typedef struct _EFI_IFR_SET {
     UINT16           VarOffset;\r
   }                  VarStoreInfo;\r
   ///\r
-  /// Specifies the type used for storage. \r
+  /// Specifies the type used for storage.\r
   ///\r
   UINT8              VarStoreType;\r
 } EFI_IFR_SET;\r
 \r
 typedef struct _EFI_IFR_GET {\r
   ///\r
-  /// The sequence that defines the type of opcode as well as the length \r
-  /// of the opcode being defined. Header.OpCode = EFI_IFR_GET_OP. \r
+  /// The sequence that defines the type of opcode as well as the length\r
+  /// of the opcode being defined. Header.OpCode = EFI_IFR_GET_OP.\r
   ///\r
   EFI_IFR_OP_HEADER  Header;\r
   ///\r
-  /// Specifies the identifier of a previously declared variable store to \r
-  /// use when retrieving the value. \r
+  /// Specifies the identifier of a previously declared variable store to\r
+  /// use when retrieving the value.\r
   ///\r
   EFI_VARSTORE_ID    VarStoreId;\r
   union {\r
@@ -1420,7 +1436,7 @@ typedef struct _EFI_IFR_GET {
     UINT16           VarOffset;\r
   }                  VarStoreInfo;\r
   ///\r
-  /// Specifies the type used for storage. \r
+  /// Specifies the type used for storage.\r
   ///\r
   UINT8              VarStoreType;\r
 } EFI_IFR_GET;\r
@@ -1440,9 +1456,9 @@ typedef struct _EFI_IFR_MAP {
 // Keyboard Package\r
 //\r
 \r
-typedef enum {    \r
+typedef enum {\r
   EfiKeyLCtrl,\r
-  EfiKeyA0, \r
+  EfiKeyA0,\r
   EfiKeyLAlt,\r
   EfiKeySpaceBar,\r
   EfiKeyA2,\r
@@ -1559,7 +1575,7 @@ typedef struct {
 } EFI_KEY_DESCRIPTOR;\r
 \r
 //\r
-// A key which is affected by all the standard shift modifiers.  \r
+// A key which is affected by all the standard shift modifiers.\r
 // Most keys would be expected to have this bit active.\r
 //\r
 #define EFI_AFFECTED_BY_STANDARD_SHIFT       0x0001\r
@@ -1661,7 +1677,7 @@ typedef struct {
 // token usages.\r
 //\r
 //\r
-// STRING_TOKEN is not defined in UEFI specification. But it is placed \r
+// STRING_TOKEN is not defined in UEFI specification. But it is placed\r
 // here for the easy access by C files and VFR source files.\r
 //\r
 #define STRING_TOKEN(t) t\r