Merge tag 'modules-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git...
[sfrench/cifs-2.6.git] / arch / arm / include / asm / cpuidle.h
1 #ifndef __ASM_ARM_CPUIDLE_H
2 #define __ASM_ARM_CPUIDLE_H
3
4 #ifdef CONFIG_CPU_IDLE
5 extern int arm_cpuidle_simple_enter(struct cpuidle_device *dev,
6                 struct cpuidle_driver *drv, int index);
7 #else
8 static inline int arm_cpuidle_simple_enter(struct cpuidle_device *dev,
9                 struct cpuidle_driver *drv, int index) { return -ENODEV; }
10 #endif
11
12 /* Common ARM WFI state */
13 #define ARM_CPUIDLE_WFI_STATE_PWR(p) {\
14         .enter                  = arm_cpuidle_simple_enter,\
15         .exit_latency           = 1,\
16         .target_residency       = 1,\
17         .power_usage            = p,\
18         .flags                  = CPUIDLE_FLAG_TIME_VALID,\
19         .name                   = "WFI",\
20         .desc                   = "ARM WFI",\
21 }
22
23 /*
24  * in case power_specified == 1, give a default WFI power value needed
25  * by some governors
26  */
27 #define ARM_CPUIDLE_WFI_STATE ARM_CPUIDLE_WFI_STATE_PWR(UINT_MAX)
28
29 #endif