linux/arch/arm64
Lorenzo Pieralisi 18910ab0d9 arm64: add PSCI CPU_SUSPEND based cpu_suspend support
This patch implements the cpu_suspend cpu operations method through
the PSCI CPU SUSPEND API. The PSCI implementation translates the idle state
index passed by the cpu_suspend core call into a valid PSCI state according to
the PSCI states initialized at boot through the cpu_init_idle() CPU
operations hook.

The PSCI CPU suspend operation hook checks if the PSCI state is a
standby state. If it is, it calls the PSCI suspend implementation
straight away, without saving any context. If the state is a power
down state the kernel calls the __cpu_suspend API (that saves the CPU
context) and passed the PSCI suspend finisher as a parameter so that PSCI
can be called by the __cpu_suspend implementation after saving and flushing
the context as last function before power down.

For power down states, entry point is set to cpu_resume physical address,
that represents the default kernel execution address following a CPU reset.

Reviewed-by: Ashwin Chaugule <ashwin.chaugule@linaro.org>
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
2014-09-12 10:48:56 +01:00
..
boot dts: Add bindings for APM X-Gene SoC ethernet driver 2014-08-11 11:50:33 -07:00
configs arm64: configs: Enable X-Gene SATA and ethernet in defconfig 2014-08-19 19:26:09 +01:00
crypto arm64/crypto: remove redundant update of data 2014-08-26 11:42:22 +01:00
include arm64: kernel: introduce cpu_init_idle CPU operation 2014-09-12 10:48:55 +01:00
kernel arm64: add PSCI CPU_SUSPEND based cpu_suspend support 2014-09-12 10:48:56 +01:00
kvm arm/arm64: KVM: Complete WFI/WFE instructions 2014-08-29 11:53:53 +02:00
lib arm64: lib: Implement optimized string length routines 2014-05-23 15:17:12 +01:00
mm arm64: ignore DT memreserve entries when booting in UEFI mode 2014-08-19 20:22:03 +01:00
xen arm: xen: implement multicall hypercall support. 2014-04-24 13:09:46 +01:00
Kconfig lib/scatterlist: make ARCH_HAS_SG_CHAIN an actual Kconfig 2014-08-08 15:57:26 -07:00
Kconfig.debug arm64: Enable TEXT_OFFSET fuzzing 2014-07-10 12:36:58 +01:00
Makefile arm64: align randomized TEXT_OFFSET on 4 kB boundary 2014-08-19 19:26:09 +01:00