diff options
author | Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> | 2013-02-05 11:09:16 +0000 |
---|---|---|
committer | Jon Medhurst <tixy@linaro.org> | 2013-05-03 13:47:00 +0100 |
commit | 970395d745e01a4e9429228a2b2ed5f240628539 (patch) | |
tree | 6a457cb810f4fa0be08092cac0a8a6308394ac12 | |
parent | 0943c1754d68ed11f10775b30d69ebe440813882 (diff) | |
download | linaro-lsk-970395d745e01a4e9429228a2b2ed5f240628539.tar.gz |
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.c | 3 |
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); |