Acidanthera UEFI Development Kit based on EDK II edk2-stable202311
Go to file
Jiewen Yao 3f31ea1b3d MdeModulePkg/CapsuleLib: Follow UEFI 22.2.3 to process FMP.
Previous logic does not follow UEFI 22.2.3 to process FMP strictly.
It may cause FMP image not be processed in some corner case.
The updated logic follows UEFI 22.2.3.

The way to check if a capsule is processed is also simplified.

The function - ProcessFmpCapsuleImage() is too big, so that
we created sub-functions - StartFmpImage(), DumpAllFmpInfo(),
GetFmpHandleBufferByType(), SetFmpImageData(), RecordFmpCapsuleStatus()
to improve the readability.

The function - ProcessTheseCapsules() is too big, so that
we created sub-functions - InitCapsulePtr(), AreAllImagesProcessed(),
PopulateCapsuleInConfigurationTable() to improve the readability.

Cc: Feng Tian <feng.tian@intel.com>
Cc: Star Zeng <star.zeng@intel.com>
Cc: Chao Zhang <chao.b.zhang@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jiewen Yao <jiewen.yao@intel.com>
Reviewed-by: Star Zeng <star.zeng@intel.com>
2016-12-26 12:23:34 +08:00
AppPkg AppPkg: Update email and URL. 2016-10-26 09:34:34 -07:00
ArmPkg ArmPkg: fix compilation error in ArmDmaLib 2016-12-01 17:02:13 +00:00
ArmPlatformPkg ArmPlatformPkg: Fix VE RTSM mem map descriptor count 2016-11-25 14:03:32 +00:00
ArmVirtPkg ArmVirtPkg/QemuFwCfgLib: rebase lib instance to updated lib class header 2016-12-05 19:44:52 +01:00
BaseTools BaseTools/Pccts: Resolve GCC sting format mismatch build warning 2016-12-23 14:38:44 +08:00
BeagleBoardPkg Omap35xxPkg/PciEmulation: port to new non-discoverable device infrastructure 2016-12-18 17:31:47 +00:00
Conf
CorebootModulePkg CorebootPayloadPkg/CbSupportPei: Fix the memory map issue 2016-11-17 14:49:11 -08:00
CorebootPayloadPkg CorebootPayloadPkg: Allow PciLib instance selection 2016-11-17 10:21:52 -08:00
CryptoPkg CryptoPkg: Add new TlsLib library 2016-12-22 20:33:22 +08:00
DuetPkg DuetPkg: Remove use of IntelFrameworkModulePkg legacy libs 2016-12-02 15:59:19 +00:00
EdkCompatibilityPkg EdkCompatibilityPkg/PrintLite: Fix ErrorPrint() wrong NULL char check 2016-11-03 10:28:47 +08:00
EdkShellBinPkg
EdkShellPkg
EmbeddedPkg EmbeddedPkg: Remove use of IntelFrameworkModulePkg legacy libs 2016-12-05 15:53:30 +00:00
EmulatorPkg EmulatorPkg: Remove use of IntelFrameworkModulePkg legacy libs 2016-12-02 15:59:19 +00:00
FatBinPkg FatBinPkg: New EnhancedFatDxe binaries for IA32, X64, EBC and IPF 2016-12-19 15:26:52 +08:00
FatPkg FatPkg/EnhancedFatDxe: Remove the file which is not used 2016-12-14 16:19:19 +08:00
IntelFrameworkModulePkg IntelFrameworkModulePkg/LegacyBios: Fix legacy serial redirection bug 2016-11-10 10:19:54 +08:00
IntelFrameworkPkg IntelFrameworkPkg PeiHobLib: Check FV alignment when building FV HOB 2016-11-17 09:27:13 +08:00
IntelFsp2Pkg IntelFsp2Pkg: 41d739e breaks flat tree build 2016-12-05 14:17:23 +08:00
IntelFsp2WrapperPkg IntelFsp2WrapperPkg: Add a PCD to control if signaling PciEnumerationComplete. 2016-10-28 07:46:42 +08:00
IntelFspPkg IntelFspPkg: Fix typos in comments 2016-10-24 09:26:28 +08:00
IntelFspWrapperPkg IntelFspWrapperPkg: Fix typos in comments 2016-10-24 09:26:30 +08:00
IntelSiliconPkg IntelSiliconPkg: Fix format issues 2016-12-20 10:51:16 +08:00
MdeModulePkg MdeModulePkg/CapsuleLib: Follow UEFI 22.2.3 to process FMP. 2016-12-26 12:23:34 +08:00
MdePkg MdePkg: Add a header to standardize TLS definitions 2016-12-22 20:33:10 +08:00
NetworkPkg NetworkPkg/NetworkPkg.dsc: Enable TlsDxe and TlsAuthConfigDxe module 2016-12-22 20:33:45 +08:00
Nt32Pkg Nt32Pkg: Enable HTTPS boot feature for Nt32 platform 2016-12-22 20:33:54 +08:00
Omap35xxPkg Omap35xxPkg/PciEmulation: port to new non-discoverable device infrastructure 2016-12-18 17:31:47 +00:00
OptionRomPkg OptionRomPkg: Fix typos in comments 2016-11-15 11:05:34 +08:00
OvmfPkg OvmfPkg/build.sh: Use GCC49 toolchains with GCC 6.[0-2] 2016-12-06 18:00:56 +01:00
PcAtChipsetPkg PcAtChipsetPkg/PcRtc: Fix bad EOL 2016-12-06 17:07:47 +08:00
PerformancePkg PerformancePkg/Dp_App: rebase to ARRAY_SIZE() 2016-10-27 11:10:59 +02:00
QuarkPlatformPkg QuarkPlatformPkg/dsc: enable Smm paging protection. 2016-11-17 16:30:08 +08:00
QuarkSocPkg QuarkSocPkg: Remove use of IntelFrameworkModulePkg legacy libs 2016-12-02 15:59:19 +00:00
SecurityPkg SecurityPkg/FmpAuthLib: Add PublicKeyDataLength check 2016-12-23 10:01:36 +08:00
ShellBinPkg ShellBinPkg: New Shell binaries for IA32 and X64 2016-12-19 15:27:38 +08:00
ShellPkg ShellPkg/setvar: Correct typo in setvar help message 2016-12-16 09:32:28 +08:00
SignedCapsulePkg SignedCapsulePkg/SystemCapsuleLib: Add ASSERT check for PCD 2016-12-23 10:01:37 +08:00
SourceLevelDebugPkg SourceLevelDebugPkg: Avoid to re-init IDT table again at SMI entry 2016-11-30 14:34:45 +08:00
StdLib StdLib/LibC ARM AARCH64: do not redefine compiler intrinsics 2016-08-09 10:10:12 +02:00
StdLibPrivateInternalFiles
UefiCpuPkg UefiCpuPkg/SmmCpuFeaturesLib: Fix coding style issues 2016-12-21 11:33:20 +08:00
UnixPkg
Vlv2DeviceRefCodePkg
Vlv2TbltDevicePkg Vlv2TbltDevicePkg/PlatformInitPei: Better SMRAM size alignment 2016-12-07 08:57:06 -08:00
.gitignore
BuildNotes2.txt
Edk2Setup.bat Edk2Setup.bat: Fix build errors from VS tools PREFIX ENV missing 2016-11-05 09:10:58 +08:00
Maintainers.txt Maintainers.txt: Change maintainer of VLV2 packages. 2016-10-27 21:08:23 +08:00
edksetup.bat edksetup.bat: make sure BASE_TOOLS_PATH be set correctly 2016-10-26 13:45:45 +08:00
edksetup.sh edksetup.sh, BaseTools/BuildEnv: add --reconfig support 2016-10-24 13:53:16 +01:00