diff options
author | Rafaël Carré <rafael.carre@gmail.com> | 2008-12-04 22:27:48 +0000 |
---|---|---|
committer | Rafaël Carré <rafael.carre@gmail.com> | 2008-12-04 22:27:48 +0000 |
commit | 6aa807d32170eb463ede46397cb43c1c4088cbe9 (patch) | |
tree | bad103ff445aa938ca8e579ab72ccf513122749c /apps/plugins/plugin.lds | |
parent | 8ea82ff4a8b03141c7bc0491dda351dc0645ccd8 (diff) | |
download | rockbox-6aa807d32170eb463ede46397cb43c1c4088cbe9.tar.gz rockbox-6aa807d32170eb463ede46397cb43c1c4088cbe9.zip |
Sansa AMS: PCM driver (FS#9592)
Note that on low memory targets (Clip/m200v4 tested) you will encounter
random crashes. Applying FS#9332 seems to help a lot.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19342 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/plugins/plugin.lds')
-rw-r--r-- | apps/plugins/plugin.lds | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/apps/plugins/plugin.lds b/apps/plugins/plugin.lds index 52ec93833a..0c5c1e87d3 100644 --- a/apps/plugins/plugin.lds +++ b/apps/plugins/plugin.lds | |||
@@ -37,6 +37,8 @@ OUTPUT_FORMAT(elf32-sh) | |||
37 | #include "imx31l.h" | 37 | #include "imx31l.h" |
38 | /* Reserve 1mb for LCD buffer/TTB as in app.lds */ | 38 | /* Reserve 1mb for LCD buffer/TTB as in app.lds */ |
39 | #define DRAMSIZE (MEMORYSIZE * 0x100000 - 0x100000) - PLUGIN_BUFFER_SIZE - STUBOFFSET - CODEC_SIZE | 39 | #define DRAMSIZE (MEMORYSIZE * 0x100000 - 0x100000) - PLUGIN_BUFFER_SIZE - STUBOFFSET - CODEC_SIZE |
40 | #elif CONFIG_CPU==AS3525 && MEMORYSIZE <= 2 | ||
41 | #define DRAMSIZE (MEMORYSIZE * 0x100000) - PLUGIN_BUFFER_SIZE - STUBOFFSET | ||
40 | #else | 42 | #else |
41 | #define DRAMSIZE (MEMORYSIZE * 0x100000) - PLUGIN_BUFFER_SIZE - STUBOFFSET - CODEC_SIZE | 43 | #define DRAMSIZE (MEMORYSIZE * 0x100000) - PLUGIN_BUFFER_SIZE - STUBOFFSET - CODEC_SIZE |
42 | #endif | 44 | #endif |
@@ -87,17 +89,29 @@ OUTPUT_FORMAT(elf32-sh) | |||
87 | #define IRAM DRAM | 89 | #define IRAM DRAM |
88 | #define IRAMSIZE 0 | 90 | #define IRAMSIZE 0 |
89 | #elif CONFIG_CPU==AS3525 | 91 | #elif CONFIG_CPU==AS3525 |
92 | #if MEMORYSIZE <= 2 | ||
93 | #define IRAMSIZE 0 /* simulates no IRAM since codec is already entirely in IRAM */ | ||
94 | #define CODEC_ORIGIN (0x50000 - CODEC_SIZE) | ||
95 | #define PLUGIN_ORIGIN (DRAMORIG + DRAMSIZE) | ||
96 | #else | ||
90 | #define IRAMORIG 0x0 | 97 | #define IRAMORIG 0x0 |
91 | #define IRAMSIZE 0x50000 | 98 | #define IRAMSIZE 0x50000 |
99 | #endif | ||
92 | #define DRAMORIG 0x30000000 | 100 | #define DRAMORIG 0x30000000 |
101 | |||
93 | #else | 102 | #else |
94 | #define DRAMORIG 0x09000000 + STUBOFFSET | 103 | #define DRAMORIG 0x09000000 + STUBOFFSET |
95 | #endif | 104 | #endif |
96 | 105 | ||
97 | #define PLUGIN_LENGTH PLUGIN_BUFFER_SIZE | 106 | #define PLUGIN_LENGTH PLUGIN_BUFFER_SIZE |
98 | 107 | ||
108 | #ifndef CODEC_ORIGIN /* targets can specify another origin */ | ||
99 | #define CODEC_ORIGIN (DRAMORIG + (DRAMSIZE)) | 109 | #define CODEC_ORIGIN (DRAMORIG + (DRAMSIZE)) |
110 | #endif | ||
111 | |||
112 | #ifndef PLUGIN_ORIGIN /* targets can specify another origin */ | ||
100 | #define PLUGIN_ORIGIN (CODEC_ORIGIN + CODEC_SIZE) | 113 | #define PLUGIN_ORIGIN (CODEC_ORIGIN + CODEC_SIZE) |
114 | #endif | ||
101 | 115 | ||
102 | #ifdef CODEC | 116 | #ifdef CODEC |
103 | #define THIS_LENGTH CODEC_SIZE | 117 | #define THIS_LENGTH CODEC_SIZE |