From 166a91d6a7f0a2fbfdf1eea991b7389a1c7a23ad Mon Sep 17 00:00:00 2001 From: Jun Nie Date: Thu, 4 Oct 2018 12:28:19 +0800 Subject: Aarch32: fix register usage when setup stack Avoid using clobbered register when setup stack. Otherwise, the SVC mode is not recover and result wrong stack pointer. Signed-off-by: Jun Nie --- plat/common/aarch32/platform_mp_stack.S | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plat/common/aarch32/platform_mp_stack.S b/plat/common/aarch32/platform_mp_stack.S index 1532f6e..897ad73 100644 --- a/plat/common/aarch32/platform_mp_stack.S +++ b/plat/common/aarch32/platform_mp_stack.S @@ -82,11 +82,11 @@ func platform_set_stack mov sp, r0 #if ARM_ARCH_MAJOR == 7 - mrs r2, cpsr + mrs r3, cpsr msr cpsr, #SPSR_ARMV7_IRQ get_mp_stack irq_stacks, IRQ_STACK_SIZE mov sp, r0 - msr cpsr, r2 + msr cpsr, r3 #endif bx r9 endfunc platform_set_stack -- cgit v1.2.3