From 5c526736370b475e85c59fafe3900101a95e93d3 Mon Sep 17 00:00:00 2001 From: lgao4 Date: Mon, 23 Feb 2009 15:18:48 +0000 Subject: 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 --- MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleService.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'MdeModulePkg/Universal/CapsuleRuntimeDxe') 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; } -- cgit v1.2.3