diff options
Diffstat (limited to 'utils/hwstub/stub/atj213x/hwstub.lds')
-rw-r--r-- | utils/hwstub/stub/atj213x/hwstub.lds | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/utils/hwstub/stub/atj213x/hwstub.lds b/utils/hwstub/stub/atj213x/hwstub.lds new file mode 100644 index 0000000000..7f5c9fae18 --- /dev/null +++ b/utils/hwstub/stub/atj213x/hwstub.lds | |||
@@ -0,0 +1,70 @@ | |||
1 | #include "config.h" | ||
2 | ENTRY(main) | ||
3 | OUTPUT_ARCH(mips) | ||
4 | STARTUP(atj213x/crt0.o) | ||
5 | |||
6 | MEMORY | ||
7 | { | ||
8 | DRAM : ORIGIN = DRAM_ORIG, LENGTH = DRAM_SIZE | ||
9 | IRAM : ORIGIN = IRAM_ORIG, LENGTH = IRAM_SIZE | ||
10 | } | ||
11 | |||
12 | SECTIONS | ||
13 | { | ||
14 | .init.text : | ||
15 | { | ||
16 | _irqbase = .; | ||
17 | relocstart = .; | ||
18 | oc_codestart = .; | ||
19 | *(.init.text*) | ||
20 | } > IRAM | ||
21 | |||
22 | .exception.text (IRAM_ORIG + 0x200) : | ||
23 | { | ||
24 | *(.irq_vector*) | ||
25 | } > IRAM | ||
26 | |||
27 | .text : | ||
28 | { | ||
29 | *(.text*) | ||
30 | *(.icode*) | ||
31 | } > IRAM | ||
32 | |||
33 | .data : | ||
34 | { | ||
35 | *(.rodata*) | ||
36 | *(.data*) | ||
37 | *(.rel.dyn) | ||
38 | relocend = .; | ||
39 | } > IRAM | ||
40 | |||
41 | .stack (NOLOAD) : | ||
42 | { | ||
43 | . = ALIGN(4); | ||
44 | stackbegin = .; | ||
45 | oc_stackstart = .; | ||
46 | . += 0x2000; | ||
47 | stackend = .; | ||
48 | irqstackbegin = .; | ||
49 | . += 0x400; | ||
50 | irqstackend = .; | ||
51 | oc_stackend = .; | ||
52 | } > IRAM | ||
53 | |||
54 | .bss (NOLOAD) : | ||
55 | { | ||
56 | bssbegin = .; | ||
57 | *(.sbss*) | ||
58 | *(.bss*) | ||
59 | *(COMMON) | ||
60 | *(.scommon*) | ||
61 | bssend = .; | ||
62 | oc_codeend = .; | ||
63 | oc_bufferstart = .; | ||
64 | } > IRAM | ||
65 | |||
66 | .end IRAM_ORIG+IRAM_SIZE (NOLOAD) : | ||
67 | { | ||
68 | oc_bufferend = .; | ||
69 | } > IRAM | ||
70 | } | ||