summaryrefslogtreecommitdiffstats
path: root/apps/codecs/mpa.c
diff options
context:
space:
mode:
authorTomasz Malesinski <tomal@rockbox.org>2006-11-26 18:31:41 +0000
committerTomasz Malesinski <tomal@rockbox.org>2006-11-26 18:31:41 +0000
commit80da8b141c4672ca4380d66094976b6342ed5071 (patch)
tree631e9edd537ae9983524622a9e1ec82e24957280 /apps/codecs/mpa.c
parent8ef3c8a342d41c2aa5e5d8370fd4e89d4d8d937e (diff)
downloadrockbox-80da8b141c4672ca4380d66094976b6342ed5071.tar.gz
rockbox-80da8b141c4672ca4380d66094976b6342ed5071.zip
FS#6357, patch 1: let iramcopy and bss share the same space in codecs and
plugins. Currently, in case of plugins using IRAM bss is cleared twice, once in the loader, once in PLUGIN_IRAM_INIT. For codecs, bss is cleared only during codec initialization. Also, removed double variables in codecs storing a pointer to codec_api. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11606 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/codecs/mpa.c')
-rw-r--r--apps/codecs/mpa.c21
1 files changed, 2 insertions, 19 deletions
diff --git a/apps/codecs/mpa.c b/apps/codecs/mpa.c
index 94947a9d1c..6e474c1abb 100644
--- a/apps/codecs/mpa.c
+++ b/apps/codecs/mpa.c
@@ -42,16 +42,6 @@ unsigned char mad_main_data[MAD_BUFFER_MDLEN] IBSS_ATTR;
int mpeg_latency[3] = { 0, 481, 529 };
int mpeg_framesize[3] = {384, 1152, 1152};
-#ifdef USE_IRAM
-extern char iramcopy[];
-extern char iramstart[];
-extern char iramend[];
-extern char iedata[];
-extern char iend[];
-#endif
-
-struct codec_api *ci;
-
void init_mad(void)
{
ci->memset(&stream, 0, sizeof(struct mad_stream));
@@ -69,7 +59,7 @@ void init_mad(void)
}
/* this is the codec entry point */
-enum codec_status codec_start(struct codec_api *api)
+enum codec_status codec_main(void)
{
int status;
size_t size;
@@ -83,14 +73,7 @@ enum codec_status codec_start(struct codec_api *api)
int framelength;
int padding = MAD_BUFFER_GUARD; /* to help mad decode the last frame */
- ci = api;
-
-#ifdef USE_IRAM
- ci->memcpy(iramstart, iramcopy, iramend - iramstart);
- ci->memset(iedata, 0, iend - iedata);
-#endif
-
- if (codec_init(api))
+ if (codec_init())
return CODEC_ERROR;
/* Create a decoder instance */