diff options
Diffstat (limited to 'apps/codecs.h')
-rw-r--r-- | apps/codecs.h | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/apps/codecs.h b/apps/codecs.h index 652ae7451a..50bc36baa2 100644 --- a/apps/codecs.h +++ b/apps/codecs.h @@ -80,7 +80,7 @@ #define CODEC_ENC_MAGIC 0x52454E43 /* RENC */ /* increase this every time the api struct changes */ -#define CODEC_API_VERSION 18 +#define CODEC_API_VERSION 19 /* update this to latest version if a change to the api struct breaks backwards compatibility (and please take the opportunity to sort in any @@ -230,6 +230,10 @@ struct codec_api { /* new stuff at the end, sort into place next time the API gets incompatible */ +#ifdef CACHE_FUNCTIONS_AS_CALL + void (*flush_icache)(void); + void (*invalidate_icache)(void); +#endif }; /* codec header */ @@ -286,4 +290,22 @@ int codec_load_file(const char* codec, struct codec_api *api); /* defined by the codec */ enum codec_status codec_start(struct codec_api* rockbox); +#ifndef CACHE_FUNCTION_WRAPPERS + +#ifdef CACHE_FUNCTIONS_AS_CALL +#define CACHE_FUNCTION_WRAPPERS(api) \ + void flush_icache(void) \ + { \ + (api)->flush_icache(); \ + } \ + void invalidate_icache(void) \ + { \ + (api)->invalidate_icache(); \ + } +#else +#define CACHE_FUNCTION_WRAPPERS(api) +#endif /* CACHE_FUNCTIONS_AS_CALL */ + +#endif /* CACHE_FUNCTION_WRAPPERS */ + #endif |