FreeCalypso > hg > fc-magnetite
annotate src/cs/system/template/gsm_ds_amd8_compact.template @ 638:cab2f315827e
FFS dev.c: added Spansion PL032J to the "generic" table
With the discovery of first GTM900 and then Tango, it now appears that
Openmoko was not the only manuf after all who kept TI's TCS211 firmware
largely intact (as opposed to changing it beyond all recognition like
Compal, Chi-Mei and BenQ did), thus we are now getting new "alien" targets
on which we reuse the original manuf's FFS with IMEI and RF calibration
tables as if it were native. On these targets we use the original
device table for FFS, even though we previously thought that it would
never apply to any target other than dsample, leonardo and gtamodem.
We have previously added Samsung K5L33xxCAM (a new kind of multi-ID device)
to the generic table to support its use in Huawei GTM900-B modules; now
we got news that some slightly older GTM900-B specimen used S71PL032J
instead, so we are now adding PL032J as well.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Thu, 30 Jan 2020 17:45:48 +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 } |