diff options
Diffstat (limited to 'firmware/target/arm/s5l8700/boot.lds')
-rw-r--r-- | firmware/target/arm/s5l8700/boot.lds | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/firmware/target/arm/s5l8700/boot.lds b/firmware/target/arm/s5l8700/boot.lds index 2dea0ee4ea..637a3a29c1 100644 --- a/firmware/target/arm/s5l8700/boot.lds +++ b/firmware/target/arm/s5l8700/boot.lds | |||
@@ -9,14 +9,14 @@ OUTPUT_FORMAT(elf32-bigarm) | |||
9 | OUTPUT_ARCH(arm) | 9 | OUTPUT_ARCH(arm) |
10 | STARTUP(target/arm/s5l8700/crt0.o) | 10 | STARTUP(target/arm/s5l8700/crt0.o) |
11 | 11 | ||
12 | /* DRAMORIG is in fact 0x08000000 but remapped to 0x0 */ | ||
13 | #define DRAMORIG 0x08000000 | 12 | #define DRAMORIG 0x08000000 |
14 | #define DRAMSIZE (MEMORYSIZE * 0x100000) | 13 | #define DRAMSIZE (MEMORYSIZE * 0x100000) |
15 | 14 | ||
16 | #define IRAMORIG 0x22000000 | ||
17 | #if CONFIG_CPU==S5L8701 | 15 | #if CONFIG_CPU==S5L8701 |
16 | #define IRAMORIG 0x0 | ||
18 | #define IRAMSIZE 176K | 17 | #define IRAMSIZE 176K |
19 | #else | 18 | #else |
19 | #define IRAMORIG 0x22000000 | ||
20 | #define IRAMSIZE 256K | 20 | #define IRAMSIZE 256K |
21 | #endif | 21 | #endif |
22 | 22 | ||
@@ -91,7 +91,11 @@ SECTIONS | |||
91 | _fiqstackend = .; | 91 | _fiqstackend = .; |
92 | } > IRAM | 92 | } > IRAM |
93 | 93 | ||
94 | .bss : { | 94 | /* The bss section is too large for IRAM - we just move it 12MB into the |
95 | DRAM */ | ||
96 | |||
97 | . = DRAMORIG; | ||
98 | .bss . + (12*1024*1024): { | ||
95 | _edata = .; | 99 | _edata = .; |
96 | *(.bss*); | 100 | *(.bss*); |
97 | *(.ibss); | 101 | *(.ibss); |
@@ -99,5 +103,5 @@ SECTIONS | |||
99 | *(COMMON); | 103 | *(COMMON); |
100 | . = ALIGN(0x4); | 104 | . = ALIGN(0x4); |
101 | _end = .; | 105 | _end = .; |
102 | } > IRAM | 106 | } > DRAM |
103 | } | 107 | } |