summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--apps/codecs/codec_crt0.c4
-rw-r--r--apps/plugins/plugin_crt0.c4
2 files changed, 8 insertions, 0 deletions
diff --git a/apps/codecs/codec_crt0.c b/apps/codecs/codec_crt0.c
index 184da74c8f..cf14e460ec 100644
--- a/apps/codecs/codec_crt0.c
+++ b/apps/codecs/codec_crt0.c
@@ -53,6 +53,10 @@ enum codec_status codec_start(void)
53 } 53 }
54#endif /* PLUGIN_USE_IRAM */ 54#endif /* PLUGIN_USE_IRAM */
55 ci->memset(plugin_bss_start, 0, plugin_end_addr - plugin_bss_start); 55 ci->memset(plugin_bss_start, 0, plugin_end_addr - plugin_bss_start);
56 /* Some parts of bss may be used via a no-cache alias (at least
57 * portalplayer has this). If we don't clear the cache, those aliases
58 * may read garbage */
59 ci->cpucache_invalidate();
56#endif 60#endif
57 61
58 return codec_main(); 62 return codec_main();
diff --git a/apps/plugins/plugin_crt0.c b/apps/plugins/plugin_crt0.c
index 1db9d6a81a..d86c5c367c 100644
--- a/apps/plugins/plugin_crt0.c
+++ b/apps/plugins/plugin_crt0.c
@@ -90,6 +90,10 @@ enum plugin_status plugin__start(const void *param)
90 90
91 /* zero out the bss section */ 91 /* zero out the bss section */
92 rb->memset(plugin_bss_start, 0, plugin_end_addr - plugin_bss_start); 92 rb->memset(plugin_bss_start, 0, plugin_end_addr - plugin_bss_start);
93 /* Some parts of bss may be used via a no-cache alias (at least
94 * portalplayer has this). If we don't clear the cache, those aliases
95 * may read garbage */
96 rb->cpucache_invalidate();
93#endif 97#endif
94 98
95 /* we come back here if exit() was called or the plugin returned normally */ 99 /* we come back here if exit() was called or the plugin returned normally */