summaryrefslogtreecommitdiff
path: root/MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabase.h
diff options
context:
space:
mode:
Diffstat (limited to 'MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabase.h')
-rw-r--r--MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabase.h33
1 files changed, 31 insertions, 2 deletions
diff --git a/MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabase.h b/MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabase.h
index fa82605581..5d10d46a8c 100644
--- a/MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabase.h
+++ b/MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabase.h
@@ -63,6 +63,37 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#define BITMAP_LEN_24_BIT(Width, Height) ((Width) * (Height) * 3)
//
+// IFR data structure
+//
+// BASE_CR (a, IFR_DEFAULT_VALUE_DATA, Entry) to get the whole structure.
+
+typedef struct {
+ LIST_ENTRY Entry; // Link to VarStorage
+ EFI_GUID Guid;
+ CHAR16 *Name;
+ EFI_VARSTORE_ID VarStoreId;
+ UINT16 Size;
+ LIST_ENTRY BlockEntry; // Link to its Block array
+} IFR_VARSTORAGE_DATA;
+
+typedef struct {
+ LIST_ENTRY Entry; // Link to Block array
+ UINT16 Offset;
+ UINT16 Width;
+ EFI_QUESTION_ID QuestionId;
+ UINT8 OpCode;
+ UINT8 Scope;
+ LIST_ENTRY DefaultValueEntry; // Link to its default value array
+} IFR_BLOCK_DATA;
+
+typedef struct {
+ LIST_ENTRY Entry;
+ EFI_STRING_ID DefaultName;
+ UINT16 DefaultId;
+ UINT64 Value;
+} IFR_DEFAULT_DATA;
+
+//
// Storage types
//
#define EFI_HII_VARSTORE_BUFFER 0
@@ -83,8 +114,6 @@ typedef struct {
UINT16 Size;
} HII_FORMSET_STORAGE;
-#define HII_FORMSET_STORAGE_FROM_LINK(a) CR (a, HII_FORMSET_STORAGE, Link, HII_FORMSET_STORAGE_SIGNATURE)
-
//
// String Package definitions