coreboot-kgpe-d16/src/arch/arm64
Aaron Durbin 93eea8822d arm64: Provide secmon trampoline for restart
If an exception is taken that the secmon won't return
to, there needs to be way to reset that cpu's state
w.r.t. stack usage. Therefore, provide secmon_trampoline
which will reinitialize the exception stack and SP_EL0
and start executing with SP_EL0 like the initial state
of the secmon entry.

BUG=chrome-os-partner:30785
BRANCH=None
TEST=Built and booted to kernel. Also tested when PSCI
     is employed in the kernel.

Change-Id: Ie9f5bbe715dcbcf8b67ea40f9a3a5088ac7aa2ad
Signed-off-by: Patrick Georgi <pgeorgi@chromium.org>
Original-Commit-Id: f1f546ee3e9eca93baaa1ae0437351205bf548a5
Original-Change-Id: Ia3da75e1fa0251c8ea30eb0b0523c8a51c03b917
Original-Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Original-Reviewed-on: https://chromium-review.googlesource.com/218922
Original-Reviewed-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-on: http://review.coreboot.org/9096
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
Tested-by: build bot (Jenkins)
2015-03-28 08:44:48 +01:00
..
armv8 arm64: Provide secmon trampoline for restart 2015-03-28 08:44:48 +01:00
include arm64: add smc layer to secmon 2015-03-28 07:05:37 +01:00
boot.c arm64: add spin table support 2015-03-28 07:05:13 +01:00
bootblock.ld arm64: use one stage_entry for all stages 2015-03-04 20:00:18 +01: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: split cpu.c 2015-03-28 07:05:34 +01: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 arm64: add spin table support 2015-03-28 07:05:13 +01:00
Makefile.inc arm64: split cpu.c 2015-03-28 07:05:34 +01:00
ramstage.ld arm64: remove _stack and _estack symbols in linker script 2015-03-27 08:04:32 +01:00
romstage.ld arm64: use one stage_entry for all stages 2015-03-04 20:00:18 +01: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