]> git.proxmox.com Git - mirror_edk2.git/blob - MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
9d0e76a2936fa3036c3bf073e6359765c472ff46
[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 - 2017, Intel Corporation. All rights reserved.<BR>
9 # Copyright (c) 2017, AMD Incorporated. All rights reserved.<BR>
10 #
11 # This program and the accompanying materials
12 # are licensed and made available under the terms and conditions of the BSD License
13 # which accompanies this distribution. The full text of the license may be found at
14 # http://opensource.org/licenses/bsd-license.php
15 #
16 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
17 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
18 #
19 ##
20
21 [Defines]
22 INF_VERSION = 0x00010005
23 BASE_NAME = DxeIpl
24 MODULE_UNI_FILE = DxeIpl.uni
25 FILE_GUID = 86D70125-BAA3-4296-A62F-602BEBBB9081
26 MODULE_TYPE = PEIM
27 VERSION_STRING = 1.0
28
29 ENTRY_POINT = PeimInitializeDxeIpl
30
31 #
32 # The following information is for reference only and not required by the build tools.
33 #
34 # VALID_ARCHITECTURES = IA32 X64 IPF EBC (EBC is for build only) AARCH64
35 #
36
37 [Sources]
38 DxeIpl.h
39 DxeLoad.c
40
41 [Sources.Ia32]
42 X64/VirtualMemory.h
43 X64/VirtualMemory.c
44 Ia32/DxeLoadFunc.c
45 Ia32/IdtVectorAsm.nasm
46 Ia32/IdtVectorAsm.asm
47 Ia32/IdtVectorAsm.S
48
49 [Sources.X64]
50 X64/VirtualMemory.h
51 X64/VirtualMemory.c
52 X64/DxeLoadFunc.c
53
54 [Sources.IPF]
55 Ipf/DxeLoadFunc.c
56
57 [Sources.EBC]
58 Ebc/DxeLoadFunc.c
59
60 [Sources.ARM, Sources.AARCH64]
61 Arm/DxeLoadFunc.c
62
63 [Packages]
64 MdePkg/MdePkg.dec
65 MdeModulePkg/MdeModulePkg.dec
66
67 [Packages.ARM, Packages.AARCH64]
68 ArmPkg/ArmPkg.dec
69
70 [LibraryClasses]
71 PcdLib
72 MemoryAllocationLib
73 BaseMemoryLib
74 ExtractGuidedSectionLib
75 UefiDecompressLib
76 ReportStatusCodeLib
77 PeiServicesLib
78 HobLib
79 BaseLib
80 PeimEntryPoint
81 DebugLib
82 DebugAgentLib
83 PeiServicesTablePointerLib
84
85 [LibraryClasses.ARM, LibraryClasses.AARCH64]
86 ArmMmuLib
87
88 [Ppis]
89 gEfiDxeIplPpiGuid ## PRODUCES
90 gEfiPeiDecompressPpiGuid ## PRODUCES
91 gEfiEndOfPeiSignalPpiGuid ## SOMETIMES_PRODUCES # Not produced on S3 boot path
92 gEfiPeiReadOnlyVariable2PpiGuid ## SOMETIMES_CONSUMES
93 gEfiPeiLoadFilePpiGuid ## SOMETIMES_CONSUMES
94 gEfiPeiS3Resume2PpiGuid ## SOMETIMES_CONSUMES # Consumed on S3 boot path
95 gEfiPeiRecoveryModulePpiGuid ## SOMETIMES_CONSUMES # Consumed on recovery boot path
96 ## SOMETIMES_CONSUMES
97 ## UNDEFINED # HOB
98 gEfiVectorHandoffInfoPpiGuid
99 gEfiPeiMemoryDiscoveredPpiGuid ## SOMETIMES_CONSUMES
100
101 [Guids]
102 ## SOMETIMES_CONSUMES ## Variable:L"MemoryTypeInformation"
103 ## SOMETIMES_PRODUCES ## HOB
104 gEfiMemoryTypeInformationGuid
105
106 [FeaturePcd.IA32]
107 gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode ## CONSUMES
108
109 [FeaturePcd.X64]
110 gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplBuildPageTables ## CONSUMES
111
112 [FeaturePcd]
113 gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSupportUefiDecompress ## CONSUMES
114
115 [Pcd.IA32,Pcd.X64]
116 gEfiMdeModulePkgTokenSpaceGuid.PcdUse1GPageTable ## SOMETIMES_CONSUMES
117 gEfiMdeModulePkgTokenSpaceGuid.PcdPteMemoryEncryptionAddressOrMask ## CONSUMES
118 gEfiMdeModulePkgTokenSpaceGuid.PcdNullPointerDetectionPropertyMask ## CONSUMES
119
120 [Pcd.IA32,Pcd.X64,Pcd.ARM,Pcd.AARCH64]
121 gEfiMdeModulePkgTokenSpaceGuid.PcdSetNxForStack ## SOMETIMES_CONSUMES
122
123 [Depex]
124 gEfiPeiLoadFilePpiGuid AND gEfiPeiMasterBootModePpiGuid
125
126 #
127 # [BootMode]
128 # S3_RESUME ## SOMETIMES_CONSUMES
129 # RECOVERY_FULL ## SOMETIMES_CONSUMES
130 #
131 #
132 # [Hob]
133 # MEMORY_ALLOCATION ## SOMETIMES_PRODUCES # MEMORY_ALLOCATION_MODULE for DxeCore
134 # MEMORY_ALLOCATION ## SOMETIMES_PRODUCES # New Stack HoB
135 # MEMORY_ALLOCATION ## SOMETIMES_PRODUCES # Old Stack HOB
136 #
137 # [Hob.IPF]
138 # MEMORY_ALLOCATION ## SOMETIMES_PRODUCES # MEMORY_ALLOCATION_BSP_STORE
139 #
140
141 [UserExtensions.TianoCore."ExtraFiles"]
142 DxeIplExtra.uni