The ArmVirtPkg platforms that use PrePi have no notion of boot remapped aliases, so we can simply jump to CEntryPoint() directly rather than via an absolute reference.
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheu...@linaro.org> --- ArmVirtPkg/PrePi/AArch64/ModuleEntryPoint.S | 7 +------ ArmVirtPkg/PrePi/Arm/ModuleEntryPoint.S | 7 +------ 2 files changed, 2 insertions(+), 12 deletions(-) diff --git a/ArmVirtPkg/PrePi/AArch64/ModuleEntryPoint.S b/ArmVirtPkg/PrePi/AArch64/ModuleEntryPoint.S index d6be34541834..1fed84ed0ac3 100644 --- a/ArmVirtPkg/PrePi/AArch64/ModuleEntryPoint.S +++ b/ArmVirtPkg/PrePi/AArch64/ModuleEntryPoint.S @@ -27,7 +27,6 @@ GCC_ASM_IMPORT(ArmPlatformStackSet) GCC_ASM_EXPORT(_ModuleEntryPoint) ASM_GLOBAL ASM_PFX(mSystemMemoryEnd) -StartupAddr: .8byte ASM_PFX(CEntryPoint) ASM_PFX(mSystemMemoryEnd): .8byte 0 ASM_PFX(_ModuleEntryPoint): @@ -163,15 +162,11 @@ _PrepareArguments: mov x1, x21 mov x2, x22 - // Move sec startup address into a data register - // Ensure we're jumping to FV version of the code (not boot remapped alias) - ldr x4, StartupAddr - // Jump to PrePiCore C code // x0 = MpId // x1 = UefiMemoryBase // x2 = StacksBase - blr x4 + bl ASM_PFX(CEntryPoint) _NeverReturn: b _NeverReturn diff --git a/ArmVirtPkg/PrePi/Arm/ModuleEntryPoint.S b/ArmVirtPkg/PrePi/Arm/ModuleEntryPoint.S index 3215c7d55876..a0176af91c8f 100644 --- a/ArmVirtPkg/PrePi/Arm/ModuleEntryPoint.S +++ b/ArmVirtPkg/PrePi/Arm/ModuleEntryPoint.S @@ -27,7 +27,6 @@ GCC_ASM_IMPORT(ArmPlatformStackSet) GCC_ASM_EXPORT(_ModuleEntryPoint) ASM_GLOBAL ASM_PFX(mSystemMemoryEnd) -StartupAddr: .long ASM_PFX(CEntryPoint) ASM_PFX(mSystemMemoryEnd): .quad 0 __relocs: @@ -182,15 +181,11 @@ _PrepareArguments: mov r1, r11 mov r2, r9 - // Move sec startup address into a data register - // Ensure we're jumping to FV version of the code (not boot remapped alias) - ldr r4, StartupAddr - // Jump to PrePiCore C code // r0 = MpId // r1 = UefiMemoryBase // r2 = StacksBase - blx r4 + bl ASM_PFX(CEntryPoint) _NeverReturn: b _NeverReturn -- 2.7.4 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel