arm64: Add support for secure monitor

Secure monitor runs at EL3 and is responsible for jumping to the payload at
specified EL and also to manage features like PSCI.
Adding basic implementation of secure monitor as a rmodule. Currently, it just
jumps to the the payload at current EL. Support for switching el and PSCI will
be added as separate patches.

CQ-DEPEND=CL:218300
BUG=chrome-os-partner:30785
BRANCH=None
TEST=Compiles succesfully and secure monitor loads and runs payload on ryu

Change-Id: I86d5e93583afac141ff61475bd05c8c82d17d926
Signed-off-by: Furquan Shaikh <furquan@google.com>
Reviewed-on: https://chromium-review.googlesource.com/214371
Tested-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Commit-Queue: Furquan Shaikh <furquan@chromium.org>
This commit is contained in:
Furquan Shaikh 2014-08-26 15:39:51 -07:00 committed by chrome-internal-fetch
commit 5e40a21115
11 changed files with 314 additions and 3 deletions

View file

@ -29,6 +29,10 @@ ramstage-$(CONFIG_CONSOLE_NE2K) += ne2k_console.c
ramstage-$(CONFIG_CONSOLE_CBMEM) += cbmem_console.c
ramstage-$(CONFIG_CONSOLE_SERIAL_IPQ806X) += uart_wrapper.c
secmon-$(CONFIG_ARCH_USE_SECURE_MONITOR) += vtxprintf.c
secmon-$(CONFIG_ARCH_USE_SECURE_MONITOR) += console.c
secmon-$(CONFIG_ARCH_USE_SECURE_MONITOR) += die.c
secmon-$(CONFIG_ARCH_USE_SECURE_MONITOR) += printk.c
$(obj)/console/console.ramstage.o : $(obj)/build.h
$(obj)/console/console.romstage.o : $(obj)/build.h