Thread (22 messages) 22 messages, 3 authors, 2013-10-17
STALE4667d REVIEWED: 1 (0M)

[PATCH v2 12/13] arm64: kernel: add CPU idle call

From: Daniel Lezcano <hidden>
Date: 2013-10-17 09:20:46
Also in: linux-pm

On 10/14/2013 01:03 PM, Lorenzo Pieralisi wrote:
When CPU idle is enabled, the architectural idle call should go through
the idle subsystem to allow CPUs to enter idle states defined
by the platform CPU idle back-end operations.

This patch, mirroring other archs behaviour, adds the CPU idle call to the
architectural arch_cpu_idle implementation for arm64.

Signed-off-by: Lorenzo Pieralisi <redacted>
Acked-by: Daniel Lezcano <redacted>
quoted hunk ↗ jump to hunk
---
  arch/arm64/kernel/process.c | 7 +++++--
  1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/arch/arm64/kernel/process.c b/arch/arm64/kernel/process.c
index de17c89..50491ec 100644
--- a/arch/arm64/kernel/process.c
+++ b/arch/arm64/kernel/process.c
@@ -33,6 +33,7 @@
  #include <linux/kallsyms.h>
  #include <linux/init.h>
  #include <linux/cpu.h>
+#include <linux/cpuidle.h>
  #include <linux/elfcore.h>
  #include <linux/pm.h>
  #include <linux/tick.h>
@@ -98,8 +99,10 @@ void arch_cpu_idle(void)
  	 * This should do all the clock switching and wait for interrupt
  	 * tricks
  	 */
-	cpu_do_idle();
-	local_irq_enable();
+	if (cpuidle_idle_call()) {
+		cpu_do_idle();
+		local_irq_enable();
+	}
  }

  #ifdef CONFIG_HOTPLUG_CPU

-- 
  <http://www.linaro.org/> Linaro.org ? Open source software for ARM SoCs

Follow Linaro:  <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help