FreeCalypso > hg > fc-magnetite
annotate src/cs/system/template/gsm_ds_amd8_compact.template @ 685:3fb7384e820d
tpudrv12.h: FCDEV3B goes back to being itself
A while back we had the idea of a FreeCalypso modem family whereby our
current fcdev3b target would some day morph into fcmodem, with multiple
FC modem family products, potentially either triband or quadband, being
firmware-compatible with each other and with our original FCDEV3B. But
in light of the discovery of Tango modules that earlier idea is now being
withdrawn: instead the already existing Tango hw is being adopted into
our FreeCalypso family.
Tango cannot be firmware-compatible with triband OM/FCDEV3B targets
because the original quadband RFFE on Tango modules is wired in TI's
original Leonardo arrangement. Because this Leonardo/Tango way is now
becoming the official FreeCalypso way of driving quadband RFFEs thanks
to the adoption of Tango into our FC family, our earlier idea of
extending FIC's triband RFFE control signals with TSPACT5 no longer makes
much sense - we will probably never produce any new hardware with that
once-proposed arrangement. Therefore, that triband-or-quadband FCFAM
provision is being removed from the code base, and FCDEV3B goes back to
being treated the same way as CONFIG_TARGET_GTAMODEM for RFFE control
purposes.
| author | Mychaela Falconia <falcon@freecalypso.org> |
|---|---|
| date | Thu, 24 Sep 2020 21:03:08 +0000 |
| parents | 916b27af1c6c |
| children |
| rev | line source |
|---|---|
|
625
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 /* |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2 * Integrated Protocol Stack Linker command file (all components) |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 * |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 * Target : ARM |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 * |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 * Copyright (c) Texas Instruments 2002, Condat 2002 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 * |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
8 */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
10 -c /* Autoinitialize variables at runtime */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 /*********************************/ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13 /* SPECIFY THE SYSTEM MEMORY MAP */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 /*********************************/ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 MEMORY |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17 { |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18 /* CS0: Flash 8 Mbytes ****************************************************/ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
19 /* Interrupt Vectors Table */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
20 I_MEM (RXI) : org = 0x00000000 len = 0x00000100 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
21 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
22 /* Boot Sector */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
23 B_MEM (RXI) : org = 0x00000100 len = 0x00001f00 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
24 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
25 /* Magic Word for Calypso Boot ROM */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
26 MWC_MEM (RXI) : org = 0x00002000 len = 0x00000004 fill = 0x0000001 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
27 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
28 /* Program Memory */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
29 P_MEM1 (RXI) : org = 0x00004000 len = 0x00000700 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
30 P_MEM2 (RXI) : org = 0x00004700 len = 0x00000004 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
31 P_MEM3 (RXI) : org = 0x00004704 len = 0x00400000 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
32 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
33 /* FFS Area */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
34 FFS_MEM (RX) : org = 0x01800000 len = 0x00200000 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
35 /**************************************************************************/ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
36 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
37 /* CS1: External SRAM 1 Mbytes ********************************************/ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
38 /* Data Memory */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
39 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
40 /* |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
41 * FreeCalypso: we try to support several different Leonardo board |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
42 * variants with different flash and XRAM sizes. In this template |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
43 * we are going to define two XRAM regions of 1 MiB each. |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
44 */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
45 D_MEM1 (RW) : org = 0x01000000 len = 0x00100000 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
46 D_MEM2 (RW) : org = 0x01100000 len = 0x00100000 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
47 /**************************************************************************/ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
48 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
49 /* CS6: Calypso Internal SRAM 512 kbytes **********************************/ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
50 /* Code & Variables Memory */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
51 S_MEM (RXW) : org = 0x00800000 len = 0x00080000 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
52 /**************************************************************************/ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
53 } |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
54 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
55 /***********************************************/ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
56 /* SPECIFY THE SECTIONS ALLOCATION INTO MEMORY */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
57 /***********************************************/ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
58 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
59 /* |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
60 * Since the bootloader directly calls the INT_Initialize() routine located |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
61 * in int.s, this int.s code must always be mapped at the same address |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
62 * (usually in the second flash sector). Its length is about 0x500 bytes. |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
63 * Then comes the code that need to be loaded into the internal RAM. |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
64 */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
65 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
66 SECTIONS |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
67 { |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
68 .intvecs : {} > I_MEM /* Interrupt Vectors Table */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
69 .monitor : > B_MEM /* Monitor Constants & Code */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
70 { |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
71 $(CONST_BOOT_LIB) |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
72 } |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
73 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
74 .inttext : {} > P_MEM1 /* int.s Code */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
75 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
76 .bss_dar : > D_MEM1 /* DAR SWE Variables */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
77 { |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
78 $(BSS_DAR_LIB) |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
79 } |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
80 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
81 /* |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
82 * The .bss section should not be split to ensure it is initialized to 0 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
83 * each time the SW is reset. So the whole .bss is mapped either in D_MEM1 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
84 * or in D_MEM2. |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
85 */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
86 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
87 .bss : > D_MEM1 | D_MEM2 /* Global & Static Variables */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
88 { |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
89 $(BSS_BOOT_LIB) |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
90 } |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
91 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
92 /* |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
93 * All .bss sections, which must be mapped in internal RAM must be |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
94 * grouped in order to initialized the corresponding memory to 0. |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
95 * This initialization is done in int.s file before calling the Nucleus |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
96 * routine. |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
97 */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
98 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
99 GROUP |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
100 { |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
101 S_D_Mem /* Label of start address of .bss section in Int. RAM */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
102 .DintMem |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
103 { |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
104 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
105 /* |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
106 * .bss sections of the application |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
107 */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
108 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
109 $(BSS_LIBS) |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
110 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
111 } |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
112 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
113 API_HISR_stack : {} |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
114 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
115 E_D_Mem /* Label of end address of .bss section in Int. RAM */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
116 } > S_MEM |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
117 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
118 /* |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
119 * .text and .const sections which must be mapped in internal RAM. |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
120 */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
121 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
122 .ldfl : {} > P_MEM2 /* Used to know the start load address */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
123 GROUP load = P_MEM3, run = S_MEM |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
124 { |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
125 S_P_Mem /* Label of start address of .text & .const sections in Int. RAM */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
126 .PIntMem |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
127 { |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
128 /* |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
129 * .text and .const sections of the application. |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
130 * |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
131 * The .veneer sections correspond exactly to .text:v&n sections |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
132 * implementing the veneer functions. The .text:v$n -> .veneer |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
133 * translation is performed by PTOOL software when PTOOL_OPTIONS |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
134 * environement variable is set to veneer_section. |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
135 */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
136 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
137 $(CONST_LIBS) |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
138 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
139 } |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
140 E_P_Mem /* Label of end address of .text and .const sections in Int. RAM */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
141 } |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
142 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
143 /* |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
144 * The rest of the code is mapped in flash, however the trampolines |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
145 * load address should be consistent with .text. |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
146 */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
147 COMMENT2START |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
148 `trampolines load = P_MEM3, run = S_MEM |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
149 COMMENT2END |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
150 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
151 .text : {} > P_MEM3 /* Code */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
152 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
153 /* |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
154 * The rest of the constants is mapped in flash. |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
155 * The .cinit section should not be split. |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
156 */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
157 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
158 .cinit : {} > P_MEM3 /* Initialization Tables */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
159 .const : {} > P_MEM3 /* Constant Data */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
160 KadaAPI : {} > P_MEM3 /* ROMized CLDC */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
161 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
162 .javastack: {} >> D_MEM1 | D_MEM2 /* Java stack */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
163 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
164 .stackandheap : > D_MEM1 /* System Stacks, etc... */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
165 { |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
166 /* Leave 20 32bit words for register pushes. */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
167 . = align(8); |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
168 . += 20 * 4; |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
169 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
170 /* Stack for abort and/or undefined modes. */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
171 exception_stack = .; |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
172 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
173 /* Leave 38 32bit words for state saving on exceptions. */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
174 _xdump_buffer = .; |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
175 . += 38 * 4; |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
176 . = align(8); |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
177 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
178 /* Beginning of stacks and heap area - 2.75 kbytes (int.s) */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
179 stack_segment = .; |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
180 . += 0xB00; |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
181 } |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
182 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
183 .data : {} > D_MEM1 /* Initialized Data */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
184 .sysmem : {} > D_MEM1 /* Dynamic Memory Allocation Area */ |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
185 |
|
916b27af1c6c
Leonardo target: compacted linker script template
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
186 } |
