]> git.sur5r.net Git - freertos/blob - Demo/ARM7_AT91SAM7S64_IAR/resource/at91SAM7S64_16KRAM.xcl
First version under SVN is V4.0.1
[freertos] / Demo / ARM7_AT91SAM7S64_IAR / resource / at91SAM7S64_16KRAM.xcl
1 // ---------------------------------------------------------\r
2 //   ATMEL Microcontroller Software Support  -  ROUSSET  -\r
3 // ---------------------------------------------------------\r
4 // The software is delivered "AS IS" without warranty or \r
5 // condition of any  kind, either express, implied or \r
6 // statutory. This includes without limitation any warranty \r
7 // or condition with respect to merchantability or fitness \r
8 // for any particular purpose, or against the infringements of\r
9 // intellectual property rights of others.\r
10 // ---------------------------------------------------------\r
11 //  File: at91SAM7S64_16KRAM.xlc\r
12 //\r
13 //  1.1 16/Jun/04 JPP    : Creation for 4.11A\r
14 //\r
15 //  $Revision: 1.1.1.1 $\r
16 //\r
17 // ---------------------------------------------------------\r
18 \r
19 //*************************************************************************\r
20 // XLINK command file template for EWARM/ICCARM\r
21 //\r
22 // Usage:  xlink  -f lnkarm  <your_object_file(s)>\r
23 //                -s <program start label>  <C/C++ runtime library>\r
24 //\r
25 // $Revision: 1.1.1.1 $\r
26 //*************************************************************************\r
27 \r
28 //************************************************\r
29 // Inform the linker about the CPU family used.\r
30 // AT91SAM7S64 Memory mapping\r
31 // No remap\r
32 //  ROMSTART\r
33 //  Start address 0x0000 0000 \r
34 //  Size  64 Kbo  0x0001 0000 \r
35 //  RAMSTART\r
36 //  Start address 0x0020 0000 \r
37 //  Size  16 Kbo  0x0000 4000 \r
38 // Remap done\r
39 //  RAMSTART\r
40 //  Start address 0x0000 0000 \r
41 //  Size  16 Kbo  0x0000 4000 \r
42 //  ROMSTART\r
43 //  Start address 0x0010 0000 \r
44 //  Size  64 Kbo  0x0001 0000 \r
45 \r
46 //************************************************\r
47 -carm\r
48 \r
49 //*************************************************************************\r
50 // Internal Ram segments mapped AFTER REMAP 16 K.\r
51 //*************************************************************************\r
52 // Use these addresses for the .\r
53 -Z(CONST)INTRAMSTART_REMAP=00000000\r
54 -Z(CONST)INTRAMEND_REMAP=00003FFF\r
55 \r
56 //*************************************************************************\r
57 // Read-only segments mapped to Flash 64 K.\r
58 //*************************************************************************\r
59 -DROMSTART=00000000\r
60 -DROMEND=0000FFFF\r
61 //*************************************************************************\r
62 // Read/write segments mapped to RAM.\r
63 //*************************************************************************\r
64 -DRAMSTART=00000000\r
65 -DRAMEND=00003FFF\r
66 \r
67 //************************************************\r
68 // Address range for reset and exception\r
69 // vectors (INTVEC).\r
70 // The vector area is 32 bytes, \r
71 // an additional 32 bytes is allocated for the\r
72 // constant table used by ldr PC in cstartup.s79.\r
73 //************************************************\r
74 -Z(CODE)INTVEC=00-3F\r
75 \r
76 //************************************************\r
77 // Startup code and exception routines (ICODE).\r
78 //************************************************\r
79 -Z(CODE)ICODE,DIFUNCT=ROMSTART-ROMEND\r
80 -Z(CODE)SWITAB=ROMSTART-ROMEND\r
81 \r
82 //************************************************\r
83 // Code segments may be placed anywhere.\r
84 //************************************************\r
85 -Z(CODE)CODE=ROMSTART-ROMEND\r
86 \r
87 //************************************************\r
88 // Various constants and initializers.\r
89 //************************************************\r
90 -Z(CONST)INITTAB,DATA_ID,DATA_C=ROMSTART-ROMEND\r
91 -Z(CONST)CHECKSUM=ROMSTART-ROMEND\r
92 \r
93 //************************************************\r
94 // Data segments.\r
95 //************************************************\r
96 -Z(DATA)DATA_I,DATA_Z,DATA_N=RAMSTART-RAMEND\r
97 \r
98 //************************************************\r
99 // __ramfunc code copied to and executed from RAM.\r
100 //************************************************\r
101 -Z(DATA)CODE_I=RAMSTART-RAMEND\r
102 \r
103 //************************************************\r
104 // ICCARM produces code for __ramfunc functions in\r
105 // CODE_I segments. The -Q XLINK command line\r
106 // option redirects XLINK to emit the code in the\r
107 // debug information associated with the CODE_I\r
108 // segment, where the code will execute.\r
109 //************************************************\r
110 \r
111 //*************************************************************************\r
112 // Stack and heap segments.\r
113 //*************************************************************************\r
114 -D_CSTACK_SIZE=(100*4)\r
115 -D_IRQ_STACK_SIZE=(2*8*4)\r
116 \r
117 -Z(DATA)CSTACK+_CSTACK_SIZE=RAMSTART-RAMEND\r
118 -Z(DATA)IRQ_STACK+_IRQ_STACK_SIZE=RAMSTART-RAMEND\r
119 \r
120 //*************************************************************************\r
121 // ELF/DWARF support.\r
122 //\r
123 // Uncomment the line "-Felf" below to generate ELF/DWARF output.\r
124 // Available format specifiers are:\r
125 //\r
126 //   "-yn": Suppress DWARF debug output\r
127 //   "-yp": Multiple ELF program sections\r
128 //   "-yas": Format suitable for debuggers from ARM Ltd (also sets -p flag)\r
129 //\r
130 // "-Felf" and the format specifiers can also be supplied directly as\r
131 // command line options, or selected from the Xlink Output tab in the\r
132 // IAR Embedded Workbench.\r
133 //*************************************************************************\r
134 \r
135 // -Felf\r