FreeCalypso > hg > fc-magnetite
annotate src/cs/system/template/gsm_ds_pirelli_flash.template @ 695:530f71d65c20
uartfax.c: pull from Tourmaline (GTM900 RI output)
In addition to the primary intent of bringing in GTM900 RI output support,
pulling uartfax.c wholesale from Tourmaline also changes the initial_time
argument in the two NU_Create_Timer() calls from 0 to 1. This change
is required for the new version of Nucleus used in Tourmaline and Selenite
(and apparently also used by TI in LoCosto), and it is harmless (no effect)
for the original TCS211 version of Nucleus used in Magnetite.
The new philosophical model being adopted is that Tourmaline is our new
development head firmware, whereas Magnetite will now be maintained
similarly to how Linux maintainers treat stable kernels: changes will be
backported from Tourmaline if they are deemed appropriate for stable
modem firmware.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sat, 24 Oct 2020 17:33:10 +0000 |
parents | 1524d182a2b2 |
children |
rev | line source |
---|---|
86
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 /* |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2 * Integrated Protocol Stack Linker command file (all components) |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 * |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 * Target : ARM |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 * |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 * Copyright (c) Texas Instruments 2002, Condat 2002 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 * |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
8 * This version of the linker script template has been concocted |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9 * by Spacefalcon the Outlaw based on previous hacks. |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
10 */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 -c /* Autoinitialize variables at runtime */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 /*********************************/ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 /* SPECIFY THE SYSTEM MEMORY MAP */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 /*********************************/ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18 MEMORY |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
19 { |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
20 /* CS0: Flash 8 Mbytes ****************************************************/ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
21 /* Interrupt Vectors Table */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
22 I_MEM (RXI) : org = 0x00000000 len = 0x00000100 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
23 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
24 /* Boot Sector */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
25 B_MEM (RXI) : org = 0x00000100 len = 0x00001f00 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
26 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
27 /* Magic Word for Calypso Boot ROM */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
28 MWC_MEM (RXI) : org = 0x00002000 len = 0x00000004 fill = 0x0000001 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
29 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
30 /* Program Memory */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
31 P_MEM1 (RXI) : org = 0x00004000 len = 0x00000700 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
32 P_MEM2 (RXI) : org = 0x00004700 len = 0x00000004 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
33 P_MEM3 (RXI) : org = 0x00004704 len = 0x00400000 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
34 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
35 /* FFS Area */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
36 FFS_MEM (RX) : org = 0x02000000 len = 0x00800000 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
37 /**************************************************************************/ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
38 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
39 /* CS1: External SRAM 1 Mbytes ********************************************/ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
40 /* Data Memory */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
41 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
42 /* |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
43 * Huge XRAM on the Pirelli: present it as two banks of 4 MiB each |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
44 */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
45 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
46 D_MEM1 (RW) : org = 0x01000000 len = 0x00400000 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
47 D_MEM2 (RW) : org = 0x01400000 len = 0x00400000 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
48 /**************************************************************************/ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
49 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
50 /* CS6: Calypso Internal SRAM 512 kbytes **********************************/ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
51 /* Code & Variables Memory */ |
466
1524d182a2b2
linker script for large flash: reserve the first 0x100 bytes of IRAM
Mychaela Falconia <falcon@freecalypso.org>
parents:
86
diff
changeset
|
52 S_MEM (RXW) : org = 0x00800100 len = 0x0007ff00 |
86
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
53 /**************************************************************************/ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
54 } |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
55 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
56 /***********************************************/ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
57 /* SPECIFY THE SECTIONS ALLOCATION INTO MEMORY */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
58 /***********************************************/ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
59 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
60 /* |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
61 * Since the bootloader directly calls the INT_Initialize() routine located |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
62 * in int.s, this int.s code must always be mapped at the same address |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
63 * (usually in the second flash sector). Its length is about 0x500 bytes. |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
64 * Then comes the code that need to be loaded into the internal RAM. |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
65 */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
66 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
67 SECTIONS |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
68 { |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
69 .intvecs : {} > I_MEM /* Interrupt Vectors Table */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
70 .monitor : > B_MEM /* Monitor Constants & Code */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
71 { |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
72 $(CONST_BOOT_LIB) |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
73 } |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
74 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
75 .inttext : {} > P_MEM1 /* int.s Code */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
76 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
77 .bss_dar : > D_MEM1 /* DAR SWE Variables */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
78 { |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
79 $(BSS_DAR_LIB) |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
80 } |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
81 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
82 /* |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
83 * The .bss section should not be split to ensure it is initialized to 0 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
84 * each time the SW is reset. So the whole .bss is mapped either in D_MEM1 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
85 * or in D_MEM2. |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
86 * |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
87 * Falcon's note for K5A3281: see the comments above where the memory |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
88 * regions are defined. |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
89 */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
90 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
91 .bss : > D_MEM1 | D_MEM2 /* Global & Static Variables */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
92 { |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
93 $(BSS_BOOT_LIB) |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
94 } |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
95 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
96 /* |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
97 * All .bss sections, which must be mapped in internal RAM must be |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
98 * grouped in order to initialized the corresponding memory to 0. |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
99 * This initialization is done in int.s file before calling the Nucleus |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
100 * routine. |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
101 */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
102 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
103 GROUP |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
104 { |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
105 S_D_Mem /* Label of start address of .bss section in Int. RAM */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
106 .DintMem |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
107 { |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
108 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
109 /* |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
110 * .bss sections of the application |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
111 */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
112 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
113 $(BSS_LIBS) |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
114 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
115 } |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
116 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
117 API_HISR_stack : {} |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
118 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
119 E_D_Mem /* Label of end address of .bss section in Int. RAM */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
120 } > S_MEM |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
121 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
122 /* |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
123 * .text and .const sections which must be mapped in internal RAM. |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
124 */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
125 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
126 .ldfl : {} > P_MEM2 /* Used to know the start load address */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
127 GROUP load = P_MEM3, run = S_MEM |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
128 { |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
129 S_P_Mem /* Label of start address of .text & .const sections in Int. RAM */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
130 .PIntMem |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
131 { |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
132 /* |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
133 * .text and .const sections of the application. |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
134 * |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
135 * The .veneer sections correspond exactly to .text:v&n sections |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
136 * implementing the veneer functions. The .text:v$n -> .veneer |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
137 * translation is performed by PTOOL software when PTOOL_OPTIONS |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
138 * environement variable is set to veneer_section. |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
139 */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
140 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
141 $(CONST_LIBS) |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
142 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
143 } |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
144 E_P_Mem /* Label of end address of .text and .const sections in Int. RAM */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
145 } |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
146 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
147 /* |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
148 * The rest of the code is mapped in flash, however the trampolines |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
149 * load address should be consistent with .text. |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
150 */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
151 COMMENT2START |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
152 `trampolines load = P_MEM3, run = S_MEM |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
153 COMMENT2END |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
154 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
155 .text : {} > P_MEM3 /* Code */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
156 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
157 /* |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
158 * The rest of the constants is mapped in flash. |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
159 * The .cinit section should not be split. |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
160 */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
161 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
162 .cinit : {} > P_MEM3 /* Initialization Tables */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
163 .const : {} > P_MEM3 /* Constant Data */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
164 KadaAPI : {} > P_MEM3 /* ROMized CLDC */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
165 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
166 .javastack: {} >> D_MEM1 | D_MEM2 /* Java stack */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
167 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
168 .stackandheap : > D_MEM1 /* System Stacks, etc... */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
169 { |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
170 /* Leave 20 32bit words for register pushes. */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
171 . = align(8); |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
172 . += 20 * 4; |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
173 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
174 /* Stack for abort and/or undefined modes. */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
175 exception_stack = .; |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
176 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
177 /* Leave 38 32bit words for state saving on exceptions. */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
178 _xdump_buffer = .; |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
179 . += 38 * 4; |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
180 . = align(8); |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
181 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
182 /* Beginning of stacks and heap area - 2.75 kbytes (int.s) */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
183 stack_segment = .; |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
184 . += 0xB00; |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
185 } |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
186 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
187 .data : {} > D_MEM1 /* Initialized Data */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
188 .sysmem : {} > D_MEM1 /* Dynamic Memory Allocation Area */ |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
189 |
b54879bebfd3
src/cs/system/template: C139 and Pirelli versions added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
190 } |