]> git.proxmox.com Git - mirror_edk2.git/commitdiff
Move MdeModuleHii.h into Include\Guid directory
authorlgao4 <lgao4@6f19259b-4bc3-4df7-8a09-765794883524>
Mon, 23 Feb 2009 15:18:48 +0000 (15:18 +0000)
committerlgao4 <lgao4@6f19259b-4bc3-4df7-8a09-765794883524>
Mon, 23 Feb 2009 15:18:48 +0000 (15:18 +0000)
Move Capsule.h into MdePkg\Include\Protocol directory because Capsule is defined in PI1.0a.
Merge WorkingBlockHeader.h into SystemNvDataGuid.h
Remove unused NvDataFvHob.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7606 6f19259b-4bc3-4df7-8a09-765794883524

21 files changed:
MdeModulePkg/Include/Guid/MdeModuleHii.h [new file with mode: 0644]
MdeModulePkg/Include/Guid/SystemNvDataGuid.h
MdeModulePkg/Include/MdeModuleHii.h [deleted file]
MdeModulePkg/Include/Protocol/Capsule.h [deleted file]
MdeModulePkg/Include/WorkingBlockHeader.h [deleted file]
MdeModulePkg/Library/DxePlatDriOverLib/PlatDriOverLib.c
MdeModulePkg/Library/ExtendedHiiLib/ExtendedHiiLib.c
MdeModulePkg/Library/ExtendedIfrSupportLib/Common.c
MdeModulePkg/Library/ExtendedIfrSupportLib/ExtendedIfrSupportLib.inf
MdeModulePkg/Library/ExtendedIfrSupportLib/Form.c
MdeModulePkg/Library/ExtendedIfrSupportLib/IfrOpCodeCreation.c
MdeModulePkg/Library/ExtendedIfrSupportLib/LibraryInternal.h
MdeModulePkg/MdeModulePkg.dec
MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleService.c
MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsole.h
MdeModulePkg/Universal/DriverSampleDxe/DriverSample.h
MdeModulePkg/Universal/FirmwareVolume/FaultTolerantWriteDxe/FtwLite.h
MdeModulePkg/Universal/PCD/Pei/Pcd.inf
MdeModulePkg/Universal/SetupBrowserDxe/IfrParse.c
MdeModulePkg/Universal/SetupBrowserDxe/Setup.h
MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf

diff --git a/MdeModulePkg/Include/Guid/MdeModuleHii.h b/MdeModulePkg/Include/Guid/MdeModuleHii.h
new file mode 100644 (file)
index 0000000..e66a944
--- /dev/null
@@ -0,0 +1,240 @@
+/** @file\r
+  EDKII extented HII IFR guid opcodes.\r
+\r
+Copyright (c) 2006 - 2008, Intel Corporation. <BR>\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
+http://opensource.org/licenses/bsd-license.php\r
+\r
+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
+**/\r
+\r
+#ifndef __MDEMODULE_HII_H__\r
+#define __MDEMODULE_HII_H__\r
+\r
+#define NARROW_CHAR         0xFFF0\r
+#define WIDE_CHAR           0xFFF1\r
+#define NON_BREAKING_CHAR   0xFFF2\r
+\r
+///\r
+/// State defined for password statemachine \r
+///\r
+#define BROWSER_STATE_VALIDATE_PASSWORD  0\r
+#define BROWSER_STATE_SET_PASSWORD       1\r
+\r
+\r
+///\r
+/// HII specific Vendor Device Path Node definition.\r
+///\r
+#pragma pack(1)\r
+typedef struct {\r
+  VENDOR_DEVICE_PATH             VendorDevicePath;\r
+  UINT32                         Reserved;\r
+  UINT64                         UniqueId;\r
+} HII_VENDOR_DEVICE_PATH_NODE;\r
+#pragma pack()\r
+\r
+///\r
+/// HII specific Vendor Device Path definition.\r
+///\r
+typedef struct {\r
+  HII_VENDOR_DEVICE_PATH_NODE    Node;\r
+  EFI_DEVICE_PATH_PROTOCOL       End;\r
+} HII_VENDOR_DEVICE_PATH;\r
+\r
+///\r
+/// GUIDed opcodes defined for EDKII implementation\r
+///\r
+#define EFI_IFR_TIANO_GUID \\r
+  { 0xf0b1735, 0x87a0, 0x4193, {0xb2, 0x66, 0x53, 0x8c, 0x38, 0xaf, 0x48, 0xce} }\r
+\r
+#pragma pack(1)\r
+\r
+///\r
+/// EDKII implementation extension opcodes, new extension can be added here later.\r
+///\r
+#define EFI_IFR_EXTEND_OP_LABEL       0x0\r
+#define EFI_IFR_EXTEND_OP_BANNER      0x1\r
+#define EFI_IFR_EXTEND_OP_TIMEOUT     0x2\r
+#define EFI_IFR_EXTEND_OP_CLASS       0x3\r
+#define EFI_IFR_EXTEND_OP_SUBCLASS    0x4\r
+\r
+///\r
+/// Label opcode\r
+///\r
+typedef struct _EFI_IFR_GUID_LABEL {\r
+  EFI_IFR_OP_HEADER   Header;\r
+  ///\r
+  /// EFI_IFR_TIANO_GUID\r
+  ///\r
+  EFI_GUID            Guid;\r
+  ///\r
+  /// EFI_IFR_EXTEND_OP_LABEL\r
+  ///\r
+  UINT8               ExtendOpCode;\r
+  ///\r
+  /// Label Number\r
+  ///\r
+  UINT16              Number;\r
+} EFI_IFR_GUID_LABEL;\r
+\r
+#define EFI_IFR_BANNER_ALIGN_LEFT     0\r
+#define EFI_IFR_BANNER_ALIGN_CENTER   1\r
+#define EFI_IFR_BANNER_ALIGN_RIGHT    2\r
+\r
+///\r
+/// Banner opcode\r
+///\r
+typedef struct _EFI_IFR_GUID_BANNER {\r
+  EFI_IFR_OP_HEADER   Header;\r
+  ///\r
+  /// EFI_IFR_TIANO_GUID\r
+  ///\r
+  EFI_GUID            Guid;\r
+  ///\r
+  /// EFI_IFR_EXTEND_OP_BANNER\r
+  ///\r
+  UINT8               ExtendOpCode;\r
+  EFI_STRING_ID       Title;        ///< The string token for the banner title\r
+  UINT16              LineNumber;   ///< 1-based line number\r
+  UINT8               Alignment;    ///< left, center, or right-aligned\r
+} EFI_IFR_GUID_BANNER;\r
+\r
+///\r
+/// Timeout opcode\r
+///\r
+typedef struct _EFI_IFR_GUID_TIMEOUT {\r
+  EFI_IFR_OP_HEADER   Header;\r
+  ///\r
+  /// EFI_IFR_TIANO_GUID\r
+  ///\r
+  EFI_GUID            Guid;\r
+  ///\r
+  /// EFI_IFR_EXTEND_OP_TIMEOUT\r
+  ///\r
+  UINT8               ExtendOpCode;\r
+  UINT16              TimeOut;       ///< TimeOut Value\r
+} EFI_IFR_GUID_TIMEOUT;\r
+\r
+#define EFI_NON_DEVICE_CLASS              0x00\r
+#define EFI_DISK_DEVICE_CLASS             0x01\r
+#define EFI_VIDEO_DEVICE_CLASS            0x02\r
+#define EFI_NETWORK_DEVICE_CLASS          0x04\r
+#define EFI_INPUT_DEVICE_CLASS            0x08\r
+#define EFI_ON_BOARD_DEVICE_CLASS         0x10\r
+#define EFI_OTHER_DEVICE_CLASS            0x20\r
+\r
+///\r
+/// Device Class opcode\r
+///\r
+typedef struct _EFI_IFR_GUID_CLASS {\r
+  EFI_IFR_OP_HEADER   Header;\r
+  ///\r
+  /// EFI_IFR_TIANO_GUID\r
+  ///\r
+  EFI_GUID            Guid;\r
+  ///\r
+  /// EFI_IFR_EXTEND_OP_CLASS\r
+  ///\r
+  UINT8               ExtendOpCode;\r
+  UINT16              Class;           ///< Device Class from the above\r
+} EFI_IFR_GUID_CLASS;\r
+\r
+#define EFI_SETUP_APPLICATION_SUBCLASS    0x00\r
+#define EFI_GENERAL_APPLICATION_SUBCLASS  0x01\r
+#define EFI_FRONT_PAGE_SUBCLASS           0x02\r
+#define EFI_SINGLE_USE_SUBCLASS           0x03\r
+\r
+///\r
+/// SubClass opcode\r
+///\r
+typedef struct _EFI_IFR_GUID_SUBCLASS {\r
+  EFI_IFR_OP_HEADER   Header;\r
+  ///\r
+  /// EFI_IFR_TIANO_GUID\r
+  ///\r
+  EFI_GUID            Guid;\r
+  ///\r
+  /// EFI_IFR_EXTEND_OP_SUBCLASS\r
+  ///\r
+  UINT8               ExtendOpCode;\r
+  UINT16              SubClass;      ///< Sub Class type from the above\r
+} EFI_IFR_GUID_SUBCLASS;\r
+\r
+///\r
+/// GUIDed opcodes support for framework vfr.\r
+///\r
+#define EFI_IFR_FRAMEWORK_GUID \\r
+  { 0x31ca5d1a, 0xd511, 0x4931, { 0xb7, 0x82, 0xae, 0x6b, 0x2b, 0x17, 0x8c, 0xd7 } }\r
+\r
+///\r
+/// Two extended opcode are added, new extension can be added here later.\r
+/// One is for framework OneOf question Option Key value,\r
+/// Another is for framework vareqval.\r
+///\r
+#define EFI_IFR_EXTEND_OP_OPTIONKEY   0x0\r
+#define EFI_IFR_EXTEND_OP_VAREQNAME   0x1\r
+\r
+///\r
+/// Store the framework vfr option key value\r
+///\r
+typedef struct _EFI_IFR_GUID_OPTIONKEY {\r
+  EFI_IFR_OP_HEADER   Header;\r
+  ///\r
+  /// EFI_IFR_FRAMEWORK_GUID\r
+  ///\r
+  EFI_GUID            Guid;\r
+  ///\r
+  /// EFI_IFR_EXTEND_OP_OPTIONKEY\r
+  ///\r
+  UINT8               ExtendOpCode;\r
+  ///\r
+  /// OneOf Questiond ID binded by OneOf Option\r
+  ///\r
+  EFI_QUESTION_ID     QuestionId;\r
+  ///\r
+  /// The OneOf Option Value.\r
+  ///\r
+  EFI_IFR_TYPE_VALUE  OptionValue;\r
+  ///\r
+  /// The Framework OneOf Option Key Value.\r
+  ///\r
+  UINT16              KeyValue;\r
+} EFI_IFR_GUID_OPTIONKEY;\r
+\r
+///\r
+/// Store the framework vfr vareqval name number\r
+///\r
+typedef struct _EFI_IFR_GUID_VAREQNAME {\r
+  EFI_IFR_OP_HEADER   Header;\r
+  ///\r
+  /// EFI_IFR_FRAMEWORK_GUID\r
+  ///\r
+  EFI_GUID            Guid;\r
+  ///\r
+  /// EFI_IFR_EXTEND_OP_VAREQNAME\r
+  ///\r
+  UINT8               ExtendOpCode;\r
+  ///\r
+  /// Question ID of the Numeric Opcode created.\r
+  ///\r
+  EFI_QUESTION_ID     QuestionId;\r
+  ///\r
+  /// For vareqval (0x100), NameId is 0x100.\r
+  /// This value will converte to a Unicode String following this rule.\r
+  ///            sprintf(StringBuffer, "%d", NameId)\r
+  /// The the Unicode String will be used as a EFI Variable Name.\r
+  ///\r
+  UINT16              NameId;\r
+} EFI_IFR_GUID_VAREQNAME;\r
+\r
+#pragma pack()\r
+\r
+extern EFI_GUID gEfiIfrTianoGuid;\r
+extern EFI_GUID gEfiIfrFrameworkGuid;\r
+\r
+#endif\r
+\r
index 583f7a30bf38e10fe871e76240ca10e5d529265d..048ea651da49140b8a2ceaab62f18d4ba999193e 100644 (file)
@@ -1,10 +1,5 @@
-/** @file\r
-  This file defines NvData Hob GUIDs for System Non Volatile HOB entries \r
-  and the corresponding hob data structure. NvData Hob can be used to report \r
-  the region of the system non volatile data for the specific purpose, \r
-  such as FTW region, Error log region.\r
-  \r
-  It also defines NvDataFv GUID. \r
+/** @file  \r
+  This file defines NvDataFv GUID and FTW working block structure header.\r
   This guid can be used as FileSystemGuid in EFI_FIRMWARE_VOLUME_HEADER if \r
   this FV image contains NV data, such as NV variable data.\r
   This guid can also be used as the signature of FTW working block header.\r
@@ -26,27 +21,42 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #define EFI_SYSTEM_NV_DATA_FV_GUID \\r
   {0xfff12b8d, 0x7696, 0x4c8b, {0xa9, 0x85, 0x27, 0x47, 0x7, 0x5b, 0x4f, 0x50} }\r
 \r
-#define EFI_SYSTEM_NV_DATA_HOB_GUID \\r
-  {0xd6e5092d, 0xc7b2, 0x4872, {0xaf, 0x66, 0xfd, 0xc0, 0xe6, 0xf9, 0x5e, 0x78} }\r
-\r
 ///\r
-/// Hob entry for NV data region\r
+/// NvDataFv GUID used as the signature of FTW working block header.\r
 ///\r
-typedef struct {\r
-  EFI_GUID                  SystemNvDataHobGuid; ///> EFI_SYSTEM_NV_DATA_HOB_GUID\r
-  EFI_GUID                  SystemNvDataFvGuid;  ///> Guid specifies the NvData Fv for the specific purpose, such as FTW, Error Log.\r
-  EFI_LBA                   StartLba;            ///> The starting logical block index.\r
-  UINTN                     StartLbaOffset;      ///> Offset into the starting block at which to the start of NvData region.\r
-  EFI_LBA                   EndLba;              ///> The last logical block index.\r
-  UINTN                     EndLbaOffset;        ///> Offset into the last block at which to the end of Nvdata region.\r
-  UINT32                    DataTypeSignature;   ///> NvData type in the specified NV range.\r
-} NV_SYSTEM_DATA_GUID_TYPE;\r
+extern EFI_GUID gEfiSystemNvDataFvGuid;\r
 \r
-extern EFI_GUID gEfiSystemNvDataHobGuid;\r
+#define WORKING_BLOCK_VALID   0x1\r
+#define WORKING_BLOCK_INVALID 0x2\r
 \r
 ///\r
-/// NvDataFv GUID used as the signature of FTW working block header.\r
+/// EDKII Fault tolerant working block header\r
+/// The header is immediately followed by the write queue data.\r
 ///\r
-extern EFI_GUID gEfiSystemNvDataFvGuid;\r
+typedef struct {\r
+  ///\r
+  /// System Non Volatile FV Guid\r
+  ///\r
+  EFI_GUID  Signature;\r
+  ///\r
+  /// 32bit CRC caculated for this header\r
+  ///\r
+  UINT32    Crc;\r
+  ///\r
+  /// Working block valid bit\r
+  ///\r
+  UINT8     WorkingBlockValid : 1;\r
+  UINT8     WorkingBlockInvalid : 1;\r
+  UINT8     Reserved : 6;\r
+  UINT8     Reserved3[3];\r
+  ///\r
+  /// Total size of the following write queue range.\r
+  ///\r
+  UINT64    WriteQueueSize;\r
+  ///\r
+  /// Write Queue data\r
+  /// UINT8                WriteQueue[WriteQueueSize];\r
+  ///\r
+} EFI_FAULT_TOLERANT_WORKING_BLOCK_HEADER;\r
 \r
 #endif\r
diff --git a/MdeModulePkg/Include/MdeModuleHii.h b/MdeModulePkg/Include/MdeModuleHii.h
deleted file mode 100644 (file)
index 092cdaf..0000000
+++ /dev/null
@@ -1,237 +0,0 @@
-/** @file\r
-  EDKII extented HII IFR guid opcodes.\r
-\r
-Copyright (c) 2006 - 2008, Intel Corporation. <BR>\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
-http://opensource.org/licenses/bsd-license.php\r
-\r
-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
-**/\r
-\r
-#ifndef __MDEMODULE_HII_H__\r
-#define __MDEMODULE_HII_H__\r
-\r
-#define NARROW_CHAR         0xFFF0\r
-#define WIDE_CHAR           0xFFF1\r
-#define NON_BREAKING_CHAR   0xFFF2\r
-\r
-///\r
-/// State defined for password statemachine \r
-///\r
-#define BROWSER_STATE_VALIDATE_PASSWORD  0\r
-#define BROWSER_STATE_SET_PASSWORD       1\r
-\r
-\r
-///\r
-/// HII specific Vendor Device Path Node definition.\r
-///\r
-#pragma pack(1)\r
-typedef struct {\r
-  VENDOR_DEVICE_PATH             VendorDevicePath;\r
-  UINT32                         Reserved;\r
-  UINT64                         UniqueId;\r
-} HII_VENDOR_DEVICE_PATH_NODE;\r
-#pragma pack()\r
-\r
-///\r
-/// HII specific Vendor Device Path definition.\r
-///\r
-typedef struct {\r
-  HII_VENDOR_DEVICE_PATH_NODE    Node;\r
-  EFI_DEVICE_PATH_PROTOCOL       End;\r
-} HII_VENDOR_DEVICE_PATH;\r
-\r
-///\r
-/// GUIDed opcodes defined for EDKII implementation\r
-///\r
-#define EFI_IFR_TIANO_GUID \\r
-  { 0xf0b1735, 0x87a0, 0x4193, {0xb2, 0x66, 0x53, 0x8c, 0x38, 0xaf, 0x48, 0xce} }\r
-\r
-#pragma pack(1)\r
-\r
-///\r
-/// EDKII implementation extension opcodes, new extension can be added here later.\r
-///\r
-#define EFI_IFR_EXTEND_OP_LABEL       0x0\r
-#define EFI_IFR_EXTEND_OP_BANNER      0x1\r
-#define EFI_IFR_EXTEND_OP_TIMEOUT     0x2\r
-#define EFI_IFR_EXTEND_OP_CLASS       0x3\r
-#define EFI_IFR_EXTEND_OP_SUBCLASS    0x4\r
-\r
-///\r
-/// Label opcode\r
-///\r
-typedef struct _EFI_IFR_GUID_LABEL {\r
-  EFI_IFR_OP_HEADER   Header;\r
-  ///\r
-  /// EFI_IFR_TIANO_GUID\r
-  ///\r
-  EFI_GUID            Guid;\r
-  ///\r
-  /// EFI_IFR_EXTEND_OP_LABEL\r
-  ///\r
-  UINT8               ExtendOpCode;\r
-  ///\r
-  /// Label Number\r
-  ///\r
-  UINT16              Number;\r
-} EFI_IFR_GUID_LABEL;\r
-\r
-#define EFI_IFR_BANNER_ALIGN_LEFT     0\r
-#define EFI_IFR_BANNER_ALIGN_CENTER   1\r
-#define EFI_IFR_BANNER_ALIGN_RIGHT    2\r
-\r
-///\r
-/// Banner opcode\r
-///\r
-typedef struct _EFI_IFR_GUID_BANNER {\r
-  EFI_IFR_OP_HEADER   Header;\r
-  ///\r
-  /// EFI_IFR_TIANO_GUID\r
-  ///\r
-  EFI_GUID            Guid;\r
-  ///\r
-  /// EFI_IFR_EXTEND_OP_BANNER\r
-  ///\r
-  UINT8               ExtendOpCode;\r
-  EFI_STRING_ID       Title;        ///< The string token for the banner title\r
-  UINT16              LineNumber;   ///< 1-based line number\r
-  UINT8               Alignment;    ///< left, center, or right-aligned\r
-} EFI_IFR_GUID_BANNER;\r
-\r
-///\r
-/// Timeout opcode\r
-///\r
-typedef struct _EFI_IFR_GUID_TIMEOUT {\r
-  EFI_IFR_OP_HEADER   Header;\r
-  ///\r
-  /// EFI_IFR_TIANO_GUID\r
-  ///\r
-  EFI_GUID            Guid;\r
-  ///\r
-  /// EFI_IFR_EXTEND_OP_TIMEOUT\r
-  ///\r
-  UINT8               ExtendOpCode;\r
-  UINT16              TimeOut;       ///< TimeOut Value\r
-} EFI_IFR_GUID_TIMEOUT;\r
-\r
-#define EFI_NON_DEVICE_CLASS              0x00\r
-#define EFI_DISK_DEVICE_CLASS             0x01\r
-#define EFI_VIDEO_DEVICE_CLASS            0x02\r
-#define EFI_NETWORK_DEVICE_CLASS          0x04\r
-#define EFI_INPUT_DEVICE_CLASS            0x08\r
-#define EFI_ON_BOARD_DEVICE_CLASS         0x10\r
-#define EFI_OTHER_DEVICE_CLASS            0x20\r
-\r
-///\r
-/// Device Class opcode\r
-///\r
-typedef struct _EFI_IFR_GUID_CLASS {\r
-  EFI_IFR_OP_HEADER   Header;\r
-  ///\r
-  /// EFI_IFR_TIANO_GUID\r
-  ///\r
-  EFI_GUID            Guid;\r
-  ///\r
-  /// EFI_IFR_EXTEND_OP_CLASS\r
-  ///\r
-  UINT8               ExtendOpCode;\r
-  UINT16              Class;           ///< Device Class from the above\r
-} EFI_IFR_GUID_CLASS;\r
-\r
-#define EFI_SETUP_APPLICATION_SUBCLASS    0x00\r
-#define EFI_GENERAL_APPLICATION_SUBCLASS  0x01\r
-#define EFI_FRONT_PAGE_SUBCLASS           0x02\r
-#define EFI_SINGLE_USE_SUBCLASS           0x03\r
-\r
-///\r
-/// SubClass opcode\r
-///\r
-typedef struct _EFI_IFR_GUID_SUBCLASS {\r
-  EFI_IFR_OP_HEADER   Header;\r
-  ///\r
-  /// EFI_IFR_TIANO_GUID\r
-  ///\r
-  EFI_GUID            Guid;\r
-  ///\r
-  /// EFI_IFR_EXTEND_OP_SUBCLASS\r
-  ///\r
-  UINT8               ExtendOpCode;\r
-  UINT16              SubClass;      ///< Sub Class type from the above\r
-} EFI_IFR_GUID_SUBCLASS;\r
-\r
-///\r
-/// GUIDed opcodes support for framework vfr.\r
-///\r
-#define EFI_IFR_FRAMEWORK_GUID \\r
-  { 0x31ca5d1a, 0xd511, 0x4931, { 0xb7, 0x82, 0xae, 0x6b, 0x2b, 0x17, 0x8c, 0xd7 } }\r
-\r
-///\r
-/// Two extended opcode are added, new extension can be added here later.\r
-/// One is for framework OneOf question Option Key value,\r
-/// Another is for framework vareqval.\r
-///\r
-#define EFI_IFR_EXTEND_OP_OPTIONKEY   0x0\r
-#define EFI_IFR_EXTEND_OP_VAREQNAME   0x1\r
-\r
-///\r
-/// Store the framework vfr option key value\r
-///\r
-typedef struct _EFI_IFR_GUID_OPTIONKEY {\r
-  EFI_IFR_OP_HEADER   Header;\r
-  ///\r
-  /// EFI_IFR_FRAMEWORK_GUID\r
-  ///\r
-  EFI_GUID            Guid;\r
-  ///\r
-  /// EFI_IFR_EXTEND_OP_OPTIONKEY\r
-  ///\r
-  UINT8               ExtendOpCode;\r
-  ///\r
-  /// OneOf Questiond ID binded by OneOf Option\r
-  ///\r
-  EFI_QUESTION_ID     QuestionId;\r
-  ///\r
-  /// The OneOf Option Value.\r
-  ///\r
-  EFI_IFR_TYPE_VALUE  OptionValue;\r
-  ///\r
-  /// The Framework OneOf Option Key Value.\r
-  ///\r
-  UINT16              KeyValue;\r
-} EFI_IFR_GUID_OPTIONKEY;\r
-\r
-///\r
-/// Store the framework vfr vareqval name number\r
-///\r
-typedef struct _EFI_IFR_GUID_VAREQNAME {\r
-  EFI_IFR_OP_HEADER   Header;\r
-  ///\r
-  /// EFI_IFR_FRAMEWORK_GUID\r
-  ///\r
-  EFI_GUID            Guid;\r
-  ///\r
-  /// EFI_IFR_EXTEND_OP_VAREQNAME\r
-  ///\r
-  UINT8               ExtendOpCode;\r
-  ///\r
-  /// Question ID of the Numeric Opcode created.\r
-  ///\r
-  EFI_QUESTION_ID     QuestionId;\r
-  ///\r
-  /// For vareqval (0x100), NameId is 0x100.\r
-  /// This value will converte to a Unicode String following this rule.\r
-  ///            sprintf(StringBuffer, "%d", NameId)\r
-  /// The the Unicode String will be used as a EFI Variable Name.\r
-  ///\r
-  UINT16              NameId;\r
-} EFI_IFR_GUID_VAREQNAME;\r
-\r
-#pragma pack()\r
-\r
-#endif\r
-\r
diff --git a/MdeModulePkg/Include/Protocol/Capsule.h b/MdeModulePkg/Include/Protocol/Capsule.h
deleted file mode 100644 (file)
index 192d9e7..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-/** @file\r
-\r
-  Capsule Architectural Protocol is responsible to tag UEFI2.0 capsule runtime services\r
-  are ready in EFI_RUNTIME_SERVICES table.\r
-\r
-Copyright (c) 2006 - 2008, 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
-http://opensource.org/licenses/bsd-license.php\r
-\r
-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
-**/\r
-\r
-#ifndef __ARCH_PROTOCOL_CAPSULE_ARCH_H__\r
-#define __ARCH_PROTOCOL_CAPSULE_ARCH_H__\r
-\r
-//\r
-// Global ID for the Capsule Architectural Protocol\r
-//\r
-#define EFI_CAPSULE_ARCH_PROTOCOL_GUID \\r
-  { 0x5053697e, 0x2cbc, 0x4819, {0x90, 0xd9, 0x05, 0x80, 0xde, 0xee, 0x57, 0x54 }}\r
-\r
-extern EFI_GUID gEfiCapsuleArchProtocolGuid;\r
-\r
-#endif\r
diff --git a/MdeModulePkg/Include/WorkingBlockHeader.h b/MdeModulePkg/Include/WorkingBlockHeader.h
deleted file mode 100644 (file)
index 4298d5f..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-/** @file\r
-\r
-  The header structure of FTW working block region.\r
-\r
-Copyright (c) 2006 - 2008, 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
-http://opensource.org/licenses/bsd-license.php\r
-\r
-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
-**/\r
-\r
-#ifndef __EFI_WORKING_BLOCK_HEADER_H__\r
-#define __EFI_WORKING_BLOCK_HEADER_H__\r
-\r
-#define WORKING_BLOCK_VALID   0x1\r
-#define WORKING_BLOCK_INVALID 0x2\r
-\r
-///\r
-/// EDKII Fault tolerant working block header\r
-/// The header is immediately followed by the write queue data.\r
-///\r
-typedef struct {\r
-  ///\r
-  /// System Non Volatile FV Guid\r
-  ///\r
-  EFI_GUID  Signature;\r
-  ///\r
-  /// 32bit CRC caculated for this header\r
-  ///\r
-  UINT32    Crc;\r
-  ///\r
-  /// Working block valid bit\r
-  ///\r
-  UINT8     WorkingBlockValid : 1;\r
-  UINT8     WorkingBlockInvalid : 1;\r
-  UINT8     Reserved : 6;\r
-  UINT8     Reserved3[3];\r
-  ///\r
-  /// Total size of the following write queue range.\r
-  ///\r
-  UINT64    WriteQueueSize;\r
-  ///\r
-  /// Write Queue data\r
-  /// UINT8                WriteQueue[WriteQueueSize];\r
-  ///\r
-} EFI_FAULT_TOLERANT_WORKING_BLOCK_HEADER;\r
-\r
-#endif\r
index e9749d68d4553ccad91817edc53970b377d3c7b5..006de75ab4107464bc911063ca0173e210e19a6b 100644 (file)
@@ -1215,7 +1215,7 @@ InsertDriverImage (
 \r
   if (!Found) {\r
     //\r
-    // if not find the wantted order location, add it as last item of the controller mapping item\r
+    // if not find the wanted order location, add it as last item of the controller mapping item\r
     //\r
     InsertTailList (&OverrideItem->DriverInfoList, &DriverImageInfo->Link);\r
     OverrideItem->DriverInfoNum ++;\r
index 456d9d8fbcfa54e394bb7e18286edfd80f3e6f0e..48f8df483c57edaf6c7aaf33093fce758c606e68 100644 (file)
@@ -24,7 +24,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #include <Library/MemoryAllocationLib.h>\r
 #include <Library/UefiBootServicesTableLib.h>\r
 #include <Library/DevicePathLib.h>\r
-#include <MdeModuleHii.h>\r
+#include <Guid\MdeModuleHii.h>\r
 \r
 \r
 //\r
index 3853a2ec1d8a77b76fb7a2fb15a3afeacece38d6..e9fc4657d49052ef543feee10fdcdf40c62122a9 100644 (file)
@@ -21,7 +21,6 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 \r
 EFI_HII_DATABASE_PROTOCOL *gIfrLibHiiDatabase;\r
 EFI_HII_STRING_PROTOCOL   *gIfrLibHiiString;\r
-GLOBAL_REMOVE_IF_UNREFERENCED CONST EFI_GUID mIfrVendorGuid = EFI_IFR_TIANO_GUID;\r
 \r
 /**\r
   ExtendedIfrSupportLib's constructor. It locates the required protocol:\r
@@ -145,7 +144,7 @@ IfrLibExtractClassFromHiiHandle (
         }\r
 \r
         if ((((EFI_IFR_OP_HEADER *) OpCodeData)->OpCode == EFI_IFR_GUID_OP) &&\r
-             CompareGuid (&mIfrVendorGuid, (EFI_GUID *)(OpCodeData + sizeof (EFI_IFR_OP_HEADER))) &&\r
+             CompareGuid (&gEfiIfrTianoGuid, (EFI_GUID *)(OpCodeData + sizeof (EFI_IFR_OP_HEADER))) &&\r
             (((EFI_IFR_GUID_CLASS *) OpCodeData)->ExtendOpCode == EFI_IFR_EXTEND_OP_CLASS)\r
            ) {\r
           //\r
index 4229b11dbaea821ca1dc97204971853e4ed96c94..5502d851e323327474b0b93f31dad78b3ac1b389 100644 (file)
@@ -54,6 +54,9 @@
   DebugLib\r
   PcdLib\r
 \r
+[Guids]\r
+  gEfiIfrTianoGuid                   ## CONSUMES  ## GUID\r
+\r
 [Protocols]\r
   gEfiHiiDatabaseProtocolGuid        ## CONSUMES\r
   gEfiHiiStringProtocolGuid          ## CONSUMES\r
index 793efdf87849675129f9047f2c756434bebe1983..4524a4e71820c103f556366aec95dfc4b6c0ba00 100644 (file)
@@ -180,7 +180,7 @@ UpdateFormPackageData (
       ExtendOpCode = ((EFI_IFR_GUID_LABEL *) IfrOpHdr)->ExtendOpCode;\r
       LabelNumber = ReadUnaligned16 ((UINT16 *)(VOID *)&((EFI_IFR_GUID_LABEL *)IfrOpHdr)->Number);\r
       if ((ExtendOpCode != EFI_IFR_EXTEND_OP_LABEL) || (LabelNumber != Label) \r
-          || !CompareGuid ((EFI_GUID *)(UINTN)(&((EFI_IFR_GUID_LABEL *)IfrOpHdr)->Guid), &mIfrVendorGuid)) {\r
+          || !CompareGuid ((EFI_GUID *)(UINTN)(&((EFI_IFR_GUID_LABEL *)IfrOpHdr)->Guid), &gEfiIfrTianoGuid)) {\r
         //\r
         // Go to the next Op-Code\r
         //\r
@@ -219,7 +219,7 @@ UpdateFormPackageData (
           IfrOpHdr = (EFI_IFR_OP_HEADER *) ((CHAR8 *) (IfrOpHdr) + IfrOpHdr->Length);\r
           if (IfrOpHdr->OpCode == EFI_IFR_GUID_OP) {\r
             ExtendOpCode = ((EFI_IFR_GUID_LABEL *) IfrOpHdr)->ExtendOpCode;\r
-            if ((ExtendOpCode == EFI_IFR_EXTEND_OP_LABEL) && CompareGuid ((EFI_GUID *)(UINTN)(&((EFI_IFR_GUID_LABEL *)IfrOpHdr)->Guid), &mIfrVendorGuid)) {\r
+            if ((ExtendOpCode == EFI_IFR_EXTEND_OP_LABEL) && CompareGuid ((EFI_GUID *)(UINTN)(&((EFI_IFR_GUID_LABEL *)IfrOpHdr)->Guid), &gEfiIfrTianoGuid)) {\r
               break;\r
             }\r
           }\r
index 43297743301f03e655052fb63430d35ef3577e4c..6851e5ae8dbbcdd623eb97bbf7ec7cb1b266dd1f 100644 (file)
@@ -50,7 +50,7 @@ CreateBannerOpCode (
   Banner.Header.OpCode  = EFI_IFR_GUID_OP;\r
   Banner.Header.Length  = sizeof (EFI_IFR_GUID_BANNER);\r
   Banner.Header.Scope   = 0;\r
-  CopyMem (&Banner.Guid, &mIfrVendorGuid, sizeof (EFI_IFR_GUID));\r
+  CopyMem (&Banner.Guid, &gEfiIfrTianoGuid, sizeof (EFI_IFR_GUID));\r
   Banner.ExtendOpCode   = EFI_IFR_EXTEND_OP_BANNER;\r
   Banner.Title          = Title;\r
   Banner.LineNumber     = LineNumber;\r
index 8a48f9b0cc2304f564bf2a766eaec887cc2e4f24..124eaef0a4371195bae157bc646917b1fcfdcca4 100644 (file)
@@ -32,7 +32,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #include <Library/IfrSupportLib.h>\r
 #include <Library/PcdLib.h>\r
 \r
-#include <MdeModuleHii.h>\r
+#include <Guid/MdeModuleHii.h>\r
 \r
 extern CONST EFI_GUID mIfrVendorGuid;\r
 \r
index 5713ec8611fecbd2abc11547badcd657d472091f..d9a480538708ddd810cc51ff6baa386d36837414 100644 (file)
   ## Hob guid for Pcd Pei Callback Function Table\r
   ## Include/Guid/PcdPeiCallbackFnTableHobGuid.h\r
   gPcdPeiCallbackFnTableHobGuid  = { 0xC625F4B2, 0xEA09, 0x4675, { 0x82, 0xD7, 0xBA, 0x36, 0x82, 0x15, 0x7A, 0x14 }}\r
+\r
+  ## Guid for EDKII implementation GUIDed opcodes\r
+  gEfiIfrTianoGuid      = { 0xf0b1735, 0x87a0, 0x4193, {0xb2, 0x66, 0x53, 0x8c, 0x38, 0xaf, 0x48, 0xce }}\r
+  \r
+  ## Guid for Framework vfr GUIDed opcodes.\r
+  gEfiIfrFrameworkGuid  = { 0x31ca5d1a, 0xd511, 0x4931, { 0xb7, 0x82, 0xae, 0x6b, 0x2b, 0x17, 0x8c, 0xd7 }}\r
   \r
   ## Guid to specify the System Non Volatile FV\r
   ## Include/Guid/SystemNvDataGuid.h\r
   ## Include/Guid/Performance.h\r
   gPerformanceProtocolGuid       = { 0x76B6BDFA, 0x2ACD, 0x4462, { 0x9E, 0x3F, 0xCB, 0x58, 0xC9, 0x69, 0xD9, 0x37 }}\r
 \r
-[Protocols.common]\r
-  ## Capsule Arch protocol specify capsule runtime services are installed.  \r
-  ## Include/Protocol/Capsule.h\r
-  gEfiCapsuleArchProtocolGuid    = { 0x5053697E, 0x2CBC, 0x4819, { 0x90, 0xD9, 0x05, 0x80, 0xDE, 0xEE, 0x57, 0x54 }}\r
-  \r
+[Protocols.common] \r
   ## Load File protocol provides capability to load and unload EFI image into memory and execute it.\r
   ## Include/Protocol/LoadPe32Image.h\r
   gEfiLoadPeImageProtocolGuid    = { 0x5CB5C776, 0x60D5, 0x45EE, { 0x88, 0x3C, 0x45, 0x27, 0x08, 0xCD, 0x74, 0x3F }}\r
   #\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdVpdBaseAddress|0x0|UINT32|0x00010010\r
   \r
-  ## Indicate the max size the platform can support in case of populated capsules.\r
+  ## Indicate the max size of the populated image that the platform can support.\r
+  #  To support the multi populated images, the defautl supported size will \r
+  #  be enlarged to 100MB that is 10 times of the single non-populated image.\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdMaxSizePopulateCapsule|0x6400000|UINT32|0x0001001e\r
   \r
-  ## Indicate the max size the platform can support in case of non-populated capsules.\r
+  ## Indicate the max size of the non-populated image that the platform can support.\r
+  #  The default size is 10MB for the casule image without populated flag setting.\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdMaxSizeNonPopulateCapsule|0xa00000|UINT32|0x0001001f\r
   \r
   ## Maximun number of performance log entries during PEI phase.\r
index 2d5411a607c07a1799e37f09c4407a5d31d42142..14246b0669e5a984266445c34ea391519a7e4272 100644 (file)
@@ -235,15 +235,23 @@ QueryCapsuleCapabilities (
     if (!FeaturePcdGet(PcdSupportUpdateCapsuleReset)) {\r
       return EFI_UNSUPPORTED;\r
     }\r
-    *ResetType = EfiResetWarm;\r
-    *MaxiumCapsuleSize = FixedPcdGet32(PcdMaxSizePopulateCapsule);\r
+    *ResetType = EfiResetWarm;   \r
   } else {\r
     //\r
     // For non-reset capsule image.\r
     //\r
     *ResetType = EfiResetCold;\r
+  }\r
+  \r
+  //\r
+  // The support max capsule image size\r
+  //\r
+  if ((CapsuleHeader->Flags & CAPSULE_FLAGS_POPULATE_SYSTEM_TABLE) != 0) {\r
+    *MaxiumCapsuleSize = FixedPcdGet32(PcdMaxSizePopulateCapsule);\r
+  } else {\r
     *MaxiumCapsuleSize = FixedPcdGet32(PcdMaxSizeNonPopulateCapsule);\r
   }\r
+\r
   return EFI_SUCCESS;\r
 }\r
 \r
index dc516f4f64bdcd45fe6e8d161703e98a291b271d..2922e174870213aac88562f713ed78240201914c 100644 (file)
@@ -30,7 +30,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #include <Library/BaseLib.h>\r
 #include <Library/PcdLib.h>\r
 \r
-#include <MdeModuleHii.h>\r
+#include <Guid/MdeModuleHii.h>\r
 \r
 #include <Protocol/HiiFont.h>\r
 #include <Protocol/HiiDatabase.h>\r
index fb536f6351c1c5601bab002d85eab3059b82bc99..d33740826cbf9b6b85ccbcbe8c5a2ff26cb1bada 100644 (file)
@@ -32,7 +32,7 @@ Revision History
 #include <Protocol/HiiDatabase.h>\r
 #include <Protocol/HiiString.h>\r
 \r
-#include <MdeModuleHii.h>\r
+#include <Guid/MdeModuleHii.h>\r
 #include <Library/DebugLib.h>\r
 #include <Library/BaseMemoryLib.h>\r
 #include <Library/UefiRuntimeServicesTableLib.h>\r
index dfc5b36ffa360dd0fd9a8c26599b97f6c1aaf098..c33e1798b2b7da51a609ccf95b5ee0fd5294f0a0 100644 (file)
@@ -32,8 +32,6 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #include <Library/UefiBootServicesTableLib.h>\r
 #include <Library/DevicePathLib.h>\r
 \r
-#include <WorkingBlockHeader.h>\r
-\r
 //\r
 // Flash erase polarity is 1\r
 //\r
index cebcf47c36961245feb2c23a16b3ea84621735ed..3770df8ba1e35a3860c99c96f55370471df3cd69 100644 (file)
 \r
 [FeaturePcd.common]\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdPeiPcdDatabaseSetEnabled\r
-  gEfiMdeModulePkgTokenSpaceGuid.PcdPeiPcdDatabaseGetSizeEnabled\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdPeiPcdDatabaseExEnabled\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdPeiPcdDatabaseCallbackOnSetEnabled\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdPeiPcdDatabaseGetSizeEnabled\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdPeiPcdDatabaseTraverseEnabled\r
 \r
 [FixedPcd.common]\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdVpdBaseAddress\r
-  gEfiMdeModulePkgTokenSpaceGuid.PcdMaxPeiPcdCallBackNumberPerPcdEntry\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdMaxPeiPcdCallBackNumberPerPcdEntry || PcdPeiPcdDatabaseCallbackOnSetEnabled\r
 \r
 [Depex]\r
   TRUE\r
index 1f8ebf968dd27e81d452ef5e4055350c0beed578..094043f4eeca9e629a2194bc492fdbca1a1b14e6 100644 (file)
@@ -24,10 +24,6 @@ BOOLEAN          mInScopeGrayOut;
 FORM_EXPRESSION  *mSuppressExpression;\r
 FORM_EXPRESSION  *mGrayOutExpression;\r
 \r
-EFI_GUID  gTianoHiiIfrGuid = EFI_IFR_TIANO_GUID;\r
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_GUID  mFrameworkHiiCompatibilityGuid = EFI_IFR_FRAMEWORK_GUID;\r
-\r
-\r
 /**\r
   Initialize Statement header members.\r
 \r
@@ -148,7 +144,7 @@ IsNextOpCodeGuidedVarEqName (
   //\r
   OpCodeData += ((EFI_IFR_OP_HEADER *) OpCodeData)->Length;\r
   if (*OpCodeData == EFI_IFR_GUID_OP) {\r
-    if (CompareGuid (&mFrameworkHiiCompatibilityGuid, (EFI_GUID *)(OpCodeData + sizeof (EFI_IFR_OP_HEADER)))) {\r
+    if (CompareGuid (&gEfiIfrFrameworkGuid, (EFI_GUID *)(OpCodeData + sizeof (EFI_IFR_OP_HEADER)))) {\r
       //\r
       // Specific GUIDed opcodes to support IFR generated from Framework HII VFR \r
       //\r
@@ -1623,7 +1619,7 @@ ParseOpCodes (
     // Vendor specific\r
     //\r
     case EFI_IFR_GUID_OP:\r
-      if (CompareGuid (&gTianoHiiIfrGuid, (EFI_GUID *)(OpCodeData + sizeof (EFI_IFR_OP_HEADER)))) {\r
+      if (CompareGuid (&gEfiIfrTianoGuid, (EFI_GUID *)(OpCodeData + sizeof (EFI_IFR_OP_HEADER)))) {\r
         //\r
         // Tiano specific GUIDed opcodes\r
         //\r
index b3912b7862440b5755f9da90d83d0f47c3dc06b7..cbdcbd5a1d8eea8ce86a893ebd09576e3239913c 100644 (file)
@@ -30,7 +30,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #include <Protocol/HiiString.h>\r
 #include <Protocol/ConsoleControl.h>\r
 \r
-#include <MdeModuleHii.h>\r
+#include <Guid/MdeModuleHii.h>\r
 \r
 #include <Library/PrintLib.h>\r
 #include <Library/DebugLib.h>\r
index f808d668000b59eb370c63a65ebe72528edc12f9..78a7a838a724eb9f88dd2acf1d873746e0a15f39 100644 (file)
   HiiLib\r
   ExtendedHiiLib\r
 \r
+[Guids]\r
+  gEfiIfrTianoGuid                              ## CONSUMES  ## GUID\r
+  gEfiIfrFrameworkGuid                          ## CONSUMES  ## GUID\r
+\r
 [Protocols]\r
   gEfiHiiConfigAccessProtocolGuid               ## CONSUMES\r
   gEfiHiiStringProtocolGuid                     ## CONSUMES\r