diff options
author | Deepthi Dharwar <deepthi@linux.vnet.ibm.com> | 2011-11-29 21:46:55 -0500 |
---|---|---|
committer | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2011-12-07 21:57:20 -0500 |
commit | e179816ce60033ce560b28e01bc555ed5116cbe9 (patch) | |
tree | b41c3685a4ee78782363e374e481b3a90cfc8004 /include | |
parent | 707827f3387d9b260d50fa697885a4042cea3bf4 (diff) |
powerpc/cpuidle: Enable cpuidle and directly call cpuidle_idle_call() for pSeries
This patch enables cpuidle for pSeries and pSeries_idle is
directly called from the idle loop. As a result of pSeries_idle, cpuidle
driver registered with cpuidle subsystem comes into action. On
failure of loading of the driver or cpuidle framework default idle
is executed as part of the function. This patch
also removes the routines pseries_shared_idle_sleep and
pseries_dedicated_idle_sleep as they are now implemented as part of
pseries_idle cpuidle driver.
Signed-off-by: Deepthi Dharwar <deepthi@linux.vnet.ibm.com>
Signed-off-by: Trinabh Gupta <g.trinabh@gmail.com>
Signed-off-by: Arun R Bharadwaj <arun.r.bharadwaj@gmail.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/cpuidle.h | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/include/linux/cpuidle.h b/include/linux/cpuidle.h index 7408af843b8a..23f81de51829 100644 --- a/include/linux/cpuidle.h +++ b/include/linux/cpuidle.h | |||
@@ -130,7 +130,6 @@ struct cpuidle_driver { | |||
130 | #ifdef CONFIG_CPU_IDLE | 130 | #ifdef CONFIG_CPU_IDLE |
131 | extern void disable_cpuidle(void); | 131 | extern void disable_cpuidle(void); |
132 | extern int cpuidle_idle_call(void); | 132 | extern int cpuidle_idle_call(void); |
133 | |||
134 | extern int cpuidle_register_driver(struct cpuidle_driver *drv); | 133 | extern int cpuidle_register_driver(struct cpuidle_driver *drv); |
135 | struct cpuidle_driver *cpuidle_get_driver(void); | 134 | struct cpuidle_driver *cpuidle_get_driver(void); |
136 | extern void cpuidle_unregister_driver(struct cpuidle_driver *drv); | 135 | extern void cpuidle_unregister_driver(struct cpuidle_driver *drv); |
@@ -145,7 +144,6 @@ extern void cpuidle_disable_device(struct cpuidle_device *dev); | |||
145 | #else | 144 | #else |
146 | static inline void disable_cpuidle(void) { } | 145 | static inline void disable_cpuidle(void) { } |
147 | static inline int cpuidle_idle_call(void) { return -ENODEV; } | 146 | static inline int cpuidle_idle_call(void) { return -ENODEV; } |
148 | |||
149 | static inline int cpuidle_register_driver(struct cpuidle_driver *drv) | 147 | static inline int cpuidle_register_driver(struct cpuidle_driver *drv) |
150 | {return -ENODEV; } | 148 | {return -ENODEV; } |
151 | static inline struct cpuidle_driver *cpuidle_get_driver(void) {return NULL; } | 149 | static inline struct cpuidle_driver *cpuidle_get_driver(void) {return NULL; } |