From: lgao4 Date: Mon, 23 Feb 2009 15:18:48 +0000 (+0000) Subject: Move MdeModuleHii.h into Include\Guid directory X-Git-Tag: edk2-stable201903~18644 X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=commitdiff_plain;h=5c526736370b475e85c59fafe3900101a95e93d3 Move MdeModuleHii.h into Include\Guid directory 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 --- diff --git a/MdeModulePkg/Include/Guid/MdeModuleHii.h b/MdeModulePkg/Include/Guid/MdeModuleHii.h new file mode 100644 index 0000000000..e66a944c08 --- /dev/null +++ b/MdeModulePkg/Include/Guid/MdeModuleHii.h @@ -0,0 +1,240 @@ +/** @file + EDKII extented HII IFR guid opcodes. + +Copyright (c) 2006 - 2008, Intel Corporation.
+All rights reserved. This program and the accompanying materials +are licensed and made available under the terms and conditions of the BSD License +which accompanies this distribution. The full text of the license may be found at +http://opensource.org/licenses/bsd-license.php + +THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, +WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. + +**/ + +#ifndef __MDEMODULE_HII_H__ +#define __MDEMODULE_HII_H__ + +#define NARROW_CHAR 0xFFF0 +#define WIDE_CHAR 0xFFF1 +#define NON_BREAKING_CHAR 0xFFF2 + +/// +/// State defined for password statemachine +/// +#define BROWSER_STATE_VALIDATE_PASSWORD 0 +#define BROWSER_STATE_SET_PASSWORD 1 + + +/// +/// HII specific Vendor Device Path Node definition. +/// +#pragma pack(1) +typedef struct { + VENDOR_DEVICE_PATH VendorDevicePath; + UINT32 Reserved; + UINT64 UniqueId; +} HII_VENDOR_DEVICE_PATH_NODE; +#pragma pack() + +/// +/// HII specific Vendor Device Path definition. +/// +typedef struct { + HII_VENDOR_DEVICE_PATH_NODE Node; + EFI_DEVICE_PATH_PROTOCOL End; +} HII_VENDOR_DEVICE_PATH; + +/// +/// GUIDed opcodes defined for EDKII implementation +/// +#define EFI_IFR_TIANO_GUID \ + { 0xf0b1735, 0x87a0, 0x4193, {0xb2, 0x66, 0x53, 0x8c, 0x38, 0xaf, 0x48, 0xce} } + +#pragma pack(1) + +/// +/// EDKII implementation extension opcodes, new extension can be added here later. +/// +#define EFI_IFR_EXTEND_OP_LABEL 0x0 +#define EFI_IFR_EXTEND_OP_BANNER 0x1 +#define EFI_IFR_EXTEND_OP_TIMEOUT 0x2 +#define EFI_IFR_EXTEND_OP_CLASS 0x3 +#define EFI_IFR_EXTEND_OP_SUBCLASS 0x4 + +/// +/// Label opcode +/// +typedef struct _EFI_IFR_GUID_LABEL { + EFI_IFR_OP_HEADER Header; + /// + /// EFI_IFR_TIANO_GUID + /// + EFI_GUID Guid; + /// + /// EFI_IFR_EXTEND_OP_LABEL + /// + UINT8 ExtendOpCode; + /// + /// Label Number + /// + UINT16 Number; +} EFI_IFR_GUID_LABEL; + +#define EFI_IFR_BANNER_ALIGN_LEFT 0 +#define EFI_IFR_BANNER_ALIGN_CENTER 1 +#define EFI_IFR_BANNER_ALIGN_RIGHT 2 + +/// +/// Banner opcode +/// +typedef struct _EFI_IFR_GUID_BANNER { + EFI_IFR_OP_HEADER Header; + /// + /// EFI_IFR_TIANO_GUID + /// + EFI_GUID Guid; + /// + /// EFI_IFR_EXTEND_OP_BANNER + /// + UINT8 ExtendOpCode; + EFI_STRING_ID Title; ///< The string token for the banner title + UINT16 LineNumber; ///< 1-based line number + UINT8 Alignment; ///< left, center, or right-aligned +} EFI_IFR_GUID_BANNER; + +/// +/// Timeout opcode +/// +typedef struct _EFI_IFR_GUID_TIMEOUT { + EFI_IFR_OP_HEADER Header; + /// + /// EFI_IFR_TIANO_GUID + /// + EFI_GUID Guid; + /// + /// EFI_IFR_EXTEND_OP_TIMEOUT + /// + UINT8 ExtendOpCode; + UINT16 TimeOut; ///< TimeOut Value +} EFI_IFR_GUID_TIMEOUT; + +#define EFI_NON_DEVICE_CLASS 0x00 +#define EFI_DISK_DEVICE_CLASS 0x01 +#define EFI_VIDEO_DEVICE_CLASS 0x02 +#define EFI_NETWORK_DEVICE_CLASS 0x04 +#define EFI_INPUT_DEVICE_CLASS 0x08 +#define EFI_ON_BOARD_DEVICE_CLASS 0x10 +#define EFI_OTHER_DEVICE_CLASS 0x20 + +/// +/// Device Class opcode +/// +typedef struct _EFI_IFR_GUID_CLASS { + EFI_IFR_OP_HEADER Header; + /// + /// EFI_IFR_TIANO_GUID + /// + EFI_GUID Guid; + /// + /// EFI_IFR_EXTEND_OP_CLASS + /// + UINT8 ExtendOpCode; + UINT16 Class; ///< Device Class from the above +} EFI_IFR_GUID_CLASS; + +#define EFI_SETUP_APPLICATION_SUBCLASS 0x00 +#define EFI_GENERAL_APPLICATION_SUBCLASS 0x01 +#define EFI_FRONT_PAGE_SUBCLASS 0x02 +#define EFI_SINGLE_USE_SUBCLASS 0x03 + +/// +/// SubClass opcode +/// +typedef struct _EFI_IFR_GUID_SUBCLASS { + EFI_IFR_OP_HEADER Header; + /// + /// EFI_IFR_TIANO_GUID + /// + EFI_GUID Guid; + /// + /// EFI_IFR_EXTEND_OP_SUBCLASS + /// + UINT8 ExtendOpCode; + UINT16 SubClass; ///< Sub Class type from the above +} EFI_IFR_GUID_SUBCLASS; + +/// +/// GUIDed opcodes support for framework vfr. +/// +#define EFI_IFR_FRAMEWORK_GUID \ + { 0x31ca5d1a, 0xd511, 0x4931, { 0xb7, 0x82, 0xae, 0x6b, 0x2b, 0x17, 0x8c, 0xd7 } } + +/// +/// Two extended opcode are added, new extension can be added here later. +/// One is for framework OneOf question Option Key value, +/// Another is for framework vareqval. +/// +#define EFI_IFR_EXTEND_OP_OPTIONKEY 0x0 +#define EFI_IFR_EXTEND_OP_VAREQNAME 0x1 + +/// +/// Store the framework vfr option key value +/// +typedef struct _EFI_IFR_GUID_OPTIONKEY { + EFI_IFR_OP_HEADER Header; + /// + /// EFI_IFR_FRAMEWORK_GUID + /// + EFI_GUID Guid; + /// + /// EFI_IFR_EXTEND_OP_OPTIONKEY + /// + UINT8 ExtendOpCode; + /// + /// OneOf Questiond ID binded by OneOf Option + /// + EFI_QUESTION_ID QuestionId; + /// + /// The OneOf Option Value. + /// + EFI_IFR_TYPE_VALUE OptionValue; + /// + /// The Framework OneOf Option Key Value. + /// + UINT16 KeyValue; +} EFI_IFR_GUID_OPTIONKEY; + +/// +/// Store the framework vfr vareqval name number +/// +typedef struct _EFI_IFR_GUID_VAREQNAME { + EFI_IFR_OP_HEADER Header; + /// + /// EFI_IFR_FRAMEWORK_GUID + /// + EFI_GUID Guid; + /// + /// EFI_IFR_EXTEND_OP_VAREQNAME + /// + UINT8 ExtendOpCode; + /// + /// Question ID of the Numeric Opcode created. + /// + EFI_QUESTION_ID QuestionId; + /// + /// For vareqval (0x100), NameId is 0x100. + /// This value will converte to a Unicode String following this rule. + /// sprintf(StringBuffer, "%d", NameId) + /// The the Unicode String will be used as a EFI Variable Name. + /// + UINT16 NameId; +} EFI_IFR_GUID_VAREQNAME; + +#pragma pack() + +extern EFI_GUID gEfiIfrTianoGuid; +extern EFI_GUID gEfiIfrFrameworkGuid; + +#endif + diff --git a/MdeModulePkg/Include/Guid/SystemNvDataGuid.h b/MdeModulePkg/Include/Guid/SystemNvDataGuid.h index 583f7a30bf..048ea651da 100644 --- a/MdeModulePkg/Include/Guid/SystemNvDataGuid.h +++ b/MdeModulePkg/Include/Guid/SystemNvDataGuid.h @@ -1,10 +1,5 @@ -/** @file - This file defines NvData Hob GUIDs for System Non Volatile HOB entries - and the corresponding hob data structure. NvData Hob can be used to report - the region of the system non volatile data for the specific purpose, - such as FTW region, Error log region. - - It also defines NvDataFv GUID. +/** @file + This file defines NvDataFv GUID and FTW working block structure header. This guid can be used as FileSystemGuid in EFI_FIRMWARE_VOLUME_HEADER if this FV image contains NV data, such as NV variable data. This guid can also be used as the signature of FTW working block header. @@ -26,27 +21,42 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. #define EFI_SYSTEM_NV_DATA_FV_GUID \ {0xfff12b8d, 0x7696, 0x4c8b, {0xa9, 0x85, 0x27, 0x47, 0x7, 0x5b, 0x4f, 0x50} } -#define EFI_SYSTEM_NV_DATA_HOB_GUID \ - {0xd6e5092d, 0xc7b2, 0x4872, {0xaf, 0x66, 0xfd, 0xc0, 0xe6, 0xf9, 0x5e, 0x78} } - /// -/// Hob entry for NV data region +/// NvDataFv GUID used as the signature of FTW working block header. /// -typedef struct { - EFI_GUID SystemNvDataHobGuid; ///> EFI_SYSTEM_NV_DATA_HOB_GUID - EFI_GUID SystemNvDataFvGuid; ///> Guid specifies the NvData Fv for the specific purpose, such as FTW, Error Log. - EFI_LBA StartLba; ///> The starting logical block index. - UINTN StartLbaOffset; ///> Offset into the starting block at which to the start of NvData region. - EFI_LBA EndLba; ///> The last logical block index. - UINTN EndLbaOffset; ///> Offset into the last block at which to the end of Nvdata region. - UINT32 DataTypeSignature; ///> NvData type in the specified NV range. -} NV_SYSTEM_DATA_GUID_TYPE; +extern EFI_GUID gEfiSystemNvDataFvGuid; -extern EFI_GUID gEfiSystemNvDataHobGuid; +#define WORKING_BLOCK_VALID 0x1 +#define WORKING_BLOCK_INVALID 0x2 /// -/// NvDataFv GUID used as the signature of FTW working block header. +/// EDKII Fault tolerant working block header +/// The header is immediately followed by the write queue data. /// -extern EFI_GUID gEfiSystemNvDataFvGuid; +typedef struct { + /// + /// System Non Volatile FV Guid + /// + EFI_GUID Signature; + /// + /// 32bit CRC caculated for this header + /// + UINT32 Crc; + /// + /// Working block valid bit + /// + UINT8 WorkingBlockValid : 1; + UINT8 WorkingBlockInvalid : 1; + UINT8 Reserved : 6; + UINT8 Reserved3[3]; + /// + /// Total size of the following write queue range. + /// + UINT64 WriteQueueSize; + /// + /// Write Queue data + /// UINT8 WriteQueue[WriteQueueSize]; + /// +} EFI_FAULT_TOLERANT_WORKING_BLOCK_HEADER; #endif diff --git a/MdeModulePkg/Include/MdeModuleHii.h b/MdeModulePkg/Include/MdeModuleHii.h deleted file mode 100644 index 092cdaf310..0000000000 --- a/MdeModulePkg/Include/MdeModuleHii.h +++ /dev/null @@ -1,237 +0,0 @@ -/** @file - EDKII extented HII IFR guid opcodes. - -Copyright (c) 2006 - 2008, Intel Corporation.
-All rights reserved. This program and the accompanying materials -are licensed and made available under the terms and conditions of the BSD License -which accompanies this distribution. The full text of the license may be found at -http://opensource.org/licenses/bsd-license.php - -THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. - -**/ - -#ifndef __MDEMODULE_HII_H__ -#define __MDEMODULE_HII_H__ - -#define NARROW_CHAR 0xFFF0 -#define WIDE_CHAR 0xFFF1 -#define NON_BREAKING_CHAR 0xFFF2 - -/// -/// State defined for password statemachine -/// -#define BROWSER_STATE_VALIDATE_PASSWORD 0 -#define BROWSER_STATE_SET_PASSWORD 1 - - -/// -/// HII specific Vendor Device Path Node definition. -/// -#pragma pack(1) -typedef struct { - VENDOR_DEVICE_PATH VendorDevicePath; - UINT32 Reserved; - UINT64 UniqueId; -} HII_VENDOR_DEVICE_PATH_NODE; -#pragma pack() - -/// -/// HII specific Vendor Device Path definition. -/// -typedef struct { - HII_VENDOR_DEVICE_PATH_NODE Node; - EFI_DEVICE_PATH_PROTOCOL End; -} HII_VENDOR_DEVICE_PATH; - -/// -/// GUIDed opcodes defined for EDKII implementation -/// -#define EFI_IFR_TIANO_GUID \ - { 0xf0b1735, 0x87a0, 0x4193, {0xb2, 0x66, 0x53, 0x8c, 0x38, 0xaf, 0x48, 0xce} } - -#pragma pack(1) - -/// -/// EDKII implementation extension opcodes, new extension can be added here later. -/// -#define EFI_IFR_EXTEND_OP_LABEL 0x0 -#define EFI_IFR_EXTEND_OP_BANNER 0x1 -#define EFI_IFR_EXTEND_OP_TIMEOUT 0x2 -#define EFI_IFR_EXTEND_OP_CLASS 0x3 -#define EFI_IFR_EXTEND_OP_SUBCLASS 0x4 - -/// -/// Label opcode -/// -typedef struct _EFI_IFR_GUID_LABEL { - EFI_IFR_OP_HEADER Header; - /// - /// EFI_IFR_TIANO_GUID - /// - EFI_GUID Guid; - /// - /// EFI_IFR_EXTEND_OP_LABEL - /// - UINT8 ExtendOpCode; - /// - /// Label Number - /// - UINT16 Number; -} EFI_IFR_GUID_LABEL; - -#define EFI_IFR_BANNER_ALIGN_LEFT 0 -#define EFI_IFR_BANNER_ALIGN_CENTER 1 -#define EFI_IFR_BANNER_ALIGN_RIGHT 2 - -/// -/// Banner opcode -/// -typedef struct _EFI_IFR_GUID_BANNER { - EFI_IFR_OP_HEADER Header; - /// - /// EFI_IFR_TIANO_GUID - /// - EFI_GUID Guid; - /// - /// EFI_IFR_EXTEND_OP_BANNER - /// - UINT8 ExtendOpCode; - EFI_STRING_ID Title; ///< The string token for the banner title - UINT16 LineNumber; ///< 1-based line number - UINT8 Alignment; ///< left, center, or right-aligned -} EFI_IFR_GUID_BANNER; - -/// -/// Timeout opcode -/// -typedef struct _EFI_IFR_GUID_TIMEOUT { - EFI_IFR_OP_HEADER Header; - /// - /// EFI_IFR_TIANO_GUID - /// - EFI_GUID Guid; - /// - /// EFI_IFR_EXTEND_OP_TIMEOUT - /// - UINT8 ExtendOpCode; - UINT16 TimeOut; ///< TimeOut Value -} EFI_IFR_GUID_TIMEOUT; - -#define EFI_NON_DEVICE_CLASS 0x00 -#define EFI_DISK_DEVICE_CLASS 0x01 -#define EFI_VIDEO_DEVICE_CLASS 0x02 -#define EFI_NETWORK_DEVICE_CLASS 0x04 -#define EFI_INPUT_DEVICE_CLASS 0x08 -#define EFI_ON_BOARD_DEVICE_CLASS 0x10 -#define EFI_OTHER_DEVICE_CLASS 0x20 - -/// -/// Device Class opcode -/// -typedef struct _EFI_IFR_GUID_CLASS { - EFI_IFR_OP_HEADER Header; - /// - /// EFI_IFR_TIANO_GUID - /// - EFI_GUID Guid; - /// - /// EFI_IFR_EXTEND_OP_CLASS - /// - UINT8 ExtendOpCode; - UINT16 Class; ///< Device Class from the above -} EFI_IFR_GUID_CLASS; - -#define EFI_SETUP_APPLICATION_SUBCLASS 0x00 -#define EFI_GENERAL_APPLICATION_SUBCLASS 0x01 -#define EFI_FRONT_PAGE_SUBCLASS 0x02 -#define EFI_SINGLE_USE_SUBCLASS 0x03 - -/// -/// SubClass opcode -/// -typedef struct _EFI_IFR_GUID_SUBCLASS { - EFI_IFR_OP_HEADER Header; - /// - /// EFI_IFR_TIANO_GUID - /// - EFI_GUID Guid; - /// - /// EFI_IFR_EXTEND_OP_SUBCLASS - /// - UINT8 ExtendOpCode; - UINT16 SubClass; ///< Sub Class type from the above -} EFI_IFR_GUID_SUBCLASS; - -/// -/// GUIDed opcodes support for framework vfr. -/// -#define EFI_IFR_FRAMEWORK_GUID \ - { 0x31ca5d1a, 0xd511, 0x4931, { 0xb7, 0x82, 0xae, 0x6b, 0x2b, 0x17, 0x8c, 0xd7 } } - -/// -/// Two extended opcode are added, new extension can be added here later. -/// One is for framework OneOf question Option Key value, -/// Another is for framework vareqval. -/// -#define EFI_IFR_EXTEND_OP_OPTIONKEY 0x0 -#define EFI_IFR_EXTEND_OP_VAREQNAME 0x1 - -/// -/// Store the framework vfr option key value -/// -typedef struct _EFI_IFR_GUID_OPTIONKEY { - EFI_IFR_OP_HEADER Header; - /// - /// EFI_IFR_FRAMEWORK_GUID - /// - EFI_GUID Guid; - /// - /// EFI_IFR_EXTEND_OP_OPTIONKEY - /// - UINT8 ExtendOpCode; - /// - /// OneOf Questiond ID binded by OneOf Option - /// - EFI_QUESTION_ID QuestionId; - /// - /// The OneOf Option Value. - /// - EFI_IFR_TYPE_VALUE OptionValue; - /// - /// The Framework OneOf Option Key Value. - /// - UINT16 KeyValue; -} EFI_IFR_GUID_OPTIONKEY; - -/// -/// Store the framework vfr vareqval name number -/// -typedef struct _EFI_IFR_GUID_VAREQNAME { - EFI_IFR_OP_HEADER Header; - /// - /// EFI_IFR_FRAMEWORK_GUID - /// - EFI_GUID Guid; - /// - /// EFI_IFR_EXTEND_OP_VAREQNAME - /// - UINT8 ExtendOpCode; - /// - /// Question ID of the Numeric Opcode created. - /// - EFI_QUESTION_ID QuestionId; - /// - /// For vareqval (0x100), NameId is 0x100. - /// This value will converte to a Unicode String following this rule. - /// sprintf(StringBuffer, "%d", NameId) - /// The the Unicode String will be used as a EFI Variable Name. - /// - UINT16 NameId; -} EFI_IFR_GUID_VAREQNAME; - -#pragma pack() - -#endif - diff --git a/MdeModulePkg/Include/Protocol/Capsule.h b/MdeModulePkg/Include/Protocol/Capsule.h deleted file mode 100644 index 192d9e7851..0000000000 --- a/MdeModulePkg/Include/Protocol/Capsule.h +++ /dev/null @@ -1,28 +0,0 @@ -/** @file - - Capsule Architectural Protocol is responsible to tag UEFI2.0 capsule runtime services - are ready in EFI_RUNTIME_SERVICES table. - -Copyright (c) 2006 - 2008, Intel Corporation -All rights reserved. This program and the accompanying materials -are licensed and made available under the terms and conditions of the BSD License -which accompanies this distribution. The full text of the license may be found at -http://opensource.org/licenses/bsd-license.php - -THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. - -**/ - -#ifndef __ARCH_PROTOCOL_CAPSULE_ARCH_H__ -#define __ARCH_PROTOCOL_CAPSULE_ARCH_H__ - -// -// Global ID for the Capsule Architectural Protocol -// -#define EFI_CAPSULE_ARCH_PROTOCOL_GUID \ - { 0x5053697e, 0x2cbc, 0x4819, {0x90, 0xd9, 0x05, 0x80, 0xde, 0xee, 0x57, 0x54 }} - -extern EFI_GUID gEfiCapsuleArchProtocolGuid; - -#endif diff --git a/MdeModulePkg/Include/WorkingBlockHeader.h b/MdeModulePkg/Include/WorkingBlockHeader.h deleted file mode 100644 index 4298d5fe18..0000000000 --- a/MdeModulePkg/Include/WorkingBlockHeader.h +++ /dev/null @@ -1,52 +0,0 @@ -/** @file - - The header structure of FTW working block region. - -Copyright (c) 2006 - 2008, Intel Corporation -All rights reserved. This program and the accompanying materials -are licensed and made available under the terms and conditions of the BSD License -which accompanies this distribution. The full text of the license may be found at -http://opensource.org/licenses/bsd-license.php - -THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. - -**/ - -#ifndef __EFI_WORKING_BLOCK_HEADER_H__ -#define __EFI_WORKING_BLOCK_HEADER_H__ - -#define WORKING_BLOCK_VALID 0x1 -#define WORKING_BLOCK_INVALID 0x2 - -/// -/// EDKII Fault tolerant working block header -/// The header is immediately followed by the write queue data. -/// -typedef struct { - /// - /// System Non Volatile FV Guid - /// - EFI_GUID Signature; - /// - /// 32bit CRC caculated for this header - /// - UINT32 Crc; - /// - /// Working block valid bit - /// - UINT8 WorkingBlockValid : 1; - UINT8 WorkingBlockInvalid : 1; - UINT8 Reserved : 6; - UINT8 Reserved3[3]; - /// - /// Total size of the following write queue range. - /// - UINT64 WriteQueueSize; - /// - /// Write Queue data - /// UINT8 WriteQueue[WriteQueueSize]; - /// -} EFI_FAULT_TOLERANT_WORKING_BLOCK_HEADER; - -#endif diff --git a/MdeModulePkg/Library/DxePlatDriOverLib/PlatDriOverLib.c b/MdeModulePkg/Library/DxePlatDriOverLib/PlatDriOverLib.c index e9749d68d4..006de75ab4 100644 --- a/MdeModulePkg/Library/DxePlatDriOverLib/PlatDriOverLib.c +++ b/MdeModulePkg/Library/DxePlatDriOverLib/PlatDriOverLib.c @@ -1215,7 +1215,7 @@ InsertDriverImage ( if (!Found) { // - // if not find the wantted order location, add it as last item of the controller mapping item + // if not find the wanted order location, add it as last item of the controller mapping item // InsertTailList (&OverrideItem->DriverInfoList, &DriverImageInfo->Link); OverrideItem->DriverInfoNum ++; diff --git a/MdeModulePkg/Library/ExtendedHiiLib/ExtendedHiiLib.c b/MdeModulePkg/Library/ExtendedHiiLib/ExtendedHiiLib.c index 456d9d8fbc..48f8df483c 100644 --- a/MdeModulePkg/Library/ExtendedHiiLib/ExtendedHiiLib.c +++ b/MdeModulePkg/Library/ExtendedHiiLib/ExtendedHiiLib.c @@ -24,7 +24,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. #include #include #include -#include +#include // diff --git a/MdeModulePkg/Library/ExtendedIfrSupportLib/Common.c b/MdeModulePkg/Library/ExtendedIfrSupportLib/Common.c index 3853a2ec1d..e9fc4657d4 100644 --- a/MdeModulePkg/Library/ExtendedIfrSupportLib/Common.c +++ b/MdeModulePkg/Library/ExtendedIfrSupportLib/Common.c @@ -21,7 +21,6 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. EFI_HII_DATABASE_PROTOCOL *gIfrLibHiiDatabase; EFI_HII_STRING_PROTOCOL *gIfrLibHiiString; -GLOBAL_REMOVE_IF_UNREFERENCED CONST EFI_GUID mIfrVendorGuid = EFI_IFR_TIANO_GUID; /** ExtendedIfrSupportLib's constructor. It locates the required protocol: @@ -145,7 +144,7 @@ IfrLibExtractClassFromHiiHandle ( } if ((((EFI_IFR_OP_HEADER *) OpCodeData)->OpCode == EFI_IFR_GUID_OP) && - CompareGuid (&mIfrVendorGuid, (EFI_GUID *)(OpCodeData + sizeof (EFI_IFR_OP_HEADER))) && + CompareGuid (&gEfiIfrTianoGuid, (EFI_GUID *)(OpCodeData + sizeof (EFI_IFR_OP_HEADER))) && (((EFI_IFR_GUID_CLASS *) OpCodeData)->ExtendOpCode == EFI_IFR_EXTEND_OP_CLASS) ) { // diff --git a/MdeModulePkg/Library/ExtendedIfrSupportLib/ExtendedIfrSupportLib.inf b/MdeModulePkg/Library/ExtendedIfrSupportLib/ExtendedIfrSupportLib.inf index 4229b11dba..5502d851e3 100644 --- a/MdeModulePkg/Library/ExtendedIfrSupportLib/ExtendedIfrSupportLib.inf +++ b/MdeModulePkg/Library/ExtendedIfrSupportLib/ExtendedIfrSupportLib.inf @@ -54,6 +54,9 @@ DebugLib PcdLib +[Guids] + gEfiIfrTianoGuid ## CONSUMES ## GUID + [Protocols] gEfiHiiDatabaseProtocolGuid ## CONSUMES gEfiHiiStringProtocolGuid ## CONSUMES diff --git a/MdeModulePkg/Library/ExtendedIfrSupportLib/Form.c b/MdeModulePkg/Library/ExtendedIfrSupportLib/Form.c index 793efdf878..4524a4e718 100644 --- a/MdeModulePkg/Library/ExtendedIfrSupportLib/Form.c +++ b/MdeModulePkg/Library/ExtendedIfrSupportLib/Form.c @@ -180,7 +180,7 @@ UpdateFormPackageData ( ExtendOpCode = ((EFI_IFR_GUID_LABEL *) IfrOpHdr)->ExtendOpCode; LabelNumber = ReadUnaligned16 ((UINT16 *)(VOID *)&((EFI_IFR_GUID_LABEL *)IfrOpHdr)->Number); if ((ExtendOpCode != EFI_IFR_EXTEND_OP_LABEL) || (LabelNumber != Label) - || !CompareGuid ((EFI_GUID *)(UINTN)(&((EFI_IFR_GUID_LABEL *)IfrOpHdr)->Guid), &mIfrVendorGuid)) { + || !CompareGuid ((EFI_GUID *)(UINTN)(&((EFI_IFR_GUID_LABEL *)IfrOpHdr)->Guid), &gEfiIfrTianoGuid)) { // // Go to the next Op-Code // @@ -219,7 +219,7 @@ UpdateFormPackageData ( IfrOpHdr = (EFI_IFR_OP_HEADER *) ((CHAR8 *) (IfrOpHdr) + IfrOpHdr->Length); if (IfrOpHdr->OpCode == EFI_IFR_GUID_OP) { ExtendOpCode = ((EFI_IFR_GUID_LABEL *) IfrOpHdr)->ExtendOpCode; - if ((ExtendOpCode == EFI_IFR_EXTEND_OP_LABEL) && CompareGuid ((EFI_GUID *)(UINTN)(&((EFI_IFR_GUID_LABEL *)IfrOpHdr)->Guid), &mIfrVendorGuid)) { + if ((ExtendOpCode == EFI_IFR_EXTEND_OP_LABEL) && CompareGuid ((EFI_GUID *)(UINTN)(&((EFI_IFR_GUID_LABEL *)IfrOpHdr)->Guid), &gEfiIfrTianoGuid)) { break; } } diff --git a/MdeModulePkg/Library/ExtendedIfrSupportLib/IfrOpCodeCreation.c b/MdeModulePkg/Library/ExtendedIfrSupportLib/IfrOpCodeCreation.c index 4329774330..6851e5ae8d 100644 --- a/MdeModulePkg/Library/ExtendedIfrSupportLib/IfrOpCodeCreation.c +++ b/MdeModulePkg/Library/ExtendedIfrSupportLib/IfrOpCodeCreation.c @@ -50,7 +50,7 @@ CreateBannerOpCode ( Banner.Header.OpCode = EFI_IFR_GUID_OP; Banner.Header.Length = sizeof (EFI_IFR_GUID_BANNER); Banner.Header.Scope = 0; - CopyMem (&Banner.Guid, &mIfrVendorGuid, sizeof (EFI_IFR_GUID)); + CopyMem (&Banner.Guid, &gEfiIfrTianoGuid, sizeof (EFI_IFR_GUID)); Banner.ExtendOpCode = EFI_IFR_EXTEND_OP_BANNER; Banner.Title = Title; Banner.LineNumber = LineNumber; diff --git a/MdeModulePkg/Library/ExtendedIfrSupportLib/LibraryInternal.h b/MdeModulePkg/Library/ExtendedIfrSupportLib/LibraryInternal.h index 8a48f9b0cc..124eaef0a4 100644 --- a/MdeModulePkg/Library/ExtendedIfrSupportLib/LibraryInternal.h +++ b/MdeModulePkg/Library/ExtendedIfrSupportLib/LibraryInternal.h @@ -32,7 +32,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. #include #include -#include +#include extern CONST EFI_GUID mIfrVendorGuid; diff --git a/MdeModulePkg/MdeModulePkg.dec b/MdeModulePkg/MdeModulePkg.dec index 5713ec8611..d9a4805387 100644 --- a/MdeModulePkg/MdeModulePkg.dec +++ b/MdeModulePkg/MdeModulePkg.dec @@ -95,6 +95,12 @@ ## Hob guid for Pcd Pei Callback Function Table ## Include/Guid/PcdPeiCallbackFnTableHobGuid.h gPcdPeiCallbackFnTableHobGuid = { 0xC625F4B2, 0xEA09, 0x4675, { 0x82, 0xD7, 0xBA, 0x36, 0x82, 0x15, 0x7A, 0x14 }} + + ## Guid for EDKII implementation GUIDed opcodes + gEfiIfrTianoGuid = { 0xf0b1735, 0x87a0, 0x4193, {0xb2, 0x66, 0x53, 0x8c, 0x38, 0xaf, 0x48, 0xce }} + + ## Guid for Framework vfr GUIDed opcodes. + gEfiIfrFrameworkGuid = { 0x31ca5d1a, 0xd511, 0x4931, { 0xb7, 0x82, 0xae, 0x6b, 0x2b, 0x17, 0x8c, 0xd7 }} ## Guid to specify the System Non Volatile FV ## Include/Guid/SystemNvDataGuid.h @@ -185,11 +191,7 @@ ## Include/Guid/Performance.h gPerformanceProtocolGuid = { 0x76B6BDFA, 0x2ACD, 0x4462, { 0x9E, 0x3F, 0xCB, 0x58, 0xC9, 0x69, 0xD9, 0x37 }} -[Protocols.common] - ## Capsule Arch protocol specify capsule runtime services are installed. - ## Include/Protocol/Capsule.h - gEfiCapsuleArchProtocolGuid = { 0x5053697E, 0x2CBC, 0x4819, { 0x90, 0xD9, 0x05, 0x80, 0xDE, 0xEE, 0x57, 0x54 }} - +[Protocols.common] ## Load File protocol provides capability to load and unload EFI image into memory and execute it. ## Include/Protocol/LoadPe32Image.h gEfiLoadPeImageProtocolGuid = { 0x5CB5C776, 0x60D5, 0x45EE, { 0x88, 0x3C, 0x45, 0x27, 0x08, 0xCD, 0x74, 0x3F }} @@ -353,10 +355,13 @@ # gEfiMdeModulePkgTokenSpaceGuid.PcdVpdBaseAddress|0x0|UINT32|0x00010010 - ## Indicate the max size the platform can support in case of populated capsules. + ## Indicate the max size of the populated image that the platform can support. + # To support the multi populated images, the defautl supported size will + # be enlarged to 100MB that is 10 times of the single non-populated image. gEfiMdeModulePkgTokenSpaceGuid.PcdMaxSizePopulateCapsule|0x6400000|UINT32|0x0001001e - ## Indicate the max size the platform can support in case of non-populated capsules. + ## Indicate the max size of the non-populated image that the platform can support. + # The default size is 10MB for the casule image without populated flag setting. gEfiMdeModulePkgTokenSpaceGuid.PcdMaxSizeNonPopulateCapsule|0xa00000|UINT32|0x0001001f ## Maximun number of performance log entries during PEI phase. diff --git a/MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleService.c b/MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleService.c index 2d5411a607..14246b0669 100644 --- a/MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleService.c +++ b/MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleService.c @@ -235,15 +235,23 @@ QueryCapsuleCapabilities ( if (!FeaturePcdGet(PcdSupportUpdateCapsuleReset)) { return EFI_UNSUPPORTED; } - *ResetType = EfiResetWarm; - *MaxiumCapsuleSize = FixedPcdGet32(PcdMaxSizePopulateCapsule); + *ResetType = EfiResetWarm; } else { // // For non-reset capsule image. // *ResetType = EfiResetCold; + } + + // + // The support max capsule image size + // + if ((CapsuleHeader->Flags & CAPSULE_FLAGS_POPULATE_SYSTEM_TABLE) != 0) { + *MaxiumCapsuleSize = FixedPcdGet32(PcdMaxSizePopulateCapsule); + } else { *MaxiumCapsuleSize = FixedPcdGet32(PcdMaxSizeNonPopulateCapsule); } + return EFI_SUCCESS; } diff --git a/MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsole.h b/MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsole.h index dc516f4f64..2922e17487 100644 --- a/MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsole.h +++ b/MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsole.h @@ -30,7 +30,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. #include #include -#include +#include #include #include diff --git a/MdeModulePkg/Universal/DriverSampleDxe/DriverSample.h b/MdeModulePkg/Universal/DriverSampleDxe/DriverSample.h index fb536f6351..d33740826c 100644 --- a/MdeModulePkg/Universal/DriverSampleDxe/DriverSample.h +++ b/MdeModulePkg/Universal/DriverSampleDxe/DriverSample.h @@ -32,7 +32,7 @@ Revision History #include #include -#include +#include #include #include #include diff --git a/MdeModulePkg/Universal/FirmwareVolume/FaultTolerantWriteDxe/FtwLite.h b/MdeModulePkg/Universal/FirmwareVolume/FaultTolerantWriteDxe/FtwLite.h index dfc5b36ffa..c33e1798b2 100644 --- a/MdeModulePkg/Universal/FirmwareVolume/FaultTolerantWriteDxe/FtwLite.h +++ b/MdeModulePkg/Universal/FirmwareVolume/FaultTolerantWriteDxe/FtwLite.h @@ -32,8 +32,6 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. #include #include -#include - // // Flash erase polarity is 1 // diff --git a/MdeModulePkg/Universal/PCD/Pei/Pcd.inf b/MdeModulePkg/Universal/PCD/Pei/Pcd.inf index cebcf47c36..3770df8ba1 100644 --- a/MdeModulePkg/Universal/PCD/Pei/Pcd.inf +++ b/MdeModulePkg/Universal/PCD/Pei/Pcd.inf @@ -57,14 +57,14 @@ [FeaturePcd.common] gEfiMdeModulePkgTokenSpaceGuid.PcdPeiPcdDatabaseSetEnabled - gEfiMdeModulePkgTokenSpaceGuid.PcdPeiPcdDatabaseGetSizeEnabled gEfiMdeModulePkgTokenSpaceGuid.PcdPeiPcdDatabaseExEnabled gEfiMdeModulePkgTokenSpaceGuid.PcdPeiPcdDatabaseCallbackOnSetEnabled + gEfiMdeModulePkgTokenSpaceGuid.PcdPeiPcdDatabaseGetSizeEnabled gEfiMdeModulePkgTokenSpaceGuid.PcdPeiPcdDatabaseTraverseEnabled [FixedPcd.common] gEfiMdeModulePkgTokenSpaceGuid.PcdVpdBaseAddress - gEfiMdeModulePkgTokenSpaceGuid.PcdMaxPeiPcdCallBackNumberPerPcdEntry + gEfiMdeModulePkgTokenSpaceGuid.PcdMaxPeiPcdCallBackNumberPerPcdEntry || PcdPeiPcdDatabaseCallbackOnSetEnabled [Depex] TRUE diff --git a/MdeModulePkg/Universal/SetupBrowserDxe/IfrParse.c b/MdeModulePkg/Universal/SetupBrowserDxe/IfrParse.c index 1f8ebf968d..094043f4ee 100644 --- a/MdeModulePkg/Universal/SetupBrowserDxe/IfrParse.c +++ b/MdeModulePkg/Universal/SetupBrowserDxe/IfrParse.c @@ -24,10 +24,6 @@ BOOLEAN mInScopeGrayOut; FORM_EXPRESSION *mSuppressExpression; FORM_EXPRESSION *mGrayOutExpression; -EFI_GUID gTianoHiiIfrGuid = EFI_IFR_TIANO_GUID; -GLOBAL_REMOVE_IF_UNREFERENCED EFI_GUID mFrameworkHiiCompatibilityGuid = EFI_IFR_FRAMEWORK_GUID; - - /** Initialize Statement header members. @@ -148,7 +144,7 @@ IsNextOpCodeGuidedVarEqName ( // OpCodeData += ((EFI_IFR_OP_HEADER *) OpCodeData)->Length; if (*OpCodeData == EFI_IFR_GUID_OP) { - if (CompareGuid (&mFrameworkHiiCompatibilityGuid, (EFI_GUID *)(OpCodeData + sizeof (EFI_IFR_OP_HEADER)))) { + if (CompareGuid (&gEfiIfrFrameworkGuid, (EFI_GUID *)(OpCodeData + sizeof (EFI_IFR_OP_HEADER)))) { // // Specific GUIDed opcodes to support IFR generated from Framework HII VFR // @@ -1623,7 +1619,7 @@ ParseOpCodes ( // Vendor specific // case EFI_IFR_GUID_OP: - if (CompareGuid (&gTianoHiiIfrGuid, (EFI_GUID *)(OpCodeData + sizeof (EFI_IFR_OP_HEADER)))) { + if (CompareGuid (&gEfiIfrTianoGuid, (EFI_GUID *)(OpCodeData + sizeof (EFI_IFR_OP_HEADER)))) { // // Tiano specific GUIDed opcodes // diff --git a/MdeModulePkg/Universal/SetupBrowserDxe/Setup.h b/MdeModulePkg/Universal/SetupBrowserDxe/Setup.h index b3912b7862..cbdcbd5a1d 100644 --- a/MdeModulePkg/Universal/SetupBrowserDxe/Setup.h +++ b/MdeModulePkg/Universal/SetupBrowserDxe/Setup.h @@ -30,7 +30,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. #include #include -#include +#include #include #include diff --git a/MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf b/MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf index f808d66800..78a7a838a7 100644 --- a/MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf +++ b/MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf @@ -63,6 +63,10 @@ HiiLib ExtendedHiiLib +[Guids] + gEfiIfrTianoGuid ## CONSUMES ## GUID + gEfiIfrFrameworkGuid ## CONSUMES ## GUID + [Protocols] gEfiHiiConfigAccessProtocolGuid ## CONSUMES gEfiHiiStringProtocolGuid ## CONSUMES