Also declare .qharray for the bootloader on imx31. Usb is also supported there...
[kugel-rb.git] / firmware / target / arm / imx31 / boot.lds
blobb881624880a8d2736889a4c1cfbb9c03cdf98a19
1 #include "config.h"
2 #include "imx31l.h"
4 ENTRY(start)
5 OUTPUT_FORMAT(elf32-littlearm)
6 OUTPUT_ARCH(arm)
7 INPUT(target/arm/imx31/crt0.o)
9 #define DRAMSIZE (1 << 20) /* Limit 1 MB for bootloader */
11 #define DRAMORIG (0x02000000-0x00100000)
12 /* #define IRAMORIG 0x1FFFC000 */
13 #define IRAM      DRAM
14 #define IRAMSIZE  IRAM_SIZE
15 #define IRAMORIG  DRAMORIG
16 #define FLASHORIG 0x0000000
17 #define FLASHSIZE 1M
19 MEMORY
21    DRAM : ORIGIN = DRAMORIG, LENGTH = DRAMSIZE
22    DEVBSS : ORIGIN = 0x80100000 + FRAME_SIZE, LENGTH = 0x100000 - FRAME_SIZE - TTB_SIZE
25 SECTIONS
27     . = DRAMORIG;
29     .text :
30     {
31         *(.init.text)
32         *(.text*)
33         *(.icode)
34         *(.glue_7)
35         *(.glue_7t)
36         . = ALIGN(0x4);
37     } > DRAM
39     .rodata :
40     {
41         *(.rodata)  /* problems without this, dunno why */
42         *(.rodata*)
43         *(.rodata.str1.1)
44         *(.rodata.str1.4)
45         . = ALIGN(0x4);
47         /* Pseudo-allocate the copies of the data sections */
48         _datacopy = .;
49     } > DRAM
51     .data :
52     {
53         *(.irodata)
54         *(.idata)
55         *(.data*)
56         . = ALIGN(0x4);
57         _dataend = . ;
58     } > DRAM
60     .stack :
61     {
62         *(.stack)
63         _stackbegin = .;
64         stackbegin = .;
65         . += 0x2000;
66         _stackend = .;
67         stackend = .;
68     } > IRAM
70     .bss :
71     {
72          _edata = .;
73          *(.bss*);
74          *(.ibss);
75          *(COMMON)
76          _end = .;
77     } > DRAM
79     .vectors 0x0 :
80     {
81         _vectorsstart = .;
82         *(.vectors);
83         KEEP(*(.vectors));
84         _vectorsend = .;
85     } AT > DRAM
86     _vectorscopy = LOADADDR(.vectors);
87     
88     .devbss (NOLOAD) :
89     {
90         _devbssdata = .;
91         *(.qharray)
92         *(.devbss*)
93         _devbssend = .;
94     } > DEVBSS