]> git.proxmox.com Git - mirror_edk2.git/blame - MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf
MdeModulePkg/CapsuleRuntimeDxe: Introduce PCD to control this feature.
[mirror_edk2.git] / MdeModulePkg / Universal / CapsuleRuntimeDxe / CapsuleRuntimeDxe.inf
CommitLineData
6bfbb5f0 1## @file\r
6036e94d
SZ
2# Capsule Runtime Driver produces two UEFI capsule runtime services: (UpdateCapsule, QueryCapsuleCapabilities).\r
3#\r
d1102dba 4# It installs the Capsule Architectural Protocol defined in PI1.0a to signify\r
109e9a61 5# the capsule runtime services are ready.\r
d1102dba 6#\r
a89fd3a3 7# Copyright (c) 2006 - 2019, Intel Corporation. All rights reserved.<BR>\r
9d510e61 8# SPDX-License-Identifier: BSD-2-Clause-Patent\r
d1102dba 9#\r
6bfbb5f0 10##\r
74fea867 11\r
74fea867 12[Defines]\r
13 INF_VERSION = 0x00010005\r
14 BASE_NAME = CapsuleRuntimeDxe\r
6036e94d 15 MODULE_UNI_FILE = CapsuleRuntimeDxe.uni\r
74fea867 16 FILE_GUID = 42857F0A-13F2-4B21-8A23-53D3F714B840\r
17 MODULE_TYPE = DXE_RUNTIME_DRIVER\r
18 VERSION_STRING = 1.0\r
74fea867 19 ENTRY_POINT = CapsuleServiceInitialize\r
20\r
21#\r
22# The following information is for reference only and not required by the build tools.\r
23#\r
de005223 24# VALID_ARCHITECTURES = IA32 X64 EBC ARM AARCH64\r
74fea867 25#\r
26\r
6bfbb5f0 27[Sources]\r
74fea867 28 CapsuleService.c\r
e077a93d 29 CapsuleService.h\r
74fea867 30\r
de005223 31[Sources.Ia32, Sources.EBC, Sources.ARM, Sources.AARCH64]\r
ab7017fe 32 SaveLongModeContext.c\r
33\r
a89fd3a3
ZG
34[Sources.Ia32, Sources.X64, Sources.ARM, Sources.AARCH64]\r
35 CapsuleCache.c\r
36\r
37[Sources.Ia32, Sources.X64, Sources.EBC]\r
e077a93d
AB
38 CapsuleReset.c\r
39\r
40[Sources.ARM, Sources.AARCH64]\r
e077a93d 41 Arm/CapsuleReset.c\r
ab7017fe 42\r
a89fd3a3
ZG
43[Sources.EBC]\r
44 CapsuleCacheNull.c\r
45\r
46[Sources.X64]\r
47 X64/SaveLongModeContext.c\r
48\r
74fea867 49[Packages]\r
50 MdePkg/MdePkg.dec\r
623ad724 51 MdeModulePkg/MdeModulePkg.dec\r
74fea867 52\r
53[LibraryClasses]\r
54 UefiBootServicesTableLib\r
74fea867 55 PcdLib\r
56 DebugLib\r
109e9a61 57 UefiRuntimeServicesTableLib\r
74fea867 58 UefiDriverEntryPoint\r
6ee65722 59 CapsuleLib\r
109e9a61 60 UefiRuntimeLib\r
f03ccf59 61 BaseLib\r
62 PrintLib\r
566771b0 63 BaseMemoryLib\r
a89fd3a3 64 CacheMaintenanceLib\r
566771b0 65\r
ab7017fe 66[LibraryClasses.X64]\r
ab7017fe 67 UefiLib\r
68 BaseMemoryLib\r
74fea867 69\r
70[Guids]\r
6036e94d
SZ
71 ## SOMETIMES_PRODUCES ## Variable:L"CapsuleUpdateData" # (Process across reset capsule image) for capsule updated data\r
72 ## SOMETIMES_PRODUCES ## Variable:L"CapsuleLongModeBuffer" # The long mode buffer used by IA32 Capsule PEIM to call X64 CapsuleCoalesce code to handle >4GB capsule blocks\r
73 gEfiCapsuleVendorGuid\r
74 gEfiFmpCapsuleGuid ## SOMETIMES_CONSUMES ## GUID # FMP capsule GUID\r
74fea867 75\r
76[Protocols]\r
6036e94d 77 gEfiCapsuleArchProtocolGuid ## PRODUCES\r
74fea867 78\r
ab7017fe 79[Protocols.X64]\r
b5040e4c
EL
80 ## UNDEFINED ## NOTIFY\r
81 ## SOMETIMES_CONSUMES\r
82 gEdkiiVariableLockProtocolGuid\r
ab7017fe 83\r
109e9a61 84[FeaturePcd]\r
6036e94d 85 gEfiMdeModulePkgTokenSpaceGuid.PcdSupportUpdateCapsuleReset ## CONSUMES\r
74fea867 86\r
ab7017fe 87[FeaturePcd.X64]\r
6036e94d 88 gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode ## CONSUMES\r
ab7017fe 89\r
97b2c9b5 90[Pcd]\r
6036e94d 91 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxSizeNonPopulateCapsule ## SOMETIMES_CONSUMES\r
307a19a7 92 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxSizePopulateCapsule ## SOMETIMES_CONSUMES # Populate Image requires reset support.\r
7837d124 93 gEfiMdeModulePkgTokenSpaceGuid.PcdCapsuleInRamSupport ## CONSUMES\r
74fea867 94\r
ab7017fe 95[Pcd.X64]\r
6036e94d 96 gEfiMdeModulePkgTokenSpaceGuid.PcdCapsulePeiLongModeStackSize ## SOMETIMES_CONSUMES\r
b5040e4c 97 gEfiMdeModulePkgTokenSpaceGuid.PcdUse1GPageTable ## SOMETIMES_CONSUMES\r
ab7017fe 98\r
74fea867 99[Depex]\r
6036e94d
SZ
100 gEfiVariableWriteArchProtocolGuid # Depends on variable write functionality to produce capsule data variable\r
101\r
102# [Hob.X64]\r
103# UNDEFINED ## SOMETIMES_CONSUMES # CPU\r
104\r
105[UserExtensions.TianoCore."ExtraFiles"]\r
106 CapsuleRuntimeDxeExtra.uni\r