diff options
author | Rafaël Carré <rafael.carre@gmail.com> | 2008-10-30 20:01:01 +0000 |
---|---|---|
committer | Rafaël Carré <rafael.carre@gmail.com> | 2008-10-30 20:01:01 +0000 |
commit | f4a0f457be567092da038853b9ff295742678175 (patch) | |
tree | b75f94b9bba32b9fc155ea63de7143253de5cd51 | |
parent | 29a5373724d143d2629cafd8cc0c1961546c1bd6 (diff) |
Sansav2 bootloader: explicitely link everything into IRAM
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18937 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r-- | firmware/target/arm/as3525/boot.lds | 26 |
1 files changed, 20 insertions, 6 deletions
diff --git a/firmware/target/arm/as3525/boot.lds b/firmware/target/arm/as3525/boot.lds index f94f1c33da..eb977a1023 100644 --- a/firmware/target/arm/as3525/boot.lds +++ b/firmware/target/arm/as3525/boot.lds @@ -5,23 +5,37 @@ OUTPUT_FORMAT(elf32-littlearm) OUTPUT_ARCH(arm) STARTUP(target/arm/crt0.o) +#define DRAMSIZE (MEMORYSIZE * 0x100000) +#define DRAMORIG 0x30000000 +#define IRAMORIG 0 +#define IRAMSIZE 0x50000 + +MEMORY +{ + DRAM : ORIGIN = DRAMORIG, LENGTH = DRAMSIZE + IRAM : ORIGIN = IRAMORIG, LENGTH = IRAMSIZE +} + SECTIONS { - /*. = IRAMORIG; */ + . = IRAMORIG; .text : { *(.init.text) + *(.glue_7) + *(.glue_7t) *(.text*) - } + } > IRAM .data : { *(.icode) *(.irodata) *(.idata) *(.data*) - *(.ncdata*); + *(.ncdata*) + *(.rodata*) _dataend = . ; - } + } > IRAM .stack : { @@ -31,7 +45,7 @@ SECTIONS . += 0x2000; _stackend = .; stackend = .; - } + } > IRAM .bss : { _edata = .; @@ -39,5 +53,5 @@ SECTIONS *(.ibss); *(.ncbss*); _end = .; - } + } > IRAM } |