1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
MEMORY {
ROM : ORIGIN = 0x08000000, LENGTH = 32M
EWRAM : ORIGIN = 0x02000000, LENGTH = 4M - 4k
DTCM : ORIGIN = 0x0b000000, LENGTH = 16k
ITCM : ORIGIN = 0x01000000, LENGTH = 32k
NIRVANA : ORIGIN = 0, LENGTH = 0
}
REGION_ALIAS ("REGION_START", EWRAM);
REGION_ALIAS ("REGION_VECTOR", DTCM);
REGION_ALIAS ("REGION_TEXT", EWRAM);
REGION_ALIAS ("REGION_TEXT_LOAD", EWRAM);
REGION_ALIAS ("REGION_RODATA", EWRAM);
REGION_ALIAS ("REGION_RODATA_LOAD", EWRAM);
REGION_ALIAS ("REGION_DATA", EWRAM);
REGION_ALIAS ("REGION_DATA_LOAD", EWRAM);
REGION_ALIAS ("REGION_FAST_TEXT", ITCM);
REGION_ALIAS ("REGION_FAST_TEXT_LOAD", EWRAM);
REGION_ALIAS ("REGION_FAST_DATA", DTCM);
REGION_ALIAS ("REGION_FAST_DATA_LOAD", EWRAM);
REGION_ALIAS ("REGION_BSS", EWRAM);
REGION_ALIAS ("REGION_WORK", EWRAM);
REGION_ALIAS ("REGION_STACK", EWRAM);
__dtcm_top = ORIGIN (DTCM) + LENGTH (DTCM);
__irq_flags = __dtcm_top - 0x08;
__irq_vector = __dtcm_top - 0x04;
SECTIONS {
.sbss : {
__sbss_start = ABSOLUTE(.);
__sbss_start__ = ABSOLUTE(.);
*(.sbss)
. = ALIGN(4); /* REQUIRED. LD is flaky without it. */
__sbss_end = ABSOLUTE(.);
} > DTCM
}
INCLUDE linkcmds.armv4
|