• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1## @file
2# Capsule update PEIM supports EFI and UEFI.
3#
4#  Caution: This module requires additional review when modified.
5#  This driver will have external input - capsule image.
6#  This external input must be validated carefully to avoid security issue like
7#  buffer overflow, integer overflow.
8#
9# Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.<BR>
10#
11# This program and the accompanying materials
12# are licensed and made available under the terms and conditions
13# of the BSD License which accompanies this distribution.  The
14# full text of the license may be found at
15# http://opensource.org/licenses/bsd-license.php
16#
17# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
18# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
19#
20##
21
22[Defines]
23  INF_VERSION                    = 0x00010005
24  BASE_NAME                      = CapsulePei
25  MODULE_UNI_FILE                = CapsulePei.uni
26  FILE_GUID                      = C779F6D8-7113-4AA1-9648-EB1633C7D53B
27  MODULE_TYPE                    = PEIM
28  VERSION_STRING                 = 1.0
29
30  ENTRY_POINT                    = CapsuleMain
31
32#
33# The following information is for reference only and not required by the build tools.
34#
35#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC
36#
37
38[Sources]
39  UefiCapsule.c
40  Capsule.h
41  Common/CapsuleCoalesce.c
42
43[Packages]
44  MdePkg/MdePkg.dec
45  MdeModulePkg/MdeModulePkg.dec
46
47
48[LibraryClasses]
49  HobLib
50  BaseMemoryLib
51  PeiServicesLib
52  PeimEntryPoint
53  DebugLib
54  PeiServicesTablePointerLib
55  PrintLib
56  ReportStatusCodeLib
57
58[LibraryClasses.IA32]
59  PeCoffGetEntryPointLib
60  PcdLib
61  DebugAgentLib
62
63[Guids]
64  ## SOMETIMES_CONSUMES   ## Variable:L"CapsuleUpdateData"
65  ## SOMETIMES_CONSUMES   ## Variable:L"CapsuleLongModeBuffer"
66  gEfiCapsuleVendorGuid
67
68[Ppis]
69  gEfiPeiReadOnlyVariable2PpiGuid               ## CONSUMES
70  gEfiPeiCapsulePpiGuid                         ## PRODUCES
71
72[Ppis.IA32]
73  gEfiPeiLoadFilePpiGuid                        ## SOMETIMES_CONSUMES
74
75[Pcd.IA32]
76  gEfiMdeModulePkgTokenSpaceGuid.PcdCapsuleCoalesceFile     ## SOMETIMES_CONSUMES
77  gEfiMdeModulePkgTokenSpaceGuid.PcdUse1GPageTable          ## SOMETIMES_CONSUMES
78
79[FeaturePcd.IA32]
80  gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode  ## CONSUMES
81
82[Depex]
83  gEfiPeiReadOnlyVariable2PpiGuid
84
85# [BootMode]
86# FLASH_UPDATE              ## SOMETIMES_CONSUMES
87
88# [Hob.IA32]
89# UNDEFINED                 ## SOMETIMES_CONSUMES # CPU
90
91# [Hob]
92# UNDEFINED                 ## SOMETIMES_PRODUCES # UEFI_CAPSULE
93
94
95[UserExtensions.TianoCore."ExtraFiles"]
96  CapsulePeiExtra.uni
97