diff options
Diffstat (limited to 'apps')
-rw-r--r-- | apps/codecs.c | 2 | ||||
-rw-r--r-- | apps/codecs.h | 6 | ||||
-rw-r--r-- | apps/codecs/codec_crt0.c | 8 |
3 files changed, 6 insertions, 10 deletions
diff --git a/apps/codecs.c b/apps/codecs.c index 25cc659e42..35f6363986 100644 --- a/apps/codecs.c +++ b/apps/codecs.c @@ -118,10 +118,8 @@ struct codec_api ci = { semaphore_release, #endif -#if NUM_CORES > 1 cpucache_flush, cpucache_invalidate, -#endif /* strings and memory */ strcpy, diff --git a/apps/codecs.h b/apps/codecs.h index 520aaeebc7..f94c81ab20 100644 --- a/apps/codecs.h +++ b/apps/codecs.h @@ -78,12 +78,12 @@ #define CODEC_ENC_MAGIC 0x52454E43 /* RENC */ /* increase this every time the api struct changes */ -#define CODEC_API_VERSION 34 +#define CODEC_API_VERSION 35 /* update this to latest version if a change to the api struct breaks backwards compatibility (and please take the opportunity to sort in any new function which are "waiting" at the end of the function table) */ -#define CODEC_MIN_API_VERSION 34 +#define CODEC_MIN_API_VERSION 35 /* codec return codes */ enum codec_status { @@ -176,10 +176,8 @@ struct codec_api { void (*semaphore_release)(struct semaphore *s); #endif /* NUM_CORES */ -#if NUM_CORES > 1 void (*cpucache_flush)(void); void (*cpucache_invalidate)(void); -#endif /* strings and memory */ char* (*strcpy)(char *dst, const char *src); diff --git a/apps/codecs/codec_crt0.c b/apps/codecs/codec_crt0.c index c680030fee..fdb79092f4 100644 --- a/apps/codecs/codec_crt0.c +++ b/apps/codecs/codec_crt0.c @@ -47,10 +47,10 @@ enum codec_status codec_start(void) #endif ci->memset(plugin_bss_start, 0, plugin_end_addr - plugin_bss_start); #endif -#if NUM_CORES > 1 - /* writeback cleared iedata and bss areas */ - ci->cpucache_flush(); -#endif + /* writeback cleared iedata and bss areas, invalidate icache for + * copied code */ + ci->cpucache_invalidate(); + return codec_main(); } |