linux/arch/arm/mach-vexpress
Lorenzo Pieralisi 9ee2ee0f05 ARM: vexpress: tc2: disable GIC CPU IF in tc2_pm_suspend
To prevent cores from exiting wfi when they are about to be shut down
the GIC CPU IF must be disabled so that the GIC CPU IF IRQ output line
is not asserted to the cores. wfi completion must be prevented since,
in absence of coordinating HW logic, if the power controller receives
a standbywfi signal but in the meantime the processor restarts executing
owing to a pending IRQ, the core might be reset when running in a
non-quiescent state (eg with pending load/store transactions)

Raw GIC distributor IRQ signals are routed to the power controller, that
is capable of taking core out of reset on pending IRQs even if their GIC
CPU IF is disabled, thus keeping the normal wfi behaviour.

GIC CPU IF is restored upon CPU wake-up by the respective MCPM API
consumers (ie CPU idle driver and suspend to RAM thread).

Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2013-08-28 11:28:47 -07:00
..
include/mach ARM: vexpress: Start using new Versatile Express infrastructure 2012-11-05 17:09:51 +00:00
core.h ARM: vexpress: Select multi-cluster SMP operation if required 2013-05-29 15:50:35 -04:00
ct-ca9x4.c irqchip: Move ARM gic.h to include/linux/irqchip/arm-gic.h 2013-01-12 10:47:32 -06:00
dcscb.c ARM: vexpress/dcscb: fix cache disabling sequences 2013-07-22 12:26:09 -04:00
dcscb_setup.S ARM: vexpress/dcscb: handle platform coherency exit/setup and CCI 2013-05-29 15:50:35 -04:00
hotplug.c ARM: cpu hotplug: remove majority of cache flushing from platforms 2013-04-18 20:08:04 +01:00
Kconfig ARM: vexpress/TC2: basic PM support 2013-08-07 14:55:52 +01:00
Makefile ARM: vexpress/TC2: basic PM support 2013-08-07 14:55:52 +01:00
platsmp.c ARM: vexpress: Select multi-cluster SMP operation if required 2013-05-29 15:50:35 -04:00
spc.c ARM: vexpress/TC2: add Serial Power Controller (SPC) support 2013-08-07 14:55:24 +01:00
spc.h ARM: vexpress/TC2: add Serial Power Controller (SPC) support 2013-08-07 14:55:24 +01:00
tc2_pm.c ARM: vexpress: tc2: disable GIC CPU IF in tc2_pm_suspend 2013-08-28 11:28:47 -07:00
v2m.c ARM SoC specific changes 2013-07-02 13:43:38 -07:00