diff options
Diffstat (limited to 'apps/codecs/libfaad/common.h')
-rw-r--r-- | apps/codecs/libfaad/common.h | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/apps/codecs/libfaad/common.h b/apps/codecs/libfaad/common.h index 01164e3746..59ce806e91 100644 --- a/apps/codecs/libfaad/common.h +++ b/apps/codecs/libfaad/common.h @@ -51,6 +51,25 @@ extern struct codec_api* ci; #define LOGF(...) #endif +#if (CONFIG_CPU == MCF5250) || defined(CPU_S5L870X) +/* Enough IRAM but performance suffers with ICODE_ATTR. */ +#define IBSS_ATTR_FAAD_LARGE_IRAM IBSS_ATTR +#define ICODE_ATTR_FAAD_LARGE_IRAM +#define ICONST_ATTR_FAAD_LARGE_IRAM ICONST_ATTR + +#elif (CONFIG_CPU == PP5022) || (CONFIG_CPU == PP5024) +/* Enough IRAM to move additional data and code to it. */ +#define IBSS_ATTR_FAAD_LARGE_IRAM IBSS_ATTR +#define ICODE_ATTR_FAAD_LARGE_IRAM ICODE_ATTR +#define ICONST_ATTR_FAAD_LARGE_IRAM ICONST_ATTR + +#else +/* Not enough IRAM available. */ +#define IBSS_ATTR_FAAD_LARGE_IRAM +#define ICODE_ATTR_FAAD_LARGE_IRAM +#define ICONST_ATTR_FAAD_LARGE_IRAM +#endif + #define INLINE __inline #if 0 //defined(_WIN32) && !defined(_WIN32_WCE) #define ALIGN __declspec(align(16)) @@ -71,7 +90,7 @@ extern struct codec_api* ci; /* #define USE_DOUBLE_PRECISION */ /* use fixed point reals */ #define FIXED_POINT -//#define BIG_IQ_TABLE +#define BIG_IQ_TABLE /* BIG_IQ_TABLE results in faster requantization */ /* Use if target platform has address generators with autoincrement */ //#define PREFER_POINTERS |