aboutsummaryrefslogtreecommitdiff
path: root/src/arch/arm64/armv8/secmon_loader.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/arch/arm64/armv8/secmon_loader.c')
-rw-r--r--src/arch/arm64/armv8/secmon_loader.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/arch/arm64/armv8/secmon_loader.c b/src/arch/arm64/armv8/secmon_loader.c
index 7a6e3ee738..d3eda185d1 100644
--- a/src/arch/arm64/armv8/secmon_loader.c
+++ b/src/arch/arm64/armv8/secmon_loader.c
@@ -22,6 +22,7 @@
* and parameter location for the rmodule.
*/
+#include <arch/cache.h>
#include <arch/lib_helpers.h>
#include <arch/secmon.h>
#include <arch/spintable.h>
@@ -106,6 +107,8 @@ static void secmon_start(void *arg)
scr |= SCR_NS;
raw_write_scr_el3(scr);
+ /* Invalidate instruction cache. Necessary for non-BSP. */
+ icache_invalidate_all();
entry(p);
}