summaryrefslogtreecommitdiff
path: root/ArmPlatformPkg/PrePi/Arm/ModuleEntryPoint.asm
diff options
context:
space:
mode:
Diffstat (limited to 'ArmPlatformPkg/PrePi/Arm/ModuleEntryPoint.asm')
-rw-r--r--ArmPlatformPkg/PrePi/Arm/ModuleEntryPoint.asm10
1 files changed, 6 insertions, 4 deletions
diff --git a/ArmPlatformPkg/PrePi/Arm/ModuleEntryPoint.asm b/ArmPlatformPkg/PrePi/Arm/ModuleEntryPoint.asm
index 5efdb532af..b78729fbc2 100644
--- a/ArmPlatformPkg/PrePi/Arm/ModuleEntryPoint.asm
+++ b/ArmPlatformPkg/PrePi/Arm/ModuleEntryPoint.asm
@@ -21,6 +21,7 @@
INCLUDE AsmMacroIoLib.inc
IMPORT CEntryPoint
+ IMPORT ArmPlatformIsPrimaryCore
IMPORT ArmReadMpidr
IMPORT ArmPlatformStackSet
@@ -34,8 +35,8 @@ StartupAddr DCD CEntryPoint
_ModuleEntryPoint
// Get ID of this CPU in Multicore system
bl ArmReadMpidr
- LoadConstantToReg (FixedPcdGet32(PcdArmPrimaryCoreMask), r1)
- and r6, r0, r1
+ // Keep a copy of the MpId register value
+ mov r6, r0
_SetSVCMode
// Enter SVC mode, Disable FIQ and IRQ
@@ -120,8 +121,9 @@ _GetStackBase
bl ArmPlatformStackSet
// Is it the Primary Core ?
- LoadConstantToReg (FixedPcdGet32(PcdArmPrimaryCore), r4)
- cmp r6, r4
+ mov r0, r6
+ bl ArmPlatformIsPrimaryCore
+ cmp r0, #1
bne _PrepareArguments
_ReserveGlobalVariable