summaryrefslogtreecommitdiffstats
path: root/firmware/target/arm/s3c2440/boot.lds
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/target/arm/s3c2440/boot.lds')
-rw-r--r--firmware/target/arm/s3c2440/boot.lds101
1 files changed, 75 insertions, 26 deletions
diff --git a/firmware/target/arm/s3c2440/boot.lds b/firmware/target/arm/s3c2440/boot.lds
index cc20fbe86f..4516c7ddb0 100644
--- a/firmware/target/arm/s3c2440/boot.lds
+++ b/firmware/target/arm/s3c2440/boot.lds
@@ -7,44 +7,93 @@ INPUT(target/arm/s3c2440/crt0.o)
#define DRAMSIZE (MEMORYSIZE * 0x100000)
-#define DRAMORIG 0x30000000
-#define IRAMORIG 0x40000000
-#define IRAMSIZE 4K
-#define FLASHORIG 0x0000000
+#define DRAMORIG 0x00000000
+#define IRAMORIG 0x40000000
+#define IRAMSIZE 4K
+#define FLASHORIG 0x00000000
#define FLASHSIZE 1M
-SECTIONS
+MEMORY
{
- . = DRAMORIG + 0x1000000;
+ DRAM : ORIGIN = DRAMORIG, LENGTH = DRAMSIZE
+}
- .text : {
+SECTIONS
+{
+ .vectors DRAMORIG :
+ {
+ _vectorstart = .;
+ *(.vectors*);
*(.init.text)
+ . = ALIGN(0x4);
+ } > DRAM
+
+ .text :
+ {
+ _textstart = .;
+ *(.text)
*(.text*)
- }
+ *(.glue_7)
+ *(.glue_7t)
+ . = ALIGN(0x4);
+ } > DRAM
- .data : {
+ _textcopy = LOADADDR(.text);
+
+ .rodata :
+ {
+ *(.rodata) /* problems without this, dunno why */
+ *(.rodata*)
+ *(.rodata.str1.1)
+ *(.rodata.str1.4)
+ . = ALIGN(0x4);
+ } > DRAM
+
+ .data :
+ {
+ *(.data*)
+ . = ALIGN(0x4);
+ } > DRAM
+
+ /DISCARD/ :
+ {
+ *(.eh_frame)
+ }
+
+ .iram :
+ {
+ _iramstart = .;
*(.icode)
*(.irodata)
*(.idata)
- *(.data*)
+ . = ALIGN(0x4);
+ _iramend = .;
+ } > DRAM
+
+ _iramcopy = LOADADDR(.iram);
+
+ .ibss :
+ {
+ _iedata = .;
+ *(.ibss)
. = ALIGN(0x4);
- _dataend = . ;
- }
+ _iend = .;
+ } > DRAM
.stack :
{
- *(.stack)
- _stackbegin = .;
- stackbegin = .;
- . += 0x2000;
- _stackend = .;
- stackend = .;
- }
- .bss : {
- _edata = .;
- *(.bss*);
- *(.ibss);
- *(COMMON)
- _end = .;
- }
+ *(.stack)
+ stackbegin = .;
+ . += 0x2000;
+ stackend = .;
+ } > DRAM
+
+ .bss :
+ {
+ _edata = .;
+ *(.bss*)
+ *(COMMON)
+ . = ALIGN(0x4);
+ _end = .;
+ } > DRAM
}