diff options
author | Jason Chen <jason.chen@linaro.org> | 2011-12-13 15:43:23 +0800 |
---|---|---|
committer | Jason Chen <jason.chen@linaro.org> | 2011-12-13 15:43:23 +0800 |
commit | c7eb15812c072903ec9c9e9cf44328257f27b6a8 (patch) | |
tree | 6143c77ecd3bca8805c49aaafed7b4e8e2971f51 /arch/arm/plat-mxc/include/mach/common.h | |
parent | fdba1f5d514abc6ab1d07a168f307739d6762ebf (diff) |
imx6q: add cpu suspend/resume support
add standby/mem pm state.
suspend cpu in iram.
Signed-off-by: Jason Chen <jason.chen@linaro.org>
Diffstat (limited to 'arch/arm/plat-mxc/include/mach/common.h')
-rw-r--r-- | arch/arm/plat-mxc/include/mach/common.h | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/arch/arm/plat-mxc/include/mach/common.h b/arch/arm/plat-mxc/include/mach/common.h index 4c282607e57..d32afc98667 100644 --- a/arch/arm/plat-mxc/include/mach/common.h +++ b/arch/arm/plat-mxc/include/mach/common.h @@ -11,6 +11,8 @@ #ifndef __ASM_ARCH_MXC_COMMON_H__ #define __ASM_ARCH_MXC_COMMON_H__ +#include <linux/suspend.h> + struct platform_device; struct clk; enum mxc_cpu_pwr_mode; @@ -82,6 +84,7 @@ enum mxc_cpu_pwr_mode { WAIT_UNCLOCKED_POWER_OFF, /* WAIT + SRPG */ STOP_POWER_ON, /* just STOP */ STOP_POWER_OFF, /* STOP + SRPG */ + ARM_POWER_OFF, /* STOP + SRPG + ARM power off */ }; extern void mx5_cpu_lp_set(enum mxc_cpu_pwr_mode mode); @@ -126,8 +129,9 @@ extern void imx_reset_vpu(void); extern void imx_set_cpu_jump(int cpu, void *jump_addr); extern void imx_src_init(void); extern void imx_gpc_init(void); -extern void imx_gpc_pre_suspend(void); -extern void imx_gpc_post_resume(void); +extern bool imx_gpc_wake_irq_pending(void); +extern void imx_gpc_pre_suspend(suspend_state_t state); +extern void imx_gpc_post_resume(suspend_state_t state); extern void imx51_babbage_common_init(void); extern void imx53_ard_common_init(void); extern void imx53_evk_common_init(void); @@ -136,4 +140,8 @@ extern void imx53_smd_common_init(void); extern int imx6q_set_lpm(enum mxc_cpu_pwr_mode mode); extern void imx6q_pm_init(void); extern void imx6q_clock_map_io(void); +extern void imx6q_ccm_pre_suspend(suspend_state_t state); +extern void imx6q_ccm_gpu_pre_suspend(void); +extern void imx6q_ccm_gpu_post_resume(void); +extern void imx6q_ccm_post_resume(void); #endif |