summaryrefslogtreecommitdiff
path: root/firmware/target/arm/olympus/boot.lds
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/target/arm/olympus/boot.lds')
-rw-r--r--firmware/target/arm/olympus/boot.lds20
1 files changed, 14 insertions, 6 deletions
diff --git a/firmware/target/arm/olympus/boot.lds b/firmware/target/arm/olympus/boot.lds
index 7b86ad29bc..e083aa4a08 100644
--- a/firmware/target/arm/olympus/boot.lds
+++ b/firmware/target/arm/olympus/boot.lds
@@ -13,6 +13,12 @@ STARTUP(target/arm/crt0-pp-bl.o)
13#define FLASHORIG 0x001f0000 13#define FLASHORIG 0x001f0000
14#define FLASHSIZE 2M 14#define FLASHSIZE 2M
15 15
16MEMORY
17{
18 DRAM : ORIGIN = DRAMORIG, LENGTH = DRAMSIZE
19 IRAM : ORIGIN = IRAMORIG, LENGTH = IRAMSIZE
20}
21
16SECTIONS 22SECTIONS
17{ 23{
18 . = IRAMORIG; 24 . = IRAMORIG;
@@ -20,7 +26,9 @@ SECTIONS
20 .text : { 26 .text : {
21 *(.init.text) 27 *(.init.text)
22 *(.text*) 28 *(.text*)
23 } 29 *(.glue_7)
30 *(.glue_7t)
31 } > IRAM
24 32
25 .data : { 33 .data : {
26 *(.icode) 34 *(.icode)
@@ -28,18 +36,18 @@ SECTIONS
28 *(.idata) 36 *(.idata)
29 *(.data*) 37 *(.data*)
30 *(.ncdata*) 38 *(.ncdata*)
39 *(.rodata*)
31 _dataend = . ; 40 _dataend = . ;
32 } 41 } > IRAM
33 42
34 .stack : 43 .stack : {
35 {
36 *(.stack) 44 *(.stack)
37 _stackbegin = .; 45 _stackbegin = .;
38 stackbegin = .; 46 stackbegin = .;
39 . += 0x2000; 47 . += 0x2000;
40 _stackend = .; 48 _stackend = .;
41 stackend = .; 49 stackend = .;
42 } 50 } > IRAM
43 51
44 /* The bss section is too large for IRAM - we just move it 16MB into the 52 /* The bss section is too large for IRAM - we just move it 16MB into the
45 DRAM */ 53 DRAM */
@@ -51,5 +59,5 @@ SECTIONS
51 *(.ibss); 59 *(.ibss);
52 *(.ncbss*); 60 *(.ncbss*);
53 _end = .; 61 _end = .;
54 } 62 } > DRAM
55} 63}