Some firmware implementations require restoring ra and sp to be passed as arguments. Passing them as necessary. Fixes: 68557c59a550 ("MIPS: Loongson64: Implement PM suspend for LEFI firmware") Signed-off-by: Jiaxun Yang <jiaxun.yang@xxxxxxxxxxx> --- arch/mips/loongson64/sleeper.S | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/arch/mips/loongson64/sleeper.S b/arch/mips/loongson64/sleeper.S index 04874b9bf430..cf16877409e2 100644 --- a/arch/mips/loongson64/sleeper.S +++ b/arch/mips/loongson64/sleeper.S @@ -11,7 +11,11 @@ LEAF(loongson_lefi_sleep) SUSPEND_SAVE - jalr a0 - smp_slave_setup + move t9, a0 + PTR_LA a0, wake + move a1, sp + jalr t9 +wake: + smp_slave_setup RESUME_RESTORE_REGS_RETURN END(loongson_lefi_sleep) -- 2.43.0