aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLorenzo Pieralisi <lorenzo.pieralisi@arm.com>2013-02-05 11:09:16 +0000
committerJon Medhurst <tixy@linaro.org>2013-05-03 13:47:00 +0100
commit970395d745e01a4e9429228a2b2ed5f240628539 (patch)
tree6a457cb810f4fa0be08092cac0a8a6308394ac12
parent0943c1754d68ed11f10775b30d69ebe440813882 (diff)
ARM: TC2: disable GIC CPU IF on power down
On TC2 testchip the GIC CPU IF must be disabled before powering down a core since a pending IRQ might cause wfi completion and the processor would exit wfi state while power controller is taking action to reset or power up the CPU upon IRQ reception. This patch adds code that disables the GIC CPU IF in TC2 specific power API methods. Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
-rw-r--r--arch/arm/mach-vexpress/tc2_pm.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/arm/mach-vexpress/tc2_pm.c b/arch/arm/mach-vexpress/tc2_pm.c
index 4be2d73cb38..8be975e4b31 100644
--- a/arch/arm/mach-vexpress/tc2_pm.c
+++ b/arch/arm/mach-vexpress/tc2_pm.c
@@ -16,6 +16,7 @@
#include <linux/kernel.h>
#include <linux/spinlock.h>
#include <linux/errno.h>
+#include <linux/irqchip/arm-gic.h>
#include <asm/mcpm.h>
#include <asm/proc-fns.h>
@@ -116,6 +117,8 @@ static void tc2_pm_power_down(void)
} else
BUG();
+ gic_cpu_if_down();
+
if (last_man && __mcpm_outbound_enter_critical(cpu, cluster)) {
arch_spin_unlock(&tc2_pm_lock);