summaryrefslogtreecommitdiff
path: root/firmware/boot.lds
diff options
context:
space:
mode:
authorWill Robertson <aliask@rockbox.org>2007-09-21 15:51:53 +0000
committerWill Robertson <aliask@rockbox.org>2007-09-21 15:51:53 +0000
commit590501cfe404b5463adecc70628e5bc7c8f142a2 (patch)
tree3b038f90c9c3bbef8cf0b84f5a4ea338f9599851 /firmware/boot.lds
parenta26110c52dff9bc15d20146462d52d07f61bd238 (diff)
Merge the Gigabeat S branch back into trunk. Fingers crossed nothing breaks.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14805 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/boot.lds')
-rw-r--r--firmware/boot.lds43
1 files changed, 42 insertions, 1 deletions
diff --git a/firmware/boot.lds b/firmware/boot.lds
index 0e2ccc1b90..999e1b0f26 100644
--- a/firmware/boot.lds
+++ b/firmware/boot.lds
@@ -69,6 +69,12 @@ INPUT(target/sh/crt0.o)
#define IRAMSIZE 0x18000
#define FLASHORIG 0x001f0000
#define FLASHSIZE 2M
+#elif CONFIG_CPU == IMX31L
+#define DRAMORIG 0x80000000
+#define IRAMORIG 0x1FFFC000
+#define IRAMSIZE 16K
+#define FLASHORIG 0x0000000
+#define FLASHSIZE 1M
#else
#define DRAMORIG 0x09000000
#define IRAMORIG 0x0f000000
@@ -77,7 +83,7 @@ INPUT(target/sh/crt0.o)
#define FLASHSIZE 256K - ROM_START
#endif
-#if !defined(CPU_PP) && (CONFIG_CPU!=S3C2440)
+#if !defined(CPU_PP) && (CONFIG_CPU!=S3C2440) && (CONFIG_CPU!=IMX31L)
MEMORY
{
DRAM : ORIGIN = DRAMORIG, LENGTH = DRAMSIZE
@@ -216,6 +222,41 @@ SECTIONS
_end = .;
}>DRAM
}
+#elif (CONFIG_CPU==IMX31L)
+{
+ . = 0x88201000;
+ .vectors :
+ {
+ KEEP(*(.vectors*));
+ *(.vectors*);
+ }
+ .text : {
+ *(.init.text)
+ *(.text*)
+ }
+ .data : {
+ *(.icode)
+ *(.irodata)
+ *(.idata)
+ *(.data*)
+ _dataend = . ;
+ }
+ .stack :
+ {
+ *(.stack)
+ _stackbegin = .;
+ stackbegin = .;
+ . += 0x2000;
+ _stackend = .;
+ stackend = .;
+ }
+ .bss : {
+ _edata = .;
+ *(.bss*);
+ *(.ibss);
+ _end = .;
+ }
+}
#else
{
.vectors :