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