GNU Linux-libre 5.4.274-gnu1
[releases.git] / arch / mips / include / asm / mach-malta / malta-pm.h
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__ */