]> git.proxmox.com Git - mirror_edk2.git/blame - MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
MdeModulePkg/DxeIpl: Support Capsule On Disk.
[mirror_edk2.git] / MdeModulePkg / Core / DxeIplPeim / DxeIpl.inf
CommitLineData
6bfbb5f0 1## @file\r
31f228cf 2# Last PEIM executed in PEI phase to load DXE Core from a Firmware Volume.\r
e7af83ae 3#\r
31f228cf 4# This module produces a special PPI named the DXE Initial Program Load (IPL)\r
5# PPI to discover and dispatch the DXE Foundation and components that are\r
6# needed to run the DXE Foundation.\r
7#\r
e761d18f 8# Copyright (c) 2006 - 2019, Intel Corporation. All rights reserved.<BR>\r
5997daf7
LD
9# Copyright (c) 2017, AMD Incorporated. All rights reserved.<BR>\r
10#\r
9d510e61 11# SPDX-License-Identifier: BSD-2-Clause-Patent\r
e7af83ae 12#\r
6bfbb5f0 13##\r
31f228cf 14\r
15[Defines]\r
16 INF_VERSION = 0x00010005\r
17 BASE_NAME = DxeIpl\r
6036e94d 18 MODULE_UNI_FILE = DxeIpl.uni\r
31f228cf 19 FILE_GUID = 86D70125-BAA3-4296-A62F-602BEBBB9081\r
20 MODULE_TYPE = PEIM\r
21 VERSION_STRING = 1.0\r
22\r
23 ENTRY_POINT = PeimInitializeDxeIpl\r
24\r
25#\r
26# The following information is for reference only and not required by the build tools.\r
27#\r
de005223 28# VALID_ARCHITECTURES = IA32 X64 EBC (EBC is for build only) AARCH64\r
31f228cf 29#\r
30\r
6bfbb5f0 31[Sources]\r
31f228cf 32 DxeIpl.h\r
33 DxeLoad.c\r
34\r
35[Sources.Ia32]\r
307a19a7
LG
36 X64/VirtualMemory.h\r
37 X64/VirtualMemory.c\r
31f228cf 38 Ia32/DxeLoadFunc.c\r
307a19a7 39 Ia32/IdtVectorAsm.nasm\r
31f228cf 40\r
41[Sources.X64]\r
42 X64/VirtualMemory.h\r
43 X64/VirtualMemory.c\r
50255363 44 X64/DxeLoadFunc.c\r
31f228cf 45\r
31f228cf 46[Sources.EBC]\r
47 Ebc/DxeLoadFunc.c\r
48\r
716e5077 49[Sources.ARM, Sources.AARCH64]\r
31f228cf 50 Arm/DxeLoadFunc.c\r
51\r
52[Packages]\r
53 MdePkg/MdePkg.dec\r
54 MdeModulePkg/MdeModulePkg.dec\r
55\r
c82b8087
AB
56[Packages.ARM, Packages.AARCH64]\r
57 ArmPkg/ArmPkg.dec\r
58\r
31f228cf 59[LibraryClasses]\r
60 PcdLib\r
61 MemoryAllocationLib\r
62 BaseMemoryLib\r
63 ExtractGuidedSectionLib\r
64 UefiDecompressLib\r
65 ReportStatusCodeLib\r
66 PeiServicesLib\r
67 HobLib\r
68 BaseLib\r
69 PeimEntryPoint\r
70 DebugLib\r
e7af83ae 71 DebugAgentLib\r
bdfbe63e 72 PeiServicesTablePointerLib\r
98d20e44 73 PerformanceLib\r
31f228cf 74\r
c82b8087 75[LibraryClasses.ARM, LibraryClasses.AARCH64]\r
5db1cce1 76 ArmMmuLib\r
c82b8087 77\r
31f228cf 78[Ppis]\r
e761d18f
WX
79 gEfiDxeIplPpiGuid ## PRODUCES\r
80 gEfiPeiDecompressPpiGuid ## PRODUCES\r
81 gEfiEndOfPeiSignalPpiGuid ## SOMETIMES_PRODUCES # Not produced on S3 boot path\r
82 gEfiPeiReadOnlyVariable2PpiGuid ## SOMETIMES_CONSUMES\r
83 gEfiPeiLoadFilePpiGuid ## SOMETIMES_CONSUMES\r
84 gEfiPeiS3Resume2PpiGuid ## SOMETIMES_CONSUMES # Consumed on S3 boot path\r
85 gEfiPeiRecoveryModulePpiGuid ## SOMETIMES_CONSUMES # Consumed on recovery boot path\r
6036e94d
SZ
86 ## SOMETIMES_CONSUMES\r
87 ## UNDEFINED # HOB\r
88 gEfiVectorHandoffInfoPpiGuid\r
e761d18f
WX
89 gEfiPeiMemoryDiscoveredPpiGuid ## SOMETIMES_CONSUMES\r
90 gEdkiiPeiBootInCapsuleOnDiskModePpiGuid ## SOMETIMES_CONSUMES\r
91 gEdkiiPeiCapsuleOnDiskPpiGuid ## SOMETIMES_CONSUMES # Consumed on firmware update boot path\r
31f228cf 92\r
93[Guids]\r
6036e94d
SZ
94 ## SOMETIMES_CONSUMES ## Variable:L"MemoryTypeInformation"\r
95 ## SOMETIMES_PRODUCES ## HOB\r
96 gEfiMemoryTypeInformationGuid\r
31f228cf 97\r
98[FeaturePcd.IA32]\r
6036e94d 99 gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode ## CONSUMES\r
31f228cf 100\r
e47f0da4 101[FeaturePcd.X64]\r
6036e94d 102 gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplBuildPageTables ## CONSUMES\r
e47f0da4 103\r
6bfbb5f0 104[FeaturePcd]\r
6036e94d 105 gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSupportUefiDecompress ## CONSUMES\r
31f228cf 106\r
378175d2 107[Pcd.IA32,Pcd.X64]\r
5997daf7
LD
108 gEfiMdeModulePkgTokenSpaceGuid.PcdUse1GPageTable ## SOMETIMES_CONSUMES\r
109 gEfiMdeModulePkgTokenSpaceGuid.PcdPteMemoryEncryptionAddressOrMask ## CONSUMES\r
9189ec20 110 gEfiMdeModulePkgTokenSpaceGuid.PcdNullPointerDetectionPropertyMask ## CONSUMES\r
e63da9f0 111 gEfiMdeModulePkgTokenSpaceGuid.PcdHeapGuardPropertyMask ## CONSUMES\r
50255363 112 gEfiMdeModulePkgTokenSpaceGuid.PcdCpuStackGuard ## CONSUMES\r
c82b8087
AB
113\r
114[Pcd.IA32,Pcd.X64,Pcd.ARM,Pcd.AARCH64]\r
5630cdfe 115 gEfiMdeModulePkgTokenSpaceGuid.PcdSetNxForStack ## SOMETIMES_CONSUMES\r
52679261
JW
116 gEfiMdeModulePkgTokenSpaceGuid.PcdDxeNxMemoryProtectionPolicy ## SOMETIMES_CONSUMES\r
117 gEfiMdeModulePkgTokenSpaceGuid.PcdImageProtectionPolicy ## SOMETIMES_CONSUMES\r
378175d2 118\r
31f228cf 119[Depex]\r
ebaafbe6 120 gEfiPeiLoadFilePpiGuid AND gEfiPeiMasterBootModePpiGuid\r
31f228cf 121\r
122#\r
e7af83ae 123# [BootMode]\r
6036e94d
SZ
124# S3_RESUME ## SOMETIMES_CONSUMES\r
125# RECOVERY_FULL ## SOMETIMES_CONSUMES\r
31f228cf 126#\r
e7af83ae 127#\r
31f228cf 128# [Hob]\r
6036e94d 129# MEMORY_ALLOCATION ## SOMETIMES_PRODUCES # MEMORY_ALLOCATION_MODULE for DxeCore\r
50255363 130# MEMORY_ALLOCATION ## SOMETIMES_PRODUCES # New Stack HoB\r
6036e94d 131# MEMORY_ALLOCATION ## SOMETIMES_PRODUCES # Old Stack HOB\r
31f228cf 132#\r
133# [Hob.IPF]\r
6036e94d 134# MEMORY_ALLOCATION ## SOMETIMES_PRODUCES # MEMORY_ALLOCATION_BSP_STORE\r
e7af83ae 135#\r
6036e94d
SZ
136\r
137[UserExtensions.TianoCore."ExtraFiles"]\r
138 DxeIplExtra.uni\r