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
-Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>\r
+(C) Copyright 2016 Hewlett Packard Enterprise Development LP<BR>\r
This program and the accompanying materials are licensed and made available under \r
the terms and conditions of the BSD License that accompanies this distribution. \r
The full text of the license may be found at\r
#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
UINT8 BitmapData[1];\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
#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
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
#define EFI_IFR_SECURITY_OP 0x60\r
#define EFI_IFR_MODAL_TAG_OP 0x61\r
#define EFI_IFR_REFRESH_ID_OP 0x62\r
+#define EFI_IFR_WARNING_IF_OP 0x63\r
+#define EFI_IFR_MATCH2_OP 0x64\r
\r
//\r
// Definitions of IFR Standard Headers\r
//\r
// Flag values of EFI_IFR_QUESTION_HEADER\r
//\r
-#define EFI_IFR_FLAG_READ_ONLY 0x01\r
-#define EFI_IFR_FLAG_CALLBACK 0x04\r
-#define EFI_IFR_FLAG_RESET_REQUIRED 0x10\r
-#define EFI_IFR_FLAG_OPTIONS_ONLY 0x80\r
+#define EFI_IFR_FLAG_READ_ONLY 0x01\r
+#define EFI_IFR_FLAG_CALLBACK 0x04\r
+#define EFI_IFR_FLAG_RESET_REQUIRED 0x10\r
+#define EFI_IFR_FLAG_RECONNECT_REQUIRED 0x40\r
+#define EFI_IFR_FLAG_OPTIONS_ONLY 0x80\r
\r
//\r
// Definition for Opcode Reference\r
EFI_IMAGE_ID Id;\r
} EFI_IFR_IMAGE;\r
\r
-typedef struct _EFI_IFR_MODAL {\r
+typedef struct _EFI_IFR_MODAL_TAG {\r
EFI_IFR_OP_HEADER Header;\r
-} EFI_IFR_MODAL;\r
+} EFI_IFR_MODAL_TAG;\r
\r
typedef struct _EFI_IFR_LOCKED {\r
EFI_IFR_OP_HEADER Header;\r
EFI_STRING_ID Error;\r
} EFI_IFR_NO_SUBMIT_IF;\r
\r
+typedef struct _EFI_IFR_WARNING_IF {\r
+ EFI_IFR_OP_HEADER Header;\r
+ EFI_STRING_ID Warning;\r
+ UINT8 TimeOut;\r
+} EFI_IFR_WARNING_IF;\r
+\r
typedef struct _EFI_IFR_REFRESH {\r
EFI_IFR_OP_HEADER Header;\r
UINT8 RefreshInterval;\r
EFI_IFR_OP_HEADER Header;\r
} EFI_IFR_MATCH;\r
\r
+typedef struct _EFI_IFR_MATCH2 {\r
+ EFI_IFR_OP_HEADER Header;\r
+ EFI_GUID SyntaxType;\r
+} EFI_IFR_MATCH2;\r
+\r
typedef struct _EFI_IFR_MULTIPLY {\r
EFI_IFR_OP_HEADER Header;\r
} EFI_IFR_MULTIPLY;\r
///\r
#define STRING_TOKEN(t) t\r
\r
+///\r
+/// IMAGE_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 IMAGE_TOKEN(t) t\r
+\r
#endif\r