summaryrefslogtreecommitdiff
path: root/lib/rbcodec/codecs
diff options
context:
space:
mode:
Diffstat (limited to 'lib/rbcodec/codecs')
-rw-r--r--lib/rbcodec/codecs/libmad/libmad.make25
-rw-r--r--lib/rbcodec/codecs/libmad/mad_iram.h7
-rw-r--r--lib/rbcodec/codecs/mpa.c2
3 files changed, 4 insertions, 30 deletions
diff --git a/lib/rbcodec/codecs/libmad/libmad.make b/lib/rbcodec/codecs/libmad/libmad.make
index 6c50e1d201..479dd54773 100644
--- a/lib/rbcodec/codecs/libmad/libmad.make
+++ b/lib/rbcodec/codecs/libmad/libmad.make
@@ -7,16 +7,9 @@
7# $Id$ 7# $Id$
8# 8#
9 9
10# we need to build two different mad libraries
11# (one for codec, one for mpegplayer)
12# so a little trickery is necessary
13
14MADFLAGS = $(CODECFLAGS) -I$(RBCODECLIB_DIR)/codecs/libmad 10MADFLAGS = $(CODECFLAGS) -I$(RBCODECLIB_DIR)/codecs/libmad
15MADFLAGS += -UDEBUG -DNDEBUG -DHAVE_LIMITS_H -DHAVE_ASSERT_H 11MADFLAGS += -UDEBUG -DNDEBUG -DHAVE_LIMITS_H -DHAVE_ASSERT_H
16 12
17# MPEGplayer
18MPEGMADFLAGS = $(MADFLAGS) -DMPEGPLAYER
19
20# libmad 13# libmad
21MADLIB := $(CODECDIR)/libmad.a 14MADLIB := $(CODECDIR)/libmad.a
22MADLIB_SRC := $(call preprocess, $(RBCODECLIB_DIR)/codecs/libmad/SOURCES) 15MADLIB_SRC := $(call preprocess, $(RBCODECLIB_DIR)/codecs/libmad/SOURCES)
@@ -27,26 +20,8 @@ $(MADLIB): $(MADLIB_OBJ)
27 $(SILENT)$(shell rm -f $@) 20 $(SILENT)$(shell rm -f $@)
28 $(call PRINTS,AR $(@F))$(AR) rcs $@ $^ >/dev/null 21 $(call PRINTS,AR $(@F))$(AR) rcs $@ $^ >/dev/null
29 22
30# libmad-mpeg
31MPEGMADLIB := $(CODECDIR)/libmad-mpeg.a
32MPEGMADLIB_SRC := $(call preprocess, $(RBCODECLIB_DIR)/codecs/libmad/SOURCES)
33MPEGMADLIB_OBJ := $(addsuffix .o,$(basename $(subst $(RBCODECLIB_DIR)/codecs/libmad,$(RBCODEC_BLD)/codecs/libmad-mpeg,$(MPEGMADLIB_SRC))))
34
35$(MPEGMADLIB): $(MPEGMADLIB_OBJ)
36 $(call PRINTS,AR $(@F))$(AR) rcs $@ $^ >/dev/null
37
38# pattern rules 23# pattern rules
39 24
40$(CODECDIR)/libmad-mpeg/%.o : $(RBCODECLIB_DIR)/codecs/libmad/%.c
41 $(SILENT)mkdir -p $(dir $@)
42 $(call PRINTS,CC $(subst $(ROOTDIR)/,,$<)) \
43 $(CC) $(MPEGMADFLAGS) -c $< -o $@
44
45$(CODECDIR)/libmad-mpeg/%.o : $(RBCODECLIB_DIR)/codecs/libmad/%.S
46 $(SILENT)mkdir -p $(dir $@)
47 $(call PRINTS,CC $(subst $(ROOTDIR)/,,$<)) \
48 $(CC) $(MPEGMADFLAGS) -c $< -o $@
49
50$(CODECDIR)/libmad/%.o: $(RBCODECLIB_DIR)/codecs/libmad/%.c 25$(CODECDIR)/libmad/%.o: $(RBCODECLIB_DIR)/codecs/libmad/%.c
51 $(SILENT)mkdir -p $(dir $@) 26 $(SILENT)mkdir -p $(dir $@)
52 $(call PRINTS,CC $(subst $(ROOTDIR)/,,$<)) \ 27 $(call PRINTS,CC $(subst $(ROOTDIR)/,,$<)) \
diff --git a/lib/rbcodec/codecs/libmad/mad_iram.h b/lib/rbcodec/codecs/libmad/mad_iram.h
index ac0b64cca9..5a315c0381 100644
--- a/lib/rbcodec/codecs/libmad/mad_iram.h
+++ b/lib/rbcodec/codecs/libmad/mad_iram.h
@@ -35,10 +35,9 @@
35#define ICODE_ATTR_MPA_SYNTH 35#define ICODE_ATTR_MPA_SYNTH
36#define ICONST_ATTR_MPA_HUFFMAN 36#define ICONST_ATTR_MPA_HUFFMAN
37#else 37#else
38/* Code performs slower in IRAM on PP502x and there is no space in 38/* Code performs slower in IRAM on PP502x
39 mpegplayer on the PP5002. S3C2440 doesn't have any IRAM available for 39 S3C2440 doesn't have any IRAM available for codecs */
40 codecs */ 40#if defined(CPU_PP502x)
41#if defined(CPU_PP502x) || (CONFIG_CPU == PP5002 && defined(MPEGPLAYER))
42#define ICODE_SECTION_MPA_ARM .text 41#define ICODE_SECTION_MPA_ARM .text
43#define ICODE_ATTR_MPA_SYNTH 42#define ICODE_ATTR_MPA_SYNTH
44#else 43#else
diff --git a/lib/rbcodec/codecs/mpa.c b/lib/rbcodec/codecs/mpa.c
index d6bcc04910..db33f17c3b 100644
--- a/lib/rbcodec/codecs/mpa.c
+++ b/lib/rbcodec/codecs/mpa.c
@@ -26,7 +26,7 @@
26 26
27CODEC_HEADER 27CODEC_HEADER
28 28
29#if NUM_CORES > 1 && !defined(MPEGPLAYER) 29#if NUM_CORES > 1
30#define MPA_SYNTH_ON_COP 30#define MPA_SYNTH_ON_COP
31#endif 31#endif
32 32