summaryrefslogtreecommitdiff
path: root/arch/arm/cpu/armv7/Makefile
diff options
context:
space:
mode:
authorAndre Przywara <andre.przywara@linaro.org>2013-09-19 18:06:40 +0200
committerAlbert ARIBAUD <albert.u.boot@aribaud.net>2013-10-03 21:27:11 +0200
commit45b940d6f9a9d4989452ea67480e299bfa51ee19 (patch)
tree636e0c5d2d8b7bfce8b7927e56044e0b95862806 /arch/arm/cpu/armv7/Makefile
parentd75ba503a972df09784f1a332ba356ef8b42a0a6 (diff)
downloadu-boot-imx-45b940d6f9a9d4989452ea67480e299bfa51ee19.zip
u-boot-imx-45b940d6f9a9d4989452ea67480e299bfa51ee19.tar.gz
u-boot-imx-45b940d6f9a9d4989452ea67480e299bfa51ee19.tar.bz2
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>
Diffstat (limited to 'arch/arm/cpu/armv7/Makefile')
-rw-r--r--arch/arm/cpu/armv7/Makefile4
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/arm/cpu/armv7/Makefile b/arch/arm/cpu/armv7/Makefile
index b723e22..3466c7a 100644
--- a/arch/arm/cpu/armv7/Makefile
+++ b/arch/arm/cpu/armv7/Makefile
@@ -20,6 +20,10 @@ ifneq ($(CONFIG_AM43XX)$(CONFIG_AM33XX)$(CONFIG_OMAP44XX)$(CONFIG_OMAP54XX)$(CON
SOBJS += lowlevel_init.o
endif
+ifneq ($(CONFIG_ARMV7_NONSEC),)
+SOBJS += nonsec_virt.o
+endif
+
SRCS := $(START:.o=.S) $(COBJS:.o=.c)
OBJS := $(addprefix $(obj),$(COBJS) $(SOBJS))
START := $(addprefix $(obj),$(START))