diff options
| author | Michael Sevakis <jethead71@rockbox.org> | 2008-05-10 22:03:45 +0000 |
|---|---|---|
| committer | Michael Sevakis <jethead71@rockbox.org> | 2008-05-10 22:03:45 +0000 |
| commit | 209aa8eda5b5c7cecde65885e6beaf37c92ba622 (patch) | |
| tree | 6beddeac6d9714732931b211c2d4cd84ce5db920 /apps | |
| parent | ab15fa7e00a4d98685dba186125d0805d1deb22c (diff) | |
| download | rockbox-209aa8eda5b5c7cecde65885e6beaf37c92ba622.zip rockbox-209aa8eda5b5c7cecde65885e6beaf37c92ba622.tar.gz rockbox-209aa8eda5b5c7cecde65885e6beaf37c92ba622.tar.bz2 rockbox-209aa8eda5b5c7cecde65885e6beaf37c92ba622.tar.xz | |
Real fake IRAM by placing .i.... section in the analagous DRAM sections in the linker scripts that hasn't done this yet.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17449 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps')
| -rw-r--r-- | apps/codecs/libmad/mad_iram.h | 7 | ||||
| -rw-r--r-- | apps/plugins/plugin.lds | 22 |
2 files changed, 17 insertions, 12 deletions
diff --git a/apps/codecs/libmad/mad_iram.h b/apps/codecs/libmad/mad_iram.h index ffa6be8..08d218a 100644 --- a/apps/codecs/libmad/mad_iram.h +++ b/apps/codecs/libmad/mad_iram.h @@ -30,8 +30,7 @@ /* Code performs slower in IRAM on PP502x and there is no space in mpegplayer on the PP5002. S3C2440 doesn't have any IRAM available for codecs */ -#if defined(CPU_PP502x) || (CONFIG_CPU == PP5002 && defined(MPEGPLAYER)) || \ - (CONFIG_CPU==S3C2440) || (CONFIG_CPU==IMX31L) +#if defined(CPU_PP502x) || (CONFIG_CPU == PP5002 && defined(MPEGPLAYER)) #define ICODE_SECTION_MPA_ARM .text #define ICODE_ATTR_MPA_SYNTH #else @@ -39,11 +38,7 @@ #define ICODE_ATTR_MPA_SYNTH ICODE_ATTR #endif -#if CONFIG_CPU == S3C2440 || CONFIG_CPU == IMX31L -#define IBSS_SECTION_MPA_ARM .bss -#else #define IBSS_SECTION_MPA_ARM .ibss -#endif #ifndef ICONST_ATTR_MPA_HUFFMAN #define ICONST_ATTR_MPA_HUFFMAN ICONST_ATTR diff --git a/apps/plugins/plugin.lds b/apps/plugins/plugin.lds index 92365c6..13a048a 100644 --- a/apps/plugins/plugin.lds +++ b/apps/plugins/plugin.lds @@ -63,14 +63,12 @@ OUTPUT_FORMAT(elf32-sh) #define IRAMSIZE 0x9000 #elif CONFIG_CPU == S3C2440 #define DRAMORIG 0x0 + STUBOFFSET -#define IRAMORIG DRAMORIG -#define IRAMSIZE 4K #define IRAM DRAM +#define IRAMSIZE 0 #elif CONFIG_CPU == IMX31L #define DRAMORIG 0x0 + STUBOFFSET -#define IRAMORIG DRAMORIG -#define IRAMSIZE 0x4000 #define IRAM DRAM +#define IRAMSIZE 0 #elif CONFIG_CPU==DM320 #define DRAMORIG 0x00900000 + STUBOFFSET #define IRAMORIG DRAMORIG @@ -100,7 +98,7 @@ OUTPUT_FORMAT(elf32-sh) MEMORY { PLUGIN_RAM : ORIGIN = THIS_ORIGIN, LENGTH = THIS_LENGTH -#if defined(IRAMSIZE) +#if defined(IRAMSIZE) && IRAMSIZE != 0 PLUGIN_IRAM : ORIGIN = IRAMORIG, LENGTH = IRAMSIZE #endif } @@ -116,6 +114,9 @@ SECTIONS .text : { *(.text*) +#if defined(IRAMSIZE) && IRAMSIZE == 0 + *(.icode) +#endif #ifdef CPU_ARM *(.glue_7) *(.glue_7t) @@ -125,12 +126,18 @@ SECTIONS .rodata : { *(.rodata*) +#if defined(IRAMSIZE) && IRAMSIZE == 0 + *(.irodata) +#endif . = ALIGN(0x4); } > PLUGIN_RAM .data : { *(.data*) +#if defined(IRAMSIZE) && IRAMSIZE == 0 + *(.idata) +#endif } > PLUGIN_RAM #if NOCACHE_BASE != 0 @@ -151,7 +158,7 @@ SECTIONS *(.eh_frame) } -#if defined(IRAMSIZE) +#if defined(IRAMSIZE) && IRAMSIZE != 0 .iram IRAMORIG : AT ( iramcopy) { iramstart = .; @@ -175,6 +182,9 @@ SECTIONS { plugin_bss_start = .; *(.bss*) +#if defined(IRAMSIZE) && IRAMSIZE == 0 + *(.ibss) +#endif *(COMMON) . = ALIGN(0x4); } > PLUGIN_RAM |