1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
|
2 | /*-Editor annotation file-*/
|
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\a_v1_0.xml" */
|
4 | /*-Memory Regions-*/
|
5 | define symbol __ICFEDIT_region_ROM_start__ = 0x100000;
|
6 | define symbol __ICFEDIT_region_ROM_end__ = 0x13FFFF;
|
7 | define symbol __ICFEDIT_region_RAM_start__ = 0x200000;
|
8 | define symbol __ICFEDIT_region_RAM_end__ = 0x207FFF;
|
9 | /*-Sizes-*/
|
10 | define symbol __ICFEDIT_size_startup__ = 0x100;
|
11 | define symbol __ICFEDIT_size_vectors__ = 0x100;
|
12 | define symbol __ICFEDIT_size_cstack__ = 0x1000;
|
13 | define symbol __ICFEDIT_size_svcstack__ = 0x60;
|
14 | define symbol __ICFEDIT_size_irqstack__ = 0x60;
|
15 | define symbol __ICFEDIT_size_heap__ = 0x0;
|
16 | /*-Exports-*/
|
17 | export symbol __ICFEDIT_region_ROM_start__;
|
18 | export symbol __ICFEDIT_region_ROM_end__;
|
19 | export symbol __ICFEDIT_region_RAM_start__;
|
20 | export symbol __ICFEDIT_region_RAM_end__;
|
21 | export symbol __ICFEDIT_size_startup__;
|
22 | export symbol __ICFEDIT_size_vectors__;
|
23 | export symbol __ICFEDIT_size_cstack__;
|
24 | export symbol __ICFEDIT_size_svcstack__;
|
25 | export symbol __ICFEDIT_size_irqstack__;
|
26 | export symbol __ICFEDIT_size_heap__;
|
27 | /**** End of ICF editor section. ###ICF###*/
|
28 |
|
29 | define memory mem with size = 4G;
|
30 | define region STA_region = mem:[from __ICFEDIT_region_ROM_start__ size __ICFEDIT_size_startup__];
|
31 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__+__ICFEDIT_size_startup__ to __ICFEDIT_region_ROM_end__];
|
32 | define region VEC_region = mem:[from __ICFEDIT_region_RAM_start__ size __ICFEDIT_size_vectors__];
|
33 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__+__ICFEDIT_size_vectors__ to __ICFEDIT_region_RAM_end__];
|
34 |
|
35 | define block CSTACK with alignment = 4, size = __ICFEDIT_size_cstack__ { };
|
36 | define block SVC_STACK with alignment = 4, size = __ICFEDIT_size_svcstack__ { };
|
37 | define block IRQ_STACK with alignment = 4, size = __ICFEDIT_size_irqstack__ { };
|
38 | define block HEAP with alignment = 4, size = __ICFEDIT_size_heap__ { };
|
39 |
|
40 | initialize by copy { readwrite };
|
41 | initialize by copy { section .vectors };
|
42 | do not initialize { section .noinit };
|
43 |
|
44 | place in STA_region { section .cstartup };
|
45 | place in ROM_region { readonly };
|
46 | place in VEC_region { section .vectors };
|
47 | place in RAM_region { readwrite, block IRQ_STACK, block SVC_STACK, block CSTACK, block HEAP };
|