ARM: add secure monitor handler to switch to non-secure state
authorAndre Przywara <andre.przywara@linaro.org>
Thu, 19 Sep 2013 16:06:40 +0000 (18:06 +0200)
committerAlbert ARIBAUD <albert.u.boot@aribaud.net>
Thu, 3 Oct 2013 19:27:11 +0000 (21:27 +0200)
commit45b940d6f9a9d4989452ea67480e299bfa51ee19
tree636e0c5d2d8b7bfce8b7927e56044e0b95862806
parentd75ba503a972df09784f1a332ba356ef8b42a0a6
ARM: add secure monitor handler to switch to non-secure state

A prerequisite for using virtualization is to be in HYP mode, which
requires the CPU to be in non-secure state first.
Add a new file in arch/arm/cpu/armv7 to hold a monitor handler routine
which switches the CPU to non-secure state by setting the NS and
associated bits.
According to the ARM architecture reference manual this should not be
done in SVC mode, so we have to setup a SMC handler for this.
We create a new vector table to avoid interference with other boards.
The MVBAR register will be programmed later just before the smc call.

Signed-off-by: Andre Przywara <andre.przywara@linaro.org>
arch/arm/cpu/armv7/Makefile
arch/arm/cpu/armv7/nonsec_virt.S [new file with mode: 0644]