xref: /openbmc/linux/arch/sh/include/asm/suspend.h (revision 6ee73861)
1 #ifndef _ASM_SH_SUSPEND_H
2 #define _ASM_SH_SUSPEND_H
3 
4 #ifndef __ASSEMBLY__
5 static inline int arch_prepare_suspend(void) { return 0; }
6 
7 #include <asm/ptrace.h>
8 
9 struct swsusp_arch_regs {
10 	struct pt_regs user_regs;
11 	unsigned long bank1_regs[8];
12 };
13 
14 void sh_mobile_call_standby(unsigned long mode);
15 
16 #ifdef CONFIG_CPU_IDLE
17 void sh_mobile_setup_cpuidle(void);
18 #else
19 static inline void sh_mobile_setup_cpuidle(void) {}
20 #endif
21 
22 #endif
23 
24 /* flags passed to assembly suspend code */
25 #define SUSP_SH_SLEEP		(1 << 0) /* Regular sleep mode */
26 #define SUSP_SH_STANDBY		(1 << 1) /* SH-Mobile Software standby mode */
27 #define SUSP_SH_RSTANDBY	(1 << 2) /* SH-Mobile R-standby mode */
28 #define SUSP_SH_USTANDBY	(1 << 3) /* SH-Mobile U-standby mode */
29 #define SUSP_SH_SF		(1 << 4) /* Enable self-refresh */
30 
31 #endif /* _ASM_SH_SUSPEND_H */
32