mirror of
https://github.com/acidanthera/audk.git
synced 2025-07-30 17:14:07 +02:00
ArmPlatformPkg: Retire ArmPlatformStackLib
ArmPlatformStackLib is no longer used so it can be retired. Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
This commit is contained in:
parent
391666da2c
commit
76c5f035a1
@ -40,7 +40,6 @@
|
|||||||
ArmGicLib|ArmPkg/Drivers/ArmGic/ArmGicLib.inf
|
ArmGicLib|ArmPkg/Drivers/ArmGic/ArmGicLib.inf
|
||||||
ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf
|
ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf
|
||||||
ArmPlatformLib|ArmPlatformPkg/Library/ArmPlatformLibNull/ArmPlatformLibNull.inf
|
ArmPlatformLib|ArmPlatformPkg/Library/ArmPlatformLibNull/ArmPlatformLibNull.inf
|
||||||
ArmPlatformStackLib|ArmPlatformPkg/Library/ArmPlatformStackLib/ArmPlatformStackLib.inf
|
|
||||||
ArmMmuLib|ArmPkg/Library/ArmMmuLib/ArmMmuBaseLib.inf
|
ArmMmuLib|ArmPkg/Library/ArmMmuLib/ArmMmuBaseLib.inf
|
||||||
BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
|
BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
|
||||||
BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
|
BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
|
||||||
@ -103,7 +102,6 @@
|
|||||||
ArmPlatformPkg/Drivers/SP805WatchdogDxe/SP805WatchdogDxe.inf
|
ArmPlatformPkg/Drivers/SP805WatchdogDxe/SP805WatchdogDxe.inf
|
||||||
|
|
||||||
ArmPlatformPkg/Library/ArmPlatformLibNull/ArmPlatformLibNull.inf
|
ArmPlatformPkg/Library/ArmPlatformLibNull/ArmPlatformLibNull.inf
|
||||||
ArmPlatformPkg/Library/ArmPlatformStackLib/ArmPlatformStackLib.inf
|
|
||||||
ArmPlatformPkg/Library/HdLcd/HdLcd.inf
|
ArmPlatformPkg/Library/HdLcd/HdLcd.inf
|
||||||
ArmPlatformPkg/Library/LcdHwNullLib/LcdHwNullLib.inf
|
ArmPlatformPkg/Library/LcdHwNullLib/LcdHwNullLib.inf
|
||||||
ArmPlatformPkg/Library/LcdPlatformNullLib/LcdPlatformNullLib.inf
|
ArmPlatformPkg/Library/LcdPlatformNullLib/LcdPlatformNullLib.inf
|
||||||
|
@ -1,99 +0,0 @@
|
|||||||
//
|
|
||||||
// Copyright (c) 2012-2014, ARM Limited. All rights reserved.
|
|
||||||
//
|
|
||||||
// SPDX-License-Identifier: BSD-2-Clause-Patent
|
|
||||||
//
|
|
||||||
//
|
|
||||||
|
|
||||||
#include <AsmMacroIoLibV8.h>
|
|
||||||
|
|
||||||
//VOID
|
|
||||||
//ArmPlatformStackSet (
|
|
||||||
// IN UINTN StackBase,
|
|
||||||
// IN UINTN MpId,
|
|
||||||
// IN UINTN PrimaryStackSize,
|
|
||||||
// IN UINTN SecondaryStackSize
|
|
||||||
// );
|
|
||||||
ASM_FUNC(ArmPlatformStackSet)
|
|
||||||
// Save parameters
|
|
||||||
mov x26, x3
|
|
||||||
mov x25, x2
|
|
||||||
mov x24, x1
|
|
||||||
mov x23, x0
|
|
||||||
|
|
||||||
// Save the Link register
|
|
||||||
mov x27, x30
|
|
||||||
|
|
||||||
// Identify Stack
|
|
||||||
mov x0, x1
|
|
||||||
bl ASM_PFX(ArmPlatformIsPrimaryCore)
|
|
||||||
cmp x0, #1
|
|
||||||
|
|
||||||
// Restore parameters
|
|
||||||
mov x0, x23
|
|
||||||
mov x1, x24
|
|
||||||
mov x2, x25
|
|
||||||
mov x3, x26
|
|
||||||
|
|
||||||
// Restore the Link register
|
|
||||||
mov x30, x27
|
|
||||||
|
|
||||||
b.ne 0f
|
|
||||||
|
|
||||||
b ASM_PFX(ArmPlatformStackSetPrimary)
|
|
||||||
0:b ASM_PFX(ArmPlatformStackSetSecondary)
|
|
||||||
|
|
||||||
//VOID
|
|
||||||
//ArmPlatformStackSetPrimary (
|
|
||||||
// IN UINTN StackBase,
|
|
||||||
// IN UINTN MpId,
|
|
||||||
// IN UINTN PrimaryStackSize,
|
|
||||||
// IN UINTN SecondaryStackSize
|
|
||||||
// );
|
|
||||||
ASM_FUNC(ArmPlatformStackSetPrimary)
|
|
||||||
// Add size of primary stack to StackBase
|
|
||||||
add x0, x0, x2
|
|
||||||
|
|
||||||
// Compute SecondaryCoresCount * SecondaryCoreStackSize
|
|
||||||
MOV32 (w1, FixedPcdGet32(PcdCoreCount) - 1)
|
|
||||||
mul x3, x3, x1
|
|
||||||
|
|
||||||
// Set Primary Stack ((StackBase + PrimaryStackSize) + (SecondaryCoresCount * SecondaryCoreStackSize))
|
|
||||||
add sp, x0, x3
|
|
||||||
|
|
||||||
ret
|
|
||||||
|
|
||||||
//VOID
|
|
||||||
//ArmPlatformStackSetSecondary (
|
|
||||||
// IN UINTN StackBase,
|
|
||||||
// IN UINTN MpId,
|
|
||||||
// IN UINTN PrimaryStackSize,
|
|
||||||
// IN UINTN SecondaryStackSize
|
|
||||||
// );
|
|
||||||
ASM_FUNC(ArmPlatformStackSetSecondary)
|
|
||||||
// Save the Link register
|
|
||||||
mov x24, x30
|
|
||||||
mov sp, x0
|
|
||||||
|
|
||||||
// Get Core Position
|
|
||||||
mov x0, x1
|
|
||||||
bl ASM_PFX(ArmPlatformGetCorePosition)
|
|
||||||
mov x25, x0
|
|
||||||
|
|
||||||
// Get Primary Core Position
|
|
||||||
bl ASM_PFX(ArmPlatformGetPrimaryCoreMpId)
|
|
||||||
bl ASM_PFX(ArmPlatformGetCorePosition)
|
|
||||||
|
|
||||||
// Get Secondary Core Position. We should get consecutive secondary stack number from 1...(CoreCount-1)
|
|
||||||
cmp x25, x0
|
|
||||||
|
|
||||||
// Decrement the position if after the primary core
|
|
||||||
cinc x25, x25, ls
|
|
||||||
|
|
||||||
// Compute top of the secondary stack
|
|
||||||
mul x3, x3, x25
|
|
||||||
|
|
||||||
// Set stack
|
|
||||||
add sp, sp, x3
|
|
||||||
|
|
||||||
ret x24
|
|
@ -1,98 +0,0 @@
|
|||||||
//
|
|
||||||
// Copyright (c) 2012-2013, ARM Limited. All rights reserved.
|
|
||||||
//
|
|
||||||
// SPDX-License-Identifier: BSD-2-Clause-Patent
|
|
||||||
//
|
|
||||||
//
|
|
||||||
|
|
||||||
#include <AsmMacroIoLib.h>
|
|
||||||
|
|
||||||
//VOID
|
|
||||||
//ArmPlatformStackSet (
|
|
||||||
// IN UINTN StackBase,
|
|
||||||
// IN UINTN MpId,
|
|
||||||
// IN UINTN PrimaryStackSize,
|
|
||||||
// IN UINTN SecondaryStackSize
|
|
||||||
// );
|
|
||||||
ASM_FUNC(ArmPlatformStackSet)
|
|
||||||
// Save parameters
|
|
||||||
mov r6, r3
|
|
||||||
mov r5, r2
|
|
||||||
mov r4, r1
|
|
||||||
mov r3, r0
|
|
||||||
|
|
||||||
// Save the Link register
|
|
||||||
mov r7, lr
|
|
||||||
|
|
||||||
// Identify Stack
|
|
||||||
mov r0, r1
|
|
||||||
bl ASM_PFX(ArmPlatformIsPrimaryCore)
|
|
||||||
cmp r0, #1
|
|
||||||
|
|
||||||
// Restore parameters
|
|
||||||
mov r0, r3
|
|
||||||
mov r1, r4
|
|
||||||
mov r2, r5
|
|
||||||
mov r3, r6
|
|
||||||
|
|
||||||
// Restore the Link register
|
|
||||||
mov lr, r7
|
|
||||||
|
|
||||||
beq ASM_PFX(ArmPlatformStackSetPrimary)
|
|
||||||
bne ASM_PFX(ArmPlatformStackSetSecondary)
|
|
||||||
|
|
||||||
//VOID
|
|
||||||
//ArmPlatformStackSetPrimary (
|
|
||||||
// IN UINTN StackBase,
|
|
||||||
// IN UINTN MpId,
|
|
||||||
// IN UINTN PrimaryStackSize,
|
|
||||||
// IN UINTN SecondaryStackSize
|
|
||||||
// );
|
|
||||||
ASM_FUNC(ArmPlatformStackSetPrimary)
|
|
||||||
mov r4, lr
|
|
||||||
|
|
||||||
// Add stack of primary stack to StackBase
|
|
||||||
add r0, r0, r2
|
|
||||||
|
|
||||||
// Compute SecondaryCoresCount * SecondaryCoreStackSize
|
|
||||||
MOV32 (r1, FixedPcdGet32(PcdCoreCount) - 1)
|
|
||||||
mul r3, r3, r1
|
|
||||||
|
|
||||||
// Set Primary Stack ((StackBase + PrimaryStackSize) + (SecondaryCoresCount * SecondaryCoreStackSize))
|
|
||||||
add sp, r0, r3
|
|
||||||
|
|
||||||
bx r4
|
|
||||||
|
|
||||||
//VOID
|
|
||||||
//ArmPlatformStackSetSecondary (
|
|
||||||
// IN UINTN StackBase,
|
|
||||||
// IN UINTN MpId,
|
|
||||||
// IN UINTN PrimaryStackSize,
|
|
||||||
// IN UINTN SecondaryStackSize
|
|
||||||
// );
|
|
||||||
ASM_FUNC(ArmPlatformStackSetSecondary)
|
|
||||||
mov r4, lr
|
|
||||||
mov sp, r0
|
|
||||||
|
|
||||||
// Get Core Position
|
|
||||||
mov r0, r1
|
|
||||||
bl ASM_PFX(ArmPlatformGetCorePosition)
|
|
||||||
mov r5, r0
|
|
||||||
|
|
||||||
// Get Primary Core Position
|
|
||||||
bl ASM_PFX(ArmPlatformGetPrimaryCoreMpId)
|
|
||||||
bl ASM_PFX(ArmPlatformGetCorePosition)
|
|
||||||
|
|
||||||
// Get Secondary Core Position. We should get consecutive secondary stack number from 1...(CoreCount-1)
|
|
||||||
cmp r5, r0
|
|
||||||
subhi r5, r5, #1
|
|
||||||
add r5, r5, #1
|
|
||||||
|
|
||||||
// Compute top of the secondary stack
|
|
||||||
mul r3, r3, r5
|
|
||||||
|
|
||||||
// Set stack
|
|
||||||
add sp, sp, r3
|
|
||||||
|
|
||||||
bx r4
|
|
||||||
|
|
@ -1,33 +0,0 @@
|
|||||||
#/* @file
|
|
||||||
#
|
|
||||||
# Copyright (c) 2012, ARM Limited. All rights reserved.
|
|
||||||
#
|
|
||||||
# SPDX-License-Identifier: BSD-2-Clause-Patent
|
|
||||||
#
|
|
||||||
#*/
|
|
||||||
|
|
||||||
[Defines]
|
|
||||||
INF_VERSION = 0x00010005
|
|
||||||
BASE_NAME = ArmPlatformStackLib
|
|
||||||
FILE_GUID = 5e2e44af-53c1-44c2-a801-9c149f3d6ba0
|
|
||||||
MODULE_TYPE = BASE
|
|
||||||
VERSION_STRING = 1.0
|
|
||||||
LIBRARY_CLASS = ArmPlatformStackLib
|
|
||||||
|
|
||||||
[Packages]
|
|
||||||
MdePkg/MdePkg.dec
|
|
||||||
MdeModulePkg/MdeModulePkg.dec
|
|
||||||
ArmPkg/ArmPkg.dec
|
|
||||||
ArmPlatformPkg/ArmPlatformPkg.dec
|
|
||||||
|
|
||||||
[Sources.ARM]
|
|
||||||
Arm/ArmPlatformStackLib.S | GCC
|
|
||||||
|
|
||||||
[Sources.AARCH64]
|
|
||||||
AArch64/ArmPlatformStackLib.S
|
|
||||||
|
|
||||||
[LibraryClasses]
|
|
||||||
ArmPlatformLib
|
|
||||||
|
|
||||||
[FixedPcd]
|
|
||||||
gArmPlatformTokenSpaceGuid.PcdCoreCount
|
|
Loading…
x
Reference in New Issue
Block a user