## @file | |
# Last PEIM executed in PEI phase to load DXE Core from a Firmware Volume. | |
# | |
# This module produces a special PPI named the DXE Initial Program Load (IPL) | |
# PPI to discover and dispatch the DXE Foundation and components that are | |
# needed to run the DXE Foundation. | |
# | |
# Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR> | |
# This program and the accompanying materials | |
# are licensed and made available under the terms and conditions of the BSD License | |
# which accompanies this distribution. The full text of the license may be found at | |
# http://opensource.org/licenses/bsd-license.php | |
# | |
# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, | |
# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. | |
# | |
## | |
[Defines] | |
INF_VERSION = 0x00010005 | |
BASE_NAME = DxeIpl | |
MODULE_UNI_FILE = DxeIpl.uni | |
FILE_GUID = 86D70125-BAA3-4296-A62F-602BEBBB9081 | |
MODULE_TYPE = PEIM | |
VERSION_STRING = 1.0 | |
ENTRY_POINT = PeimInitializeDxeIpl | |
# | |
# The following information is for reference only and not required by the build tools. | |
# | |
# VALID_ARCHITECTURES = IA32 X64 IPF EBC (EBC is for build only) AARCH64 | |
# | |
[Sources] | |
DxeIpl.h | |
DxeLoad.c | |
[Sources.Ia32] | |
X64/VirtualMemory.h ||||gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode | |
X64/VirtualMemory.c ||||gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode | |
Ia32/DxeLoadFunc.c | |
Ia32/IdtVectorAsm.nasm||||gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode | |
Ia32/IdtVectorAsm.asm||||gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode | |
Ia32/IdtVectorAsm.S ||||gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode | |
[Sources.X64] | |
X64/VirtualMemory.h | |
X64/VirtualMemory.c | |
X64/DxeLoadFunc.c | |
[Sources.IPF] | |
Ipf/DxeLoadFunc.c | |
[Sources.EBC] | |
Ebc/DxeLoadFunc.c | |
[Sources.ARM, Sources.AARCH64] | |
Arm/DxeLoadFunc.c | |
[Packages] | |
MdePkg/MdePkg.dec | |
MdeModulePkg/MdeModulePkg.dec | |
[Packages.ARM, Packages.AARCH64] | |
ArmPkg/ArmPkg.dec | |
[LibraryClasses] | |
PcdLib | |
MemoryAllocationLib | |
BaseMemoryLib | |
ExtractGuidedSectionLib | |
UefiDecompressLib | |
ReportStatusCodeLib | |
PeiServicesLib | |
HobLib | |
BaseLib | |
PeimEntryPoint | |
DebugLib | |
DebugAgentLib | |
PeiServicesTablePointerLib | |
[LibraryClasses.ARM, LibraryClasses.AARCH64] | |
ArmMmuLib | |
[Ppis] | |
gEfiDxeIplPpiGuid ## PRODUCES | |
gEfiPeiDecompressPpiGuid ## PRODUCES | |
gEfiEndOfPeiSignalPpiGuid ## SOMETIMES_PRODUCES # Not produced on S3 boot path | |
gEfiPeiReadOnlyVariable2PpiGuid ## SOMETIMES_CONSUMES | |
gEfiPeiLoadFilePpiGuid ## SOMETIMES_CONSUMES | |
gEfiPeiS3Resume2PpiGuid ## SOMETIMES_CONSUMES # Consumed on S3 boot path | |
gEfiPeiRecoveryModulePpiGuid ## SOMETIMES_CONSUMES # Consumed on recovery boot path | |
## SOMETIMES_CONSUMES | |
## UNDEFINED # HOB | |
gEfiVectorHandoffInfoPpiGuid | |
gEfiPeiMemoryDiscoveredPpiGuid ## SOMETIMES_CONSUMES | |
[Guids] | |
## SOMETIMES_CONSUMES ## Variable:L"MemoryTypeInformation" | |
## SOMETIMES_PRODUCES ## HOB | |
gEfiMemoryTypeInformationGuid | |
[FeaturePcd.IA32] | |
gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode ## CONSUMES | |
[FeaturePcd.X64] | |
gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplBuildPageTables ## CONSUMES | |
[FeaturePcd] | |
gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSupportUefiDecompress ## CONSUMES | |
[Pcd.IA32,Pcd.X64] | |
gEfiMdeModulePkgTokenSpaceGuid.PcdUse1GPageTable ## SOMETIMES_CONSUMES | |
[Pcd.IA32,Pcd.X64,Pcd.ARM,Pcd.AARCH64] | |
gEfiMdeModulePkgTokenSpaceGuid.PcdSetNxForStack ## SOMETIMES_CONSUMES | |
[Depex] | |
gEfiPeiLoadFilePpiGuid AND gEfiPeiMasterBootModePpiGuid | |
# | |
# [BootMode] | |
# S3_RESUME ## SOMETIMES_CONSUMES | |
# RECOVERY_FULL ## SOMETIMES_CONSUMES | |
# | |
# | |
# [Hob] | |
# MEMORY_ALLOCATION ## SOMETIMES_PRODUCES # MEMORY_ALLOCATION_MODULE for DxeCore | |
# MEMORY_ALLOCATION ## SOMETIMES_PRODUCES # New Stack HoB | |
# MEMORY_ALLOCATION ## SOMETIMES_PRODUCES # Old Stack HOB | |
# | |
# [Hob.IPF] | |
# MEMORY_ALLOCATION ## SOMETIMES_PRODUCES # MEMORY_ALLOCATION_BSP_STORE | |
# | |
[UserExtensions.TianoCore."ExtraFiles"] | |
DxeIplExtra.uni |