From b5a572238d3c45ec8d3d0ec2c6ee3e6930458b96 Mon Sep 17 00:00:00 2001 From: oliviermartin Date: Fri, 10 May 2013 12:49:10 +0000 Subject: ArmPlatform/ArmPlatformLib: Introduced ArmPlatformPeiBootAction() This function allows platform to do any specific actions prior to the start the PEI phase. For instance, this function could be used by some platforms to initialize clocks that are required at the early stage of the PEI phase. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Olivier Martin Acked-by: Ryan Harkin Reviewed-by: Leif Lindholm git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14347 6f19259b-4bc3-4df7-8a09-765794883524 --- ArmPlatformPkg/PrePeiCore/Arm/PrePeiCoreEntryPoint.S | 4 ++++ ArmPlatformPkg/PrePeiCore/Arm/PrePeiCoreEntryPoint.asm | 4 ++++ 2 files changed, 8 insertions(+) (limited to 'ArmPlatformPkg/PrePeiCore') diff --git a/ArmPlatformPkg/PrePeiCore/Arm/PrePeiCoreEntryPoint.S b/ArmPlatformPkg/PrePeiCore/Arm/PrePeiCoreEntryPoint.S index 3b463eabee..af4350b0cb 100644 --- a/ArmPlatformPkg/PrePeiCore/Arm/PrePeiCoreEntryPoint.S +++ b/ArmPlatformPkg/PrePeiCore/Arm/PrePeiCoreEntryPoint.S @@ -23,11 +23,15 @@ GCC_ASM_IMPORT(CEntryPoint) GCC_ASM_IMPORT(ArmPlatformGetCorePosition) GCC_ASM_IMPORT(ArmPlatformIsPrimaryCore) GCC_ASM_IMPORT(ArmReadMpidr) +GCC_ASM_IMPORT(ArmPlatformPeiBootAction) GCC_ASM_EXPORT(_ModuleEntryPoint) StartupAddr: .word CEntryPoint ASM_PFX(_ModuleEntryPoint): + // Do early platform specific actions + bl ASM_PFX(ArmPlatformPeiBootAction) + // Identify CPU ID bl ASM_PFX(ArmReadMpidr) // Keep a copy of the MpId register value diff --git a/ArmPlatformPkg/PrePeiCore/Arm/PrePeiCoreEntryPoint.asm b/ArmPlatformPkg/PrePeiCore/Arm/PrePeiCoreEntryPoint.asm index 1510fb84d0..be1a767696 100644 --- a/ArmPlatformPkg/PrePeiCore/Arm/PrePeiCoreEntryPoint.asm +++ b/ArmPlatformPkg/PrePeiCore/Arm/PrePeiCoreEntryPoint.asm @@ -22,6 +22,7 @@ IMPORT ArmPlatformGetCorePosition IMPORT ArmPlatformIsPrimaryCore IMPORT ArmReadMpidr + IMPORT ArmPlatformPeiBootAction EXPORT _ModuleEntryPoint PRESERVE8 @@ -30,6 +31,9 @@ StartupAddr DCD CEntryPoint _ModuleEntryPoint + // Do early platform specific actions + bl ArmPlatformPeiBootAction + // Identify CPU ID bl ArmReadMpidr // Keep a copy of the MpId register value -- cgit v1.2.3