summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
Diffstat (limited to 'apps')
-rw-r--r--apps/codecs/codec_crt0.c4
-rw-r--r--apps/plugin.c4
2 files changed, 8 insertions, 0 deletions
diff --git a/apps/codecs/codec_crt0.c b/apps/codecs/codec_crt0.c
index 96dc862..c9c2cba 100644
--- a/apps/codecs/codec_crt0.c
+++ b/apps/codecs/codec_crt0.c
@@ -42,5 +42,9 @@ enum codec_status codec_start(struct codec_api *api)
api->memset(plugin_bss_start, 0, plugin_end_addr - plugin_bss_start);
#endif
ci = api;
+#if NUM_CORES > 1
+ /* writeback cleared iedata and bss areas */
+ flush_icache();
+#endif
return codec_main();
}
diff --git a/apps/plugin.c b/apps/plugin.c
index fee3a51..5028bfd 100644
--- a/apps/plugin.c
+++ b/apps/plugin.c
@@ -718,6 +718,10 @@ void plugin_iram_init(char *iramstart, char *iramcopy, size_t iram_size,
memcpy(iramstart, iramcopy, iram_size);
memset(iedata, 0, iedata_size);
memset(iramcopy, 0, iram_size);
+#if NUM_CORES > 1
+ /* writeback cleared iedata and iramcopy areas */
+ flush_icache();
+#endif
}
#endif /* IRAM_STEAL */