X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=MdeModulePkg%2FCore%2FDxeIplPeim%2FDxeIpl.inf;h=fd82657404c43238803c2867aa64a6aaa94197e0;hp=fda8dcb7661b1c792a428603185a3ebb6704539c;hb=de005223b77c473d45c9c8a11147f6968325f73e;hpb=f9876ecf8a296a8e0d4ad8d22ed5ff12ecc11f65
diff --git a/MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf b/MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
index fda8dcb766..fd82657404 100644
--- a/MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
+++ b/MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
@@ -1,24 +1,27 @@
-#/** @file
+## @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 - 2010, Intel Corporation.
-# All rights reserved. This program and the accompanying materials
+# Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.
+# Copyright (c) 2017, AMD Incorporated. All rights reserved.
+#
+# 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
@@ -28,38 +31,37 @@
#
# 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)
+# VALID_ARCHITECTURES = IA32 X64 EBC (EBC is for build only) AARCH64
#
-[Sources.common]
+[Sources]
DxeIpl.h
DxeLoad.c
[Sources.Ia32]
- Ia32/VirtualMemory.h ||||PcdDxeIplSwitchToLongMode
- Ia32/VirtualMemory.c ||||PcdDxeIplSwitchToLongMode
+ X64/VirtualMemory.h
+ X64/VirtualMemory.c
Ia32/DxeLoadFunc.c
- Ia32/IdtVectorAsm.asm||||PcdDxeIplSwitchToLongMode
- Ia32/IdtVectorAsm.S ||||PcdDxeIplSwitchToLongMode
+ Ia32/IdtVectorAsm.nasm
[Sources.X64]
X64/VirtualMemory.h
X64/VirtualMemory.c
X64/DxeLoadFunc.c
-[Sources.IPF]
- Ipf/DxeLoadFunc.c
-
[Sources.EBC]
Ebc/DxeLoadFunc.c
-[Sources.ARM]
+[Sources.ARM, Sources.AARCH64]
Arm/DxeLoadFunc.c
[Packages]
MdePkg/MdePkg.dec
MdeModulePkg/MdeModulePkg.dec
+[Packages.ARM, Packages.AARCH64]
+ ArmPkg/ArmPkg.dec
+
[LibraryClasses]
PcdLib
MemoryAllocationLib
@@ -72,46 +74,67 @@
BaseLib
PeimEntryPoint
DebugLib
+ DebugAgentLib
+ PeiServicesTablePointerLib
+ PerformanceLib
+
+[LibraryClasses.ARM, LibraryClasses.AARCH64]
+ ArmMmuLib
[Ppis]
gEfiDxeIplPpiGuid ## PRODUCES
- gEfiEndOfPeiSignalPpiGuid ## SOMETIMES_PRODUCES(Not produced on S3 boot path)
- gEfiPeiDecompressPpiGuid ## SOMETIMES_PRODUCES
+ gEfiPeiDecompressPpiGuid ## PRODUCES
+ gEfiEndOfPeiSignalPpiGuid ## SOMETIMES_PRODUCES # Not produced on S3 boot path
gEfiPeiReadOnlyVariable2PpiGuid ## SOMETIMES_CONSUMES
- gEfiPeiLoadFilePpiGuid ## CONSUMES
- gEfiPeiS3ResumePpiGuid ## SOMETIMES_CONSUMES(Consumed on S3 boot path)
- gEfiPeiRecoveryModulePpiGuid ## SOMETIMES_CONSUMES(Consumed on recovery boot path)
+ 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]
- gEfiMemoryTypeInformationGuid ## SOMETIMES_CONSUMES ## Variable:L"MemoryTypeInformation"
- gEfiMemoryTypeInformationGuid ## SOMETIMES_PRODUCES ## HOB
+ ## SOMETIMES_CONSUMES ## Variable:L"MemoryTypeInformation"
+ ## SOMETIMES_PRODUCES ## HOB
+ gEfiMemoryTypeInformationGuid
[FeaturePcd.IA32]
- gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode
+ gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode ## CONSUMES
+
+[FeaturePcd.X64]
+ gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplBuildPageTables ## CONSUMES
+
+[FeaturePcd]
+ gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSupportUefiDecompress ## CONSUMES
-[FeaturePcd.common]
- gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSupportUefiDecompress
+[Pcd.IA32,Pcd.X64]
+ gEfiMdeModulePkgTokenSpaceGuid.PcdUse1GPageTable ## SOMETIMES_CONSUMES
+ gEfiMdeModulePkgTokenSpaceGuid.PcdPteMemoryEncryptionAddressOrMask ## CONSUMES
+ gEfiMdeModulePkgTokenSpaceGuid.PcdNullPointerDetectionPropertyMask ## CONSUMES
+ gEfiMdeModulePkgTokenSpaceGuid.PcdHeapGuardPropertyMask ## CONSUMES
+ gEfiMdeModulePkgTokenSpaceGuid.PcdCpuStackGuard ## CONSUMES
+
+[Pcd.IA32,Pcd.X64,Pcd.ARM,Pcd.AARCH64]
+ gEfiMdeModulePkgTokenSpaceGuid.PcdSetNxForStack ## SOMETIMES_CONSUMES
[Depex]
- gEfiPeiMemoryDiscoveredPpiGuid AND gEfiPeiLoadFilePpiGuid
+ gEfiPeiLoadFilePpiGuid AND gEfiPeiMasterBootModePpiGuid
#
-# [BootMode]
-# S3_RESUME ## SOMETIMES_CONSUMES
-# RECOVERY ## SOMETIMES_CONSUMES
+# [BootMode]
+# S3_RESUME ## SOMETIMES_CONSUMES
+# RECOVERY_FULL ## SOMETIMES_CONSUMES
+#
#
-#
# [Hob]
-# ##
-# # New Stack HoB
-# MEMORY_ALLOCATION ## PRODUCES
-# ##
-# # Old Stack HOB
-# MEMORY_ALLOCATION ## CONSUMES
+# 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]
-# ##
-# # BSP Stack HOB for IPF
-# MEMORY_ALLOCATION ## PRODUCES
+# MEMORY_ALLOCATION ## SOMETIMES_PRODUCES # MEMORY_ALLOCATION_BSP_STORE
#
-#
+
+[UserExtensions.TianoCore."ExtraFiles"]
+ DxeIplExtra.uni