diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2012-05-07 13:59:48 -0400 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2012-05-08 06:35:06 -0400 |
commit | 4a1625133d4faaefcec0dc175941f49b186918d9 (patch) | |
tree | abefd7c7b1332ae9ef6a10ffd77790b2a01aa98e | |
parent | f37f435f33717dcf15fd4bb422da739da7fc2052 (diff) |
cpuidle: Use kick_all_cpus_sync()
kick_all_cpus_sync() is the core implementation of cpu_idle_wait()
which is copied all over the arch code.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/20120507175652.119842173@linutronix.de
-rw-r--r-- | drivers/cpuidle/cpuidle.c | 13 |
1 files changed, 1 insertions, 12 deletions
diff --git a/drivers/cpuidle/cpuidle.c b/drivers/cpuidle/cpuidle.c index 2f0083a51a9a..d90519cec880 100644 --- a/drivers/cpuidle/cpuidle.c +++ b/drivers/cpuidle/cpuidle.c | |||
@@ -40,17 +40,6 @@ void disable_cpuidle(void) | |||
40 | off = 1; | 40 | off = 1; |
41 | } | 41 | } |
42 | 42 | ||
43 | #if defined(CONFIG_ARCH_HAS_CPU_IDLE_WAIT) | ||
44 | static void cpuidle_kick_cpus(void) | ||
45 | { | ||
46 | cpu_idle_wait(); | ||
47 | } | ||
48 | #elif defined(CONFIG_SMP) | ||
49 | # error "Arch needs cpu_idle_wait() equivalent here" | ||
50 | #else /* !CONFIG_ARCH_HAS_CPU_IDLE_WAIT && !CONFIG_SMP */ | ||
51 | static void cpuidle_kick_cpus(void) {} | ||
52 | #endif | ||
53 | |||
54 | static int __cpuidle_register_device(struct cpuidle_device *dev); | 43 | static int __cpuidle_register_device(struct cpuidle_device *dev); |
55 | 44 | ||
56 | static inline int cpuidle_enter(struct cpuidle_device *dev, | 45 | static inline int cpuidle_enter(struct cpuidle_device *dev, |
@@ -186,7 +175,7 @@ void cpuidle_uninstall_idle_handler(void) | |||
186 | { | 175 | { |
187 | if (enabled_devices) { | 176 | if (enabled_devices) { |
188 | initialized = 0; | 177 | initialized = 0; |
189 | cpuidle_kick_cpus(); | 178 | kick_all_cpus_sync(); |
190 | } | 179 | } |
191 | } | 180 | } |
192 | 181 | ||