hc
2024-03-22 a0752693d998599af469473b8dc239ef973a012f
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
## @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.<BR>
# Copyright (c) 2017, AMD Incorporated. All rights reserved.<BR>
#
# 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