ArmVirtPkg/PrePi: remove ArmPlatformStackLib dependency
ArmPlatformStackLib has hooks into primary/secondary core PCDs and other ArmPlatformLib related junk, so let's simply set the stack pointer directly. This is trivial given that our PrePi is unicore only. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Acked-by: Laszlo Ersek <lersek@redhat.com>
This commit is contained in:
@@ -120,22 +120,12 @@ _GetBaseUefiMemory:
|
||||
|
||||
_GetStackBase:
|
||||
// r1 = The top of the Mpcore Stacks
|
||||
mov sp, r1
|
||||
|
||||
// Stack for the primary core = PrimaryCoreStack
|
||||
MOV32 (r2, FixedPcdGet32(PcdCPUCorePrimaryStackSize))
|
||||
sub r9, r1, r2
|
||||
|
||||
// Stack for the secondary core = Number of Cores - 1
|
||||
MOV32 (r1, (FixedPcdGet32(PcdCoreCount) - 1) * FixedPcdGet32(PcdCPUCoreSecondaryStackSize))
|
||||
sub r9, r9, r1
|
||||
|
||||
// r9 = The base of the MpCore Stacks (primary stack & secondary stacks)
|
||||
mov r0, r9
|
||||
mov r1, r10
|
||||
//ArmPlatformStackSet(StackBase, MpId, PrimaryStackSize, SecondaryStackSize)
|
||||
MOV32 (r2, FixedPcdGet32(PcdCPUCorePrimaryStackSize))
|
||||
MOV32 (r3, FixedPcdGet32(PcdCPUCoreSecondaryStackSize))
|
||||
bl ASM_PFX(ArmPlatformStackSet)
|
||||
|
||||
mov r0, r10
|
||||
mov r1, r11
|
||||
mov r2, r9
|
||||
|
Reference in New Issue
Block a user