FreeCalypso > hg > fc-magnetite
annotate src/cs/system/template/gsm_ds_int8_compact.template @ 600:8f50b202e81f
board preprocessor conditionals: prep for more FC hw in the future
This change eliminates the CONFIG_TARGET_FCDEV3B preprocessor symbol and
all preprocessor conditionals throughout the code base that tested for it,
replacing them with CONFIG_TARGET_FCFAM or CONFIG_TARGET_FCMODEM. These
new symbols are specified as follows:
CONFIG_TARGET_FCFAM is intended to cover all hardware designs created by
Mother Mychaela under the FreeCalypso trademark. This family will include
modem products (repackagings of the FCDEV3B, possibly with RFFE or even
RF transceiver changes), and also my desired FreeCalypso handset product.
CONFIG_TARGET_FCMODEM is intended to cover all FreeCalypso modem products
(which will be firmware-compatible with the FCDEV3B if they use TI Rita
transceiver, or will require a different fw build if we switch to one of
Silabs Aero transceivers), but not the handset product. Right now this
CONFIG_TARGET_FCMODEM preprocessor symbol is used to conditionalize
everything dealing with MCSI.
At the present moment the future of FC hardware evolution is still unknown:
it is not known whether we will ever have any beyond-FCDEV3B hardware at all
(contingent on uncertain funding), and if we do produce further FC hardware
designs, it is not known whether they will retain the same FIC modem core
(triband), if we are going to have a quadband design that still retains the
classic Rita transceiver, or if we are going to switch to Silabs Aero II
or some other transceiver. If we produce a quadband modem that still uses
Rita, it will run exactly the same fw as the FCDEV3B thanks to the way we
define TSPACT signals for the RF_FAM=12 && CONFIG_TARGET_FCFAM combination,
and the current fcdev3b build target will be renamed to fcmodem. OTOH, if
that putative quadband modem will be Aero-based, then it will require a
different fw build target, the fcdev3b target will stay as it is, and the
two targets will both define CONFIG_TARGET_FCFAM and CONFIG_TARGET_FCMODEM,
but will have different RF_FAM numbers. But no matter which way we are
going to evolve, it is not right to have conditionals on CONFIG_TARGET_FCDEV3B
in places like ACI, and the present change clears the way for future
evolution.
| author | Mychaela Falconia <falcon@freecalypso.org> |
|---|---|
| date | Mon, 01 Apr 2019 01:05:24 +0000 |
| parents | 336edc558a30 |
| children |
| rev | line source |
|---|---|
|
408
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 /* |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2 * Integrated Protocol Stack Linker command file (all components) |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 * |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 * Target : ARM |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 * |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 * Copyright (c) Texas Instruments 2002, Condat 2002 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 * |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
8 */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
10 -c /* Autoinitialize variables at runtime */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 /*********************************/ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13 /* SPECIFY THE SYSTEM MEMORY MAP */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 /*********************************/ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 MEMORY |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17 { |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18 /* CS0: Flash 8 Mbytes ****************************************************/ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
19 /* Interrupt Vectors Table */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
20 I_MEM (RXI) : org = 0x00000000 len = 0x00000100 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
21 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
22 /* Boot Sector */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
23 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
24 /* COMMENT1 stuff is commented out when using the 1.22e compiler */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
25 /* COMMENT2 stuff ditto, but when using 2.54 */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
26 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
27 B_MEM (RXI) : org = 0x00000100 len = 0x00001f00 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
28 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
29 /* Magic Word for Calypso Boot ROM */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
30 MWC_MEM (RXI) : org = 0x00002000 len = 0x00000004 fill = 0x0000001 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
31 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
32 /* Program Memory */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
33 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
34 P_MEM1 (RXI) : org = 0x00004000 len = 0x00000700 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
35 P_MEM2 (RXI) : org = 0x00004700 len = 0x00000004 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
36 P_MEM3 (RXI) : org = 0x00004704 len = 0x00400000 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
37 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
38 /* FFS Area */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
39 FFS_MEM (RX) : org = 0x00700000 len = 0x00100000 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
40 /**************************************************************************/ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
41 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
42 /* CS1: External SRAM 1 Mbytes ********************************************/ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
43 /* Data Memory */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
44 D_MEM1 (RW) : org = 0x01000000 len = 0x00100000 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
45 /**************************************************************************/ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
46 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
47 /* CS2: External SRAM 8 Mbytes ********************************************/ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
48 /* Data Memory */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
49 D_MEM2 (RW) : org = 0x01800000 len = 0x00800000 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
50 /**************************************************************************/ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
51 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
52 /* CS6: Calypso Internal SRAM 512 kbytes **********************************/ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
53 /* Code & Variables Memory */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
54 S_MEM (RXW) : org = 0x00800000 len = 0x00080000 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
55 /**************************************************************************/ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
56 } |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
57 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
58 /***********************************************/ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
59 /* SPECIFY THE SECTIONS ALLOCATION INTO MEMORY */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
60 /***********************************************/ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
61 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
62 /* |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
63 * Since the bootloader directly calls the INT_Initialize() routine located |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
64 * in int.s, this int.s code must always be mapped at the same address |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
65 * (usually in the second flash sector). Its length is about 0x500 bytes. |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
66 * Then comes the code that need to be loaded into the internal RAM. |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
67 */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
68 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
69 SECTIONS |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
70 { |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
71 .intvecs : {} > I_MEM /* Interrupt Vectors Table */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
72 .monitor : > B_MEM /* Monitor Constants & Code */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
73 { |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
74 $(CONST_BOOT_LIB) |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
75 } |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
76 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
77 .inttext : {} > P_MEM1 /* int.s Code */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
78 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
79 .bss_dar : > D_MEM1 /* DAR SWE Variables */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
80 { |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
81 $(BSS_DAR_LIB) |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
82 } |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
83 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
84 /* |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
85 * The .bss section should not be split to ensure it is initialized to 0 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
86 * each time the SW is reset. So the whole .bss is mapped either in D_MEM1 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
87 * or in D_MEM2. |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
88 */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
89 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
90 .bss : > D_MEM1 | D_MEM2 /* Global & Static Variables */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
91 { |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
92 $(BSS_BOOT_LIB) |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
93 } |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
94 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
95 /* |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
96 * All .bss sections, which must be mapped in internal RAM must be |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
97 * grouped in order to initialized the corresponding memory to 0. |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
98 * This initialization is done in int.s file before calling the Nucleus |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
99 * routine. |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
100 */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
101 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
102 GROUP |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
103 { |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
104 S_D_Mem /* Label of start address of .bss section in Int. RAM */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
105 .DintMem |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
106 { |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
107 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
108 /* |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
109 * .bss sections of the application |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
110 */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
111 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
112 $(BSS_LIBS) |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
113 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
114 } |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
115 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
116 API_HISR_stack : {} |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
117 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
118 E_D_Mem /* Label of end address of .bss section in Int. RAM */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
119 } > S_MEM |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
120 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
121 /* |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
122 * .text and .const sections which must be mapped in internal RAM. |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
123 */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
124 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
125 .ldfl : {} > P_MEM2 /* Used to know the start load address */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
126 GROUP load = P_MEM3, run = S_MEM |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
127 { |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
128 S_P_Mem /* Label of start address of .text & .const sections in Int. RAM */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
129 .PIntMem |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
130 { |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
131 /* |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
132 * .text and .const sections of the application. |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
133 * |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
134 * The .veneer sections correspond exactly to .text:v&n sections |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
135 * implementing the veneer functions. The .text:v$n -> .veneer |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
136 * translation is performed by PTOOL software when PTOOL_OPTIONS |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
137 * environement variable is set to veneer_section. |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
138 */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
139 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
140 $(CONST_LIBS) |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
141 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
142 } |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
143 E_P_Mem /* Label of end address of .text and .const sections in Int. RAM */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
144 } |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
145 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
146 /* |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
147 * The rest of the code is mapped in flash, however the trampolines |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
148 * load address should be consistent with .text. |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
149 */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
150 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
151 COMMENT2START |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
152 `trampolines load = P_MEM3, run = S_MEM |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
153 COMMENT2END |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
154 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
155 .text : {} > P_MEM3 /* Code */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
156 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
157 /* |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
158 * The rest of the constants is mapped in flash. |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
159 * The .cinit section should not be split. |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
160 */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
161 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
162 .cinit : {} > P_MEM3 /* Initialization Tables */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
163 .const : {} > P_MEM3 /* Constant Data */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
164 KadaAPI : {} > P_MEM3 /* ROMized CLDC */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
165 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
166 .javastack: {} >> D_MEM1 | D_MEM2 /* Java stack */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
167 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
168 .stackandheap : > D_MEM1 /* System Stacks, etc... */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
169 { |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
170 /* Leave 20 32bit words for register pushes. */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
171 . = align(8); |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
172 . += 20 * 4; |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
173 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
174 /* Stack for abort and/or undefined modes. */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
175 exception_stack = .; |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
176 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
177 /* Leave 38 32bit words for state saving on exceptions. */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
178 _xdump_buffer = .; |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
179 . += 38 * 4; |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
180 . = align(8); |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
181 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
182 /* Beginning of stacks and heap area - 2.75 kbytes (int.s) */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
183 stack_segment = .; |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
184 . += 0xB00; |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
185 } |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
186 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
187 .data : {} > D_MEM1 /* Initialized Data */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
188 .sysmem : {} > D_MEM1 /* Dynamic Memory Allocation Area */ |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
189 |
|
336edc558a30
compacted linker script template for the D-Sample target
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
190 } |
