diff options
| author | Nicolas Pennequin <nicolas.pennequin@free.fr> | 2007-11-11 20:50:44 +0000 |
|---|---|---|
| committer | Nicolas Pennequin <nicolas.pennequin@free.fr> | 2007-11-11 20:50:44 +0000 |
| commit | 5cfd27a9cd450d20aff4d6cde5ab09ae2c3fb819 (patch) | |
| tree | 6d294cd75c5c708f6d0abbdb6c6350cf2b3c998f | |
| parent | 95db8f8022f80f906f1cc852a2debb47baff74ee (diff) | |
| download | rockbox-5cfd27a9cd450d20aff4d6cde5ab09ae2c3fb819.zip rockbox-5cfd27a9cd450d20aff4d6cde5ab09ae2c3fb819.tar.gz rockbox-5cfd27a9cd450d20aff4d6cde5ab09ae2c3fb819.tar.bz2 rockbox-5cfd27a9cd450d20aff4d6cde5ab09ae2c3fb819.tar.xz | |
Revert Karl's r15581, r15582 and r15583 because they caused serious problems on the Gigabeat (can't load plugins or codecs).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15585 a1c6a512-1295-4272-9138-f99709370657
| -rw-r--r-- | firmware/app.lds | 33 | ||||
| -rw-r--r-- | firmware/boot.lds | 4 |
2 files changed, 18 insertions, 19 deletions
diff --git a/firmware/app.lds b/firmware/app.lds index d85faf1..e3f6ef2 100644 --- a/firmware/app.lds +++ b/firmware/app.lds @@ -32,6 +32,16 @@ INPUT(target/sh/crt0.o) #define STUBOFFSET 0 #endif +#if CONFIG_CPU==S3C2440 +#include "s3c2440.h" +#define DRAMSIZE (MEMORYSIZE * 0x100000) - 0x100 - PLUGINSIZE - STUBOFFSET - CODECSIZE - LCD_BUFFER_SIZE - TTB_SIZE +#elif CONFIG_CPU==DM320 +#include "dm320.h" +#define DRAMSIZE (MEMORYSIZE * 0x100000) - PLUGINSIZE - STUBOFFSET - CODECSIZE - LCD_BUFFER_SIZE - TTB_SIZE +#else +#define DRAMSIZE (MEMORYSIZE * 0x100000) - PLUGINSIZE - STUBOFFSET - CODECSIZE +#endif + #if defined(IRIVER_H100_SERIES) || defined(IRIVER_H300) #define DRAMORIG 0x31000000 + STUBOFFSET #define IRAMORIG 0x10000000 @@ -52,9 +62,9 @@ INPUT(target/sh/crt0.o) #define IRAMSIZE 0x7000 #elif CONFIG_CPU==S3C2440 #define DRAMORIG 0x00000100 + STUBOFFSET +#define IRAMORIG DRAMORIG +#define IRAM DRAM #define IRAMSIZE 0x1000 -/* This is not really IRAM!! Should be 0x40000000, but it doesn't work */ -#define IRAMORIG (MEMORYSIZE * 0x100000) - IRAMSIZE - LCD_BUFFER_SIZE - TTB_SIZE + DRAMORIG #elif CONFIG_CPU==DM320 #define DRAMORIG 0x00900000 + STUBOFFSET #define IRAMORIG 0x00000000 @@ -69,16 +79,6 @@ INPUT(target/sh/crt0.o) #define IRAMSIZE 0x1000 #endif -#if CONFIG_CPU==S3C2440 -#include "s3c2440.h" -#define DRAMSIZE (MEMORYSIZE * 0x100000) - 0x100 - PLUGINSIZE - STUBOFFSET - CODECSIZE - LCD_BUFFER_SIZE - TTB_SIZE - IRAMSIZE -#elif CONFIG_CPU==DM320 -#include "dm320.h" -#define DRAMSIZE (MEMORYSIZE * 0x100000) - PLUGINSIZE - STUBOFFSET - CODECSIZE - LCD_BUFFER_SIZE - TTB_SIZE -#else -#define DRAMSIZE (MEMORYSIZE * 0x100000) - PLUGINSIZE - STUBOFFSET - CODECSIZE -#endif - /* End of the audio buffer, where the codec buffer starts */ #define ENDAUDIOADDR (DRAMORIG + DRAMSIZE) @@ -88,8 +88,9 @@ INPUT(target/sh/crt0.o) MEMORY { DRAM : ORIGIN = DRAMORIG, LENGTH = DRAMSIZE +#if CONFIG_CPU != S3C2440 IRAM : ORIGIN = IRAMORIG, LENGTH = IRAMSIZE - +#endif #if CONFIG_CPU==PNX0101 IRAM0 : ORIGIN = IRAM0ORIG, LENGTH = IRAM0SIZE #endif @@ -233,14 +234,14 @@ SECTIONS _vectorscopy = LOADADDR(.vectors); - .iram IRAMORIG : + .iram : { _iramstart = .; *(.icode) *(.irodata) *(.idata) _iramend = .; - } >IRAM AT> DRAM + } > DRAM _iramcopy = LOADADDR(.iram); @@ -252,7 +253,7 @@ SECTIONS _iend = .; } > DRAM - .stack ADDR(.data) + SIZEOF(.data) + SIZEOF(.iram) + SIZEOF(.vectors) : + .stack : { *(.stack) stackbegin = .; diff --git a/firmware/boot.lds b/firmware/boot.lds index a990051..d2ea10a 100644 --- a/firmware/boot.lds +++ b/firmware/boot.lds @@ -9,10 +9,8 @@ OUTPUT_FORMAT(elf32-littlearm) OUTPUT_ARCH(arm) #ifdef CPU_PP INPUT(target/arm/crt0-pp-bl.o) -#elif CONFIG_CPU==DM320 +#elif defined(OLYMPUS_MROBE_500) INPUT(target/arm/tms320dm320/crt0.o) -#elif CONFIG_CPU==S3C2440 -INPUT(target/arm/s3c2440/crt0.o) #elif defined(CPU_TCC77X) INPUT(target/arm/tcc77x/crt0.o) #else |