Improved bitrev with approach suggested by Jens Arnold, gives 0.5%-1% speedup for...
[kugel-rb.git] / apps / codecs / libtremor / config-tremor.h
blobeb9429e3194311e726205c98c30eb221ba2d4b8e
1 #ifndef _CONFIG_TREMOR_H
2 #define _CONFIG_TREMOR_H
4 #include "codeclib.h"
6 #ifdef CPU_ARM
7 #define _ARM_ASSEM_
8 #endif
10 #ifdef ROCKBOX_BIG_ENDIAN
11 #define BIG_ENDIAN 1
12 #define LITTLE_ENDIAN 0
13 #define BYTE_ORDER BIG_ENDIAN
14 #else
15 #define BYTE_ORDER LITTLE_ENDIAN
16 #define LITTLE_ENDIAN 1
17 #define BIG_ENDIAN 0
18 #endif
20 #ifndef ICODE_ATTR_TREMOR_MDCT
21 #define ICODE_ATTR_TREMOR_MDCT ICODE_ATTR
22 #endif
24 /* Workaround for gcc bug where all static functions are called with short
25 calls */
26 #if !defined(ICODE_ATTR_TREMOR_NOT_MDCT) && (CONFIG_CPU==S5L8701)
27 #define STATICIRAM_NOT_MDCT
28 #else
29 #define STATICIRAM_NOT_MDCT static
30 #endif
32 #ifndef ICODE_ATTR_TREMOR_NOT_MDCT
33 #define ICODE_ATTR_TREMOR_NOT_MDCT ICODE_ATTR
34 #endif
36 /* Define CPU of large IRAM (MCF5250) */
37 #if (CONFIG_CPU == MCF5250)
38 /* PCM_BUFFER : 32768 Byte (4096*2*4) *
39 * WINDOW_LOOKUP : 4608 Byte (128*4 + 1024*4) *
40 * TOTAL : 37376 */
41 #define IRAM_IBSS_SIZE 37376
43 /* Define CPU of large IRAM (PP5022/5024) */
44 #elif (CONFIG_CPU == PP5022) || (CONFIG_CPU == PP5024) || defined(CPU_S5L870X)
45 /* PCM_BUFFER : 32768 byte (4096*2*4 or 2048*4*4) *
46 * WINDOW_LOOKUP : 9216 Byte (256*4 + 2048*4) *
47 * TOTAL : 41984 */
48 #define IRAM_IBSS_SIZE 41984
50 /* Define CPU of Normal IRAM (96KB) (and SIM also) */
51 #else
52 /* PCM_BUFFER : 16384 Byte (2048*2*4) *
53 * WINDOW_LOOKUP : 4608 Byte (128*4 + 1024*4) *
54 * TOTAL : 20992 */
55 #define IRAM_IBSS_SIZE 20992
56 #endif
58 /* max 2 channels */
59 #define CHANNELS 2
61 // #define _LOW_ACCURACY_
63 #endif /* _CONFIG_TREMOR_H */