/** @file\r
Private structures definitions in HiiDatabase.\r
\r
-Copyright (c) 2007 - 2008, Intel Corporation\r
+Copyright (c) 2007 - 2009, Intel Corporation\r
All rights reserved. This program and the accompanying materials\r
are licensed and made available under the terms and conditions of the BSD License\r
which accompanies this distribution. The full text of the license may be found at\r
\r
#include <Uefi.h>\r
\r
-#include <Protocol/ConsoleControl.h>\r
#include <Protocol/DevicePath.h>\r
#include <Protocol/HiiFont.h>\r
#include <Protocol/HiiImage.h>\r
#include <Protocol/SimpleTextOut.h>\r
\r
#include <Guid/HiiKeyBoardLayout.h>\r
+#include <Guid/GlobalVariable.h>\r
\r
\r
#include <Library/DebugLib.h>\r
#include <Library/BaseLib.h>\r
#include <Library/DevicePathLib.h>\r
#include <Library/MemoryAllocationLib.h>\r
-#include <Library/IfrSupportLib.h>\r
#include <Library/UefiLib.h>\r
#include <Library/PcdLib.h>\r
#include <Library/UefiRuntimeServicesTableLib.h>\r
+#include <Library/PrintLib.h>\r
\r
\r
#define HII_DATABASE_NOTIFY_GUID \\r
#define BITMAP_LEN_8_BIT(Width, Height) ((Width) * (Height))\r
#define BITMAP_LEN_24_BIT(Width, Height) ((Width) * (Height) * 3)\r
\r
+//\r
+// IFR data structure\r
+//\r
+// BASE_CR (a, IFR_DEFAULT_VALUE_DATA, Entry) to get the whole structure.\r
+\r
+typedef struct {\r
+ LIST_ENTRY Entry; // Link to VarStorage\r
+ EFI_GUID Guid;\r
+ CHAR16 *Name;\r
+ EFI_VARSTORE_ID VarStoreId;\r
+ UINT16 Size;\r
+ LIST_ENTRY BlockEntry; // Link to its Block array\r
+} IFR_VARSTORAGE_DATA;\r
+\r
+typedef struct {\r
+ LIST_ENTRY Entry; // Link to Block array\r
+ UINT16 Offset;\r
+ UINT16 Width;\r
+ EFI_QUESTION_ID QuestionId;\r
+ UINT8 OpCode;\r
+ UINT8 Scope;\r
+ LIST_ENTRY DefaultValueEntry; // Link to its default value array\r
+} IFR_BLOCK_DATA;\r
+\r
+typedef struct {\r
+ LIST_ENTRY Entry;\r
+ EFI_STRING_ID DefaultName;\r
+ UINT16 DefaultId;\r
+ UINT64 Value;\r
+} IFR_DEFAULT_DATA;\r
+\r
//\r
// Storage types\r
//\r
UINT16 Size;\r
} HII_FORMSET_STORAGE;\r
\r
-#define HII_FORMSET_STORAGE_FROM_LINK(a) CR (a, HII_FORMSET_STORAGE, Link, HII_FORMSET_STORAGE_SIGNATURE)\r
-\r
\r
//\r
// String Package definitions\r
OUT EFI_STRING *AltCfgResp\r
);\r
\r
-\r
//\r
// Global variables\r
//\r
extern EFI_EVENT gHiiKeyboardLayoutChanged;\r
-\r
-#include "R8Lib.h"\r
-\r
#endif\r