summaryrefslogtreecommitdiffstats
path: root/arch/arm/cpu/sm.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/cpu/sm.c')
-rw-r--r--arch/arm/cpu/sm.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/arm/cpu/sm.c b/arch/arm/cpu/sm.c
index cb0bac106b..6fad30adab 100644
--- a/arch/arm/cpu/sm.c
+++ b/arch/arm/cpu/sm.c
@@ -184,6 +184,9 @@ int armv7_secure_monitor_install(void)
return -EINVAL;
}
+ if (__boot_cpu_mode == HYP_MODE)
+ return 0;
+
mmuon = get_cr() & CR_M;
vbar = get_vbar();
@@ -259,6 +262,9 @@ static int sm_init(void)
bootm_secure_state_names,
ARRAY_SIZE(bootm_secure_state_names));
+ if (__boot_cpu_mode == HYP_MODE)
+ bootm_secure_state = ARM_STATE_HYP;
+
return 0;
}
device_initcall(sm_init); \ No newline at end of file