diff --git a/arch/arm/cpu/armv7m/cpu.c b/arch/arm/cpu/armv7m/cpu.c
index a424babde547042bbb97958cd8ca2ff50cef4e13..29597750f8bec11d49ac583f4f9ed013949277db 100644
--- a/arch/arm/cpu/armv7m/cpu.c
+++ b/arch/arm/cpu/armv7m/cpu.c
@@ -37,6 +37,9 @@ int cleanup_before_linux(void)
 	 * dcache flushing and disabling dcache */
 	invalidate_dcache_all();
 
+	icache_disable();
+	invalidate_icache_all();
+
 	return 0;
 }