Commit a5d33be0 authored by Christophe Leroy's avatar Christophe Leroy Committed by Michael Ellerman

powerpc/32: Return directly from power_save_ppc32_restore()

transfer_to_handler_cont: is now just a blr.

Directly perform blr in power_save_ppc32_restore().

Also remove useless setting of r11 in e500 version of
power_save_ppc32_restore().
Signed-off-by: default avatarChristophe Leroy <christophe.leroy@csgroup.eu>
Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/e337506e08a4df95b11d2290104b92f0dcdb5548.1615552867.git.christophe.leroy@csgroup.eu
parent 16db5436
...@@ -67,8 +67,6 @@ prepare_transfer_to_handler: ...@@ -67,8 +67,6 @@ prepare_transfer_to_handler:
bt- 31-TLF_NAPPING,4f bt- 31-TLF_NAPPING,4f
bt- 31-TLF_SLEEPING,7f bt- 31-TLF_SLEEPING,7f
#endif /* CONFIG_PPC_BOOK3S_32 || CONFIG_E500 */ #endif /* CONFIG_PPC_BOOK3S_32 || CONFIG_E500 */
.globl transfer_to_handler_cont
transfer_to_handler_cont:
blr blr
#if defined (CONFIG_PPC_BOOK3S_32) || defined(CONFIG_E500) #if defined (CONFIG_PPC_BOOK3S_32) || defined(CONFIG_E500)
...@@ -86,7 +84,6 @@ transfer_to_handler_cont: ...@@ -86,7 +84,6 @@ transfer_to_handler_cont:
b fast_exception_return b fast_exception_return
#endif #endif
_ASM_NOKPROBE_SYMBOL(prepare_transfer_to_handler) _ASM_NOKPROBE_SYMBOL(prepare_transfer_to_handler)
_ASM_NOKPROBE_SYMBOL(transfer_to_handler_cont)
.globl transfer_to_syscall .globl transfer_to_syscall
transfer_to_syscall: transfer_to_syscall:
......
...@@ -176,7 +176,7 @@ BEGIN_FTR_SECTION ...@@ -176,7 +176,7 @@ BEGIN_FTR_SECTION
lwz r9,nap_save_hid1@l(r9) lwz r9,nap_save_hid1@l(r9)
mtspr SPRN_HID1, r9 mtspr SPRN_HID1, r9
END_FTR_SECTION_IFSET(CPU_FTR_DUAL_PLL_750FX) END_FTR_SECTION_IFSET(CPU_FTR_DUAL_PLL_750FX)
b transfer_to_handler_cont blr
_ASM_NOKPROBE_SYMBOL(power_save_ppc32_restore) _ASM_NOKPROBE_SYMBOL(power_save_ppc32_restore)
.data .data
......
...@@ -81,13 +81,5 @@ END_FTR_SECTION_IFSET(CPU_FTR_CAN_NAP) ...@@ -81,13 +81,5 @@ END_FTR_SECTION_IFSET(CPU_FTR_CAN_NAP)
_GLOBAL(power_save_ppc32_restore) _GLOBAL(power_save_ppc32_restore)
lwz r9,_LINK(r11) /* interrupted in e500_idle */ lwz r9,_LINK(r11) /* interrupted in e500_idle */
stw r9,_NIP(r11) /* make it do a blr */ stw r9,_NIP(r11) /* make it do a blr */
blr
#ifdef CONFIG_SMP
lwz r11,TASK_CPU(r2) /* get cpu number * 4 */
slwi r11,r11,2
#else
li r11,0
#endif
b transfer_to_handler_cont
_ASM_NOKPROBE_SYMBOL(power_save_ppc32_restore) _ASM_NOKPROBE_SYMBOL(power_save_ppc32_restore)
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment