## @file
# Capsule update PEIM supports EFI and UEFI.
#
# Caution: This module requires additional review when modified.
# This driver will have external input - capsule image.
# This external input must be validated carefully to avoid security issue like
# buffer overflow, integer overflow.
#
# Copyright (c) 2006 - 2019, Intel Corporation. All rights reserved.
# Copyright (c) 2017, AMD Incorporated. All rights reserved.
#
# SPDX-License-Identifier: BSD-2-Clause-Patent
#
##
[Defines]
INF_VERSION = 0x00010005
BASE_NAME = CapsulePei
MODULE_UNI_FILE = CapsulePei.uni
FILE_GUID = C779F6D8-7113-4AA1-9648-EB1633C7D53B
MODULE_TYPE = PEIM
VERSION_STRING = 1.0
ENTRY_POINT = CapsuleMain
#
# The following information is for reference only and not required by the build tools.
#
# VALID_ARCHITECTURES = IA32 X64 EBC
#
[Sources]
UefiCapsule.c
Capsule.h
Common/CapsuleCoalesce.c
Common/CommonHeader.h
[Packages]
MdePkg/MdePkg.dec
MdeModulePkg/MdeModulePkg.dec
[LibraryClasses]
BaseLib
HobLib
BaseMemoryLib
MemoryAllocationLib
PeiServicesLib
PeimEntryPoint
DebugLib
PeiServicesTablePointerLib
PrintLib
ReportStatusCodeLib
[LibraryClasses.IA32]
PeCoffGetEntryPointLib
PcdLib
DebugAgentLib
[Guids]
## SOMETIMES_CONSUMES ## Variable:L"CapsuleUpdateData"
## SOMETIMES_CONSUMES ## Variable:L"CapsuleLongModeBuffer"
gEfiCapsuleVendorGuid
[Ppis]
gEfiPeiReadOnlyVariable2PpiGuid ## CONSUMES
gEfiPeiCapsulePpiGuid ## PRODUCES
[Ppis.IA32]
gEfiPeiLoadFilePpiGuid ## SOMETIMES_CONSUMES
[Pcd.IA32]
gEfiMdeModulePkgTokenSpaceGuid.PcdCapsuleCoalesceFile ## SOMETIMES_CONSUMES
gEfiMdeModulePkgTokenSpaceGuid.PcdUse1GPageTable ## SOMETIMES_CONSUMES
gEfiMdeModulePkgTokenSpaceGuid.PcdPteMemoryEncryptionAddressOrMask ## CONSUMES
[FeaturePcd.IA32]
gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode ## CONSUMES
[Depex]
gEfiPeiReadOnlyVariable2PpiGuid
# [BootMode]
# FLASH_UPDATE ## SOMETIMES_CONSUMES
# [Hob.IA32]
# UNDEFINED ## SOMETIMES_CONSUMES # CPU
# [Hob]
# UNDEFINED ## SOMETIMES_PRODUCES # UEFI_CAPSULE
[UserExtensions.TianoCore."ExtraFiles"]
CapsulePeiExtra.uni