forked from len0rd/rockbox
Flush-out cleared sections on dual core targets when loading plugins and codecs.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14172 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
7f85b5b907
commit
8edfff979b
2 changed files with 8 additions and 0 deletions
|
|
@ -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);
|
api->memset(plugin_bss_start, 0, plugin_end_addr - plugin_bss_start);
|
||||||
#endif
|
#endif
|
||||||
ci = api;
|
ci = api;
|
||||||
|
#if NUM_CORES > 1
|
||||||
|
/* writeback cleared iedata and bss areas */
|
||||||
|
flush_icache();
|
||||||
|
#endif
|
||||||
return codec_main();
|
return codec_main();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -718,6 +718,10 @@ void plugin_iram_init(char *iramstart, char *iramcopy, size_t iram_size,
|
||||||
memcpy(iramstart, iramcopy, iram_size);
|
memcpy(iramstart, iramcopy, iram_size);
|
||||||
memset(iedata, 0, iedata_size);
|
memset(iedata, 0, iedata_size);
|
||||||
memset(iramcopy, 0, iram_size);
|
memset(iramcopy, 0, iram_size);
|
||||||
|
#if NUM_CORES > 1
|
||||||
|
/* writeback cleared iedata and iramcopy areas */
|
||||||
|
flush_icache();
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
#endif /* IRAM_STEAL */
|
#endif /* IRAM_STEAL */
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue