coreboot-kgpe-d16/src/arch/arm64
Aaron Durbin b777f3e3d1 arm64: psci: add node hierarchy
In order to properly support more arm64 SoCs PSCI needs
to handle the hierarchy of cpus/clusters within the SoC.
The nodes within PSCI are kept in a tree as well as
a depth-first ordered array of same tree. Additionally,
the PSCI states are now maintained in a hierachal manner.
OFF propogates up the tree as long as all siblings are
set to OFF. ON propogates up the tree until a node is
not already set to OFF.

The SoC provides the operations for determining how many
children are at a given affinity level. Lastly, the
secmon startup has been reworked in that all non-BSP CPUs
wait for instructions from the BSP.

BUG=chrome-os-partner:32136
BRANCH=None
TEST=Can still boot into kernel with SMP.

Change-Id: I036fabaf0f1cefa2841264c47e4092c75a2ff4dc
Signed-off-by: Patrick Georgi <pgeorgi@chromium.org>
Original-Commit-Id: 721d408cd110e1b56d38789177b740aa0e54ca33
Original-Change-Id: I520a9726e283bee7edcb514cda28ec1eb31b5ea0
Original-Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Original-Reviewed-on: https://chromium-review.googlesource.com/226480
Original-Reviewed-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-on: http://review.coreboot.org/9390
Tested-by: build bot (Jenkins)
Reviewed-by: Furquan Shaikh <furquan@google.com>
2015-04-09 14:40:13 +02:00
..
armv8 arm64: psci: add node hierarchy 2015-04-09 14:40:13 +02:00
include arm64: psci: add node hierarchy 2015-04-09 14:40:13 +02:00
boot.c arch/arm64/boot.c: Only return if condition is met 2015-04-06 02:21:26 +02:00
c_entry.c arm64: provide entry points for BSP and non-BSP 2015-03-28 07:05:35 +01:00
cpu-internal.h arm64: remove soc_secondary_cpu_init() 2015-03-27 08:05:22 +01:00
cpu.c arm64: split cpu.c 2015-03-28 07:05:34 +01:00
cpu_ramstage.c arm64: add mpidr field to cpu_info struct 2015-04-09 14:40:06 +02:00
div0.c coreboot arm64: Add support for arm64 into coreboot framework 2014-09-23 18:10:32 +02:00
eabi_compat.c coreboot arm64: Add support for arm64 into coreboot framework 2014-09-23 18:10:32 +02:00
id.S coreboot arm64: Add support for arm64 into coreboot framework 2014-09-23 18:10:32 +02:00
Kconfig kconfig: drop intermittend forwarder files 2015-04-07 17:40:28 +02:00
Makefile.inc arm64: add malloc support to secmon 2015-04-09 14:40:09 +02:00
spintable.c arm64: add spin table support 2015-03-28 07:05:13 +01:00
spintable_asm.S arm64: add spin table support 2015-03-28 07:05:13 +01:00
stage_entry.S arm64: provide entry points for BSP and non-BSP 2015-03-28 07:05:35 +01:00
stages.c arm64: use one stage_entry for all stages 2015-03-04 20:00:18 +01:00
tables.c CBMEM: Implement cbmem_run_init_hooks() stub 2015-01-27 22:41:23 +01:00
timestamp.c coreboot arm64: Add support for arm64 into coreboot framework 2014-09-23 18:10:32 +02:00
transition.c arm64: Add support for transition library 2015-03-28 07:04:44 +01:00
transition_asm.S arm64: exception handler registration 2015-03-28 07:05:34 +01:00