summaryrefslogtreecommitdiffstats
path: root/arch/powerpc/kernel/head_64.S
diff options
context:
space:
mode:
authorNicholas Piggin <npiggin@gmail.com>2023-02-03 12:38:58 +0100
committerMichael Ellerman <mpe@ellerman.id.au>2023-02-10 12:17:36 +0100
commitffc8e90decc531a2dd59ef9e1e6f16a52057ab62 (patch)
treeb0d8c11ad56e21fc18c9b1099e990a32b2ecb092 /arch/powerpc/kernel/head_64.S
parentpowerpc/64s: Refactor initialisation after prom (diff)
downloadlinux-ffc8e90decc531a2dd59ef9e1e6f16a52057ab62.tar.xz
linux-ffc8e90decc531a2dd59ef9e1e6f16a52057ab62.zip
powerpc/64e: Simplify address calculation in secondary hold loop
As the earlier comment explains, __secondary_hold_spinloop does not have to be accessed at its virtual address, slightly simplifying code. Signed-off-by: Nicholas Piggin <npiggin@gmail.com> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://lore.kernel.org/r/20230203113858.1152093-4-npiggin@gmail.com
Diffstat (limited to 'arch/powerpc/kernel/head_64.S')
-rw-r--r--arch/powerpc/kernel/head_64.S6
1 files changed, 1 insertions, 5 deletions
diff --git a/arch/powerpc/kernel/head_64.S b/arch/powerpc/kernel/head_64.S
index 5af2e473b195..3a7266fa8a18 100644
--- a/arch/powerpc/kernel/head_64.S
+++ b/arch/powerpc/kernel/head_64.S
@@ -160,12 +160,8 @@ __secondary_hold:
std r24,(ABS_ADDR(__secondary_hold_acknowledge, first_256B))(0)
sync
- li r26,0
-#ifdef CONFIG_PPC_BOOK3E_64
- tovirt(r26,r26)
-#endif
/* All secondary cpus wait here until told to start. */
-100: ld r12,(ABS_ADDR(__secondary_hold_spinloop, first_256B))(r26)
+100: ld r12,(ABS_ADDR(__secondary_hold_spinloop, first_256B))(0)
cmpdi 0,r12,0
beq 100b