1 // SPDX-License-Identifier: GPL-2.0
2 #include <linux/init.h>
3 #include <linux/suspend.h>
4 #include <asm/suspend.h>
8 static int tango_pm_powerdown(unsigned long arg
)
10 tango_suspend(__pa_symbol(cpu_resume
));
12 return -EIO
; /* tango_suspend has failed */
15 static int tango_pm_enter(suspend_state_t state
)
17 if (state
== PM_SUSPEND_MEM
)
18 return cpu_suspend(0, tango_pm_powerdown
);
23 static const struct platform_suspend_ops tango_pm_ops
= {
24 .enter
= tango_pm_enter
,
25 .valid
= suspend_valid_only_mem
,
28 void __init
tango_pm_init(void)
30 suspend_set_ops(&tango_pm_ops
);