summaryrefslogtreecommitdiff
path: root/apps/codecs/libmusepack/musepack.h
diff options
context:
space:
mode:
authorAndree Buschmann <AndreeBuschmann@t-online.de>2008-05-14 19:49:01 +0000
committerAndree Buschmann <AndreeBuschmann@t-online.de>2008-05-14 19:49:01 +0000
commit14698f5a20fe67606df35ccf279b02c81f4959d5 (patch)
tree26d7d06a500b7fd82003401333fd4ca06ac83fba /apps/codecs/libmusepack/musepack.h
parent77087eba4ec1e35a7a0e0804cbb167118abac2ea (diff)
downloadrockbox-14698f5a20fe67606df35ccf279b02c81f4959d5.zip
rockbox-14698f5a20fe67606df35ccf279b02c81f4959d5.tar.gz
rockbox-14698f5a20fe67606df35ccf279b02c81f4959d5.tar.bz2
rockbox-14698f5a20fe67606df35ccf279b02c81f4959d5.tar.xz
Musepack performance optimization for PP5022/PP5024/MCF5250 targets. Use IRAM for internal sample buffers and lookup tables. Speeds up decoding by ~7% on PP5022/PP5024 (Sansa: c200, e200 + iPod mini2G, nano, video) and by ~27% on MCF5250 (iaudio m5, x5).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17507 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/codecs/libmusepack/musepack.h')
-rw-r--r--apps/codecs/libmusepack/musepack.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/apps/codecs/libmusepack/musepack.h b/apps/codecs/libmusepack/musepack.h
index 8233f21..5d1ad0d 100644
--- a/apps/codecs/libmusepack/musepack.h
+++ b/apps/codecs/libmusepack/musepack.h
@@ -56,6 +56,16 @@ extern "C" {
#define IBSS_ATTR_MPC_SAMPLE_BUF IBSS_ATTR
#endif
+#ifndef IBSS_ATTR_MPC_LARGE_IRAM
+#if (CONFIG_CPU == PP5022) || (CONFIG_CPU == PP5024) || (CONFIG_CPU == MCF5250)
+/* PP5022/24 and MCF5250 have 128KB of IRAM */
+#define IBSS_ATTR_MPC_LARGE_IRAM IBSS_ATTR
+#else
+/* other PP's and MCF5249 have 96KB of IRAM */
+#define IBSS_ATTR_MPC_LARGE_IRAM
+#endif
+#endif
+
#ifdef ROCKBOX_LITTLE_ENDIAN
#define MPC_LITTLE_ENDIAN
#endif