xref: /linux/arch/mips/loongson64/sleeper.S (revision 335819fd5bac67d05ab2d8d7438ac5c475ac03c6)
168557c59SJiaxun Yang/* SPDX-License-Identifier: GPL-2.0-or-later */
268557c59SJiaxun Yang/*
368557c59SJiaxun Yang *  Copyright (C) 2024, Jiaxun Yang <jiaxun.yang@flygoat.com>
468557c59SJiaxun Yang *  Loongson EFI firmware sleeper routine
568557c59SJiaxun Yang */
668557c59SJiaxun Yang
768557c59SJiaxun Yang#include <asm/asm.h>
868557c59SJiaxun Yang#include <asm/pm.h>
968557c59SJiaxun Yang
1068557c59SJiaxun Yang#include <kernel-entry-init.h>
1168557c59SJiaxun Yang
1268557c59SJiaxun YangLEAF(loongson_lefi_sleep)
1368557c59SJiaxun Yang	SUSPEND_SAVE
14*335819fdSJiaxun Yang	move	t9, a0
15*335819fdSJiaxun Yang	PTR_LA	a0, wake
16*335819fdSJiaxun Yang	move	a1, sp
17*335819fdSJiaxun Yang	jalr    t9
18*335819fdSJiaxun Yangwake:
1968557c59SJiaxun Yang	smp_slave_setup
2068557c59SJiaxun Yang	RESUME_RESTORE_REGS_RETURN
2168557c59SJiaxun YangEND(loongson_lefi_sleep)
22