1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /*
3 * Copyright (C) 2014 Imagination Technologies
4 * Author: Paul Burton <paul.burton@mips.com>
5 */
6
7 #ifndef __ASM_MIPS_MACH_MALTA_PM_H__
8 #define __ASM_MIPS_MACH_MALTA_PM_H__
9
10 #include <asm/mips-boards/piix4.h>
11
12 #ifdef CONFIG_MIPS_MALTA_PM
13
14 /**
15 * mips_pm_suspend - enter a suspend state
16 * @state: the state to enter, one of PIIX4_FUNC3IO_PMCNTRL_SUS_TYP_*
17 *
18 * Enters a suspend state via the Malta's PIIX4. If the state to be entered
19 * is one which loses context (eg. SOFF) then this function will never
20 * return.
21 */
22 extern int mips_pm_suspend(unsigned state);
23
24 #else /* !CONFIG_MIPS_MALTA_PM */
25
26 static inline int mips_pm_suspend(unsigned state)
27 {
28 return -EINVAL;
29 }
30
31 #endif /* !CONFIG_MIPS_MALTA_PM */
32
33 #endif /* __ASM_MIPS_MACH_MALTA_PM_H__ */