2 FreeRTOS MCF5235 port - Copyright (C) 2006 Christian Walter.
4 This file is part of the FreeRTOS distribution.
6 FreeRTOS is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
11 FreeRTOS is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with FreeRTOS; if not, write to the Free Software
18 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20 A special exception to the GPL can be applied should you wish to distribute
21 a combined work that includes FreeRTOS, without being obliged to provide
22 the source code for any proprietary components. See the licensing section
23 of http://www.FreeRTOS.org for full details of how and when the exception
26 ***************************************************************************
27 See http://www.FreeRTOS.org for documentation, latest information, license
28 and contact details. Please ensure to read the configuration and relevant
29 port sections of the online documentation.
30 ***************************************************************************
37 .extern decrement_timers
41 .equ MCF_PIT_PCSR0, IPSBAR + 0x150000
42 .equ MCF_PIT_PCSR_PIF, 0x0004
44 .section .vector_rom, "x"
46 .long __stack /* Reset: Initial Stack Pointer */
47 .long start /* Reset: Initial Program Counter */
48 .long VecDefault /* Bus Error */
49 .long VecDefault /* Address Error */
50 .long VecDefault /* Illegal Instruction */
51 .long VecDefault /* Zero Divison */
52 .space 4 /* reserved */
53 .space 4 /* reserved */
54 .long VecDefault /* Privilege Violation */
55 .long VecDefault /* Trace */
56 .long VecDefault /* Unimplemented line-a opcode */
57 .long VecDefault /* Unimplemented line-b opcode */
58 .long VecDefault /* Non-PC breakpoint debug interrupt */
59 .long VecDefault /* PC breakpoint debug interrupt */
60 .long VecDefault /* Format Error */
61 .long VecDefault /* Uninitialized Interrupt */
63 .long IRQSpurious /* Spurious Interrupt */
64 .long IRQDefault /* Level 1 Interrupt */
65 .long IRQDefault /* Level 2 Interrupt */
66 .long IRQDefault /* Level 3 Interrupt */
67 .long IRQDefault /* Level 4 Interrupt */
68 .long IRQDefault /* Level 5 Interrupt */
69 .long IRQDefault /* Level 6 Interrupt */
70 .long IRQDefault /* Level 7 Interrupt */
72 .long TrapDefault /* TRAP 0 */
73 .long TrapDefault /* TRAP 1 */
74 .long TrapDefault /* TRAP 2 */
75 .long TrapDefault /* TRAP 3 */
76 .long TrapDefault /* TRAP 4 */
77 .long TrapDefault /* TRAP 5 */
78 .long TrapDefault /* TRAP 6 */
79 .long TrapDefault /* TRAP 7 */
80 .long TrapDefault /* TRAP 8 */
81 .long TrapDefault /* TRAP 9 */
82 .long TrapDefault /* TRAP 10 */
83 .long TrapDefault /* TRAP 11 */
84 .long TrapDefault /* TRAP 12 */
85 .long TrapDefault /* TRAP 13 */
86 .long TrapDefault /* TRAP 14 */
87 .long TrapDefault /* TRAP 15 */
89 .long IRQDefault /* User-Defined Interrupt 0 */
90 .long IRQDefault /* User-Defined Interrupt 1 */
91 .long IRQDefault /* User-Defined Interrupt 2 */
92 .long IRQDefault /* User-Defined Interrupt 3 */
93 .long IRQDefault /* User-Defined Interrupt 4 */
94 .long IRQDefault /* User-Defined Interrupt 5 */
95 .long IRQDefault /* User-Defined Interrupt 6 */
96 .long IRQDefault /* User-Defined Interrupt 7 */
97 .long IRQDefault /* User-Defined Interrupt 8 */
98 .long IRQDefault /* User-Defined Interrupt 9 */
99 .long IRQDefault /* User-Defined Interrupt 10 */
100 .long IRQDefault /* User-Defined Interrupt 11 */
101 .long IRQDefault /* User-Defined Interrupt 12 */
102 .long IRQDefault /* User-Defined Interrupt 13 */
103 .long IRQDefault /* User-Defined Interrupt 14 */
104 .long IRQDefault /* User-Defined Interrupt 15 */
105 .long IRQDefault /* User-Defined Interrupt 16 */
106 .long IRQDefault /* User-Defined Interrupt 17 */
107 .long IRQDefault /* User-Defined Interrupt 18 */
108 .long IRQDefault /* User-Defined Interrupt 19 */
109 .long IRQDefault /* User-Defined Interrupt 20 */
110 .long IRQDefault /* User-Defined Interrupt 21 */
111 .long IRQDefault /* User-Defined Interrupt 22 */
112 .long IRQDefault /* Transmit frame interrupt */
113 .long IRQDefault /* Transmit buffer interrupt */
114 .long IRQDefault /* Transmit FIFO underrun */
115 .long IRQDefault /* Collision retry limit */
116 .long IRQDefault /* Receive frame interrupt */
117 .long IRQDefault /* Receive buffer interrupt */
118 .long IRQDefault /* MII interrupt */
119 .long IRQDefault /* Late collision */
120 .long IRQDefault /* Heartbeat error */
121 .long IRQDefault /* Graceful stop complete */
122 .long IRQDefault /* Ethernet bus error */
123 .long IRQDefault /* Babbling transmit error */
124 .long IRQDefault /* Babbling receive error */
125 .long IRQDefault /* Timer interrupt */
126 .long IRQDefault /* User-Defined Interrupt 37 */
127 .long IRQDefault /* User-Defined Interrupt 38 */
128 .long IRQDefault /* User-Defined Interrupt 39 */
129 .long IRQDefault /* User-Defined Interrupt 40 */
130 .long IRQDefault /* User-Defined Interrupt 41 */
131 .long IRQDefault /* User-Defined Interrupt 42 */
132 .long IRQDefault /* User-Defined Interrupt 43 */
133 .long IRQDefault /* User-Defined Interrupt 44 */
134 .long IRQDefault /* User-Defined Interrupt 45 */
135 .long IRQDefault /* User-Defined Interrupt 46 */
136 .long IRQDefault /* User-Defined Interrupt 47 */
137 .long IRQDefault /* User-Defined Interrupt 48 */
138 .long IRQDefault /* User-Defined Interrupt 49 */
139 .long IRQDefault /* User-Defined Interrupt 50 */
140 .long IRQDefault /* User-Defined Interrupt 51 */
141 .long IRQDefault /* User-Defined Interrupt 52 */
142 .long IRQDefault /* User-Defined Interrupt 53 */
143 .long IRQDefault /* User-Defined Interrupt 54 */
144 .long IRQDefault /* User-Defined Interrupt 55 */
145 .long IRQDefault /* User-Defined Interrupt 56 */
146 .long IRQDefault /* User-Defined Interrupt 57 */
147 .long IRQDefault /* User-Defined Interrupt 58 */
148 .long IRQDefault /* User-Defined Interrupt 59 */
149 .long IRQDefault /* User-Defined Interrupt 60 */
150 .long IRQDefault /* User-Defined Interrupt 61 */
151 .long IRQDefault /* User-Defined Interrupt 62 */
152 .long IRQDefault /* User-Defined Interrupt 63 */
153 .long IRQDefault /* User-Defined Interrupt 64 */
154 .long IRQDefault /* User-Defined Interrupt 65 */
155 .long IRQDefault /* User-Defined Interrupt 66 */
156 .long IRQDefault /* User-Defined Interrupt 67 */
157 .long IRQDefault /* User-Defined Interrupt 68 */
158 .long IRQDefault /* User-Defined Interrupt 69 */
159 .long IRQDefault /* User-Defined Interrupt 70 */
160 .long IRQDefault /* User-Defined Interrupt 71 */
161 .long IRQDefault /* User-Defined Interrupt 72 */
162 .long IRQDefault /* User-Defined Interrupt 73 */
163 .long IRQDefault /* User-Defined Interrupt 74 */
164 .long IRQDefault /* User-Defined Interrupt 75 */
165 .long IRQDefault /* User-Defined Interrupt 76 */
166 .long IRQDefault /* User-Defined Interrupt 77 */
167 .long IRQDefault /* User-Defined Interrupt 78 */
168 .long IRQDefault /* User-Defined Interrupt 79 */
169 .long IRQDefault /* User-Defined Interrupt 80 */
170 .long IRQDefault /* User-Defined Interrupt 81 */
171 .long IRQDefault /* User-Defined Interrupt 82 */
172 .long IRQDefault /* User-Defined Interrupt 83 */
173 .long IRQDefault /* User-Defined Interrupt 84 */
174 .long IRQDefault /* User-Defined Interrupt 85 */
175 .long IRQDefault /* User-Defined Interrupt 86 */
176 .long IRQDefault /* User-Defined Interrupt 87 */
177 .long IRQDefault /* User-Defined Interrupt 88 */
178 .long IRQDefault /* User-Defined Interrupt 89 */
179 .long IRQDefault /* User-Defined Interrupt 90 */
180 .long IRQDefault /* User-Defined Interrupt 91 */
181 .long IRQDefault /* User-Defined Interrupt 92 */
182 .long IRQDefault /* User-Defined Interrupt 93 */
183 .long IRQDefault /* User-Defined Interrupt 94 */
184 .long IRQDefault /* User-Defined Interrupt 95 */
185 .long IRQDefault /* User-Defined Interrupt 96 */
186 .long IRQDefault /* User-Defined Interrupt 97 */
187 .long IRQDefault /* User-Defined Interrupt 98 */
188 .long IRQDefault /* User-Defined Interrupt 99 */
189 .long IRQDefault /* User-Defined Interrupt 100 */
190 .long IRQDefault /* User-Defined Interrupt 101 */
191 .long IRQDefault /* User-Defined Interrupt 102 */
192 .long IRQDefault /* User-Defined Interrupt 103 */
193 .long IRQDefault /* User-Defined Interrupt 104 */
194 .long IRQDefault /* User-Defined Interrupt 105 */
195 .long IRQDefault /* User-Defined Interrupt 106 */
196 .long IRQDefault /* User-Defined Interrupt 107 */
197 .long IRQDefault /* User-Defined Interrupt 108 */
198 .long IRQDefault /* User-Defined Interrupt 109 */
199 .long IRQDefault /* User-Defined Interrupt 110 */
200 .long IRQDefault /* User-Defined Interrupt 111 */
201 .long IRQDefault /* User-Defined Interrupt 112 */
202 .long IRQDefault /* User-Defined Interrupt 113 */
203 .long IRQDefault /* User-Defined Interrupt 114 */
204 .long IRQDefault /* User-Defined Interrupt 115 */
205 .long IRQDefault /* User-Defined Interrupt 116 */
206 .long IRQDefault /* User-Defined Interrupt 117 */
207 .long IRQDefault /* User-Defined Interrupt 118 */
208 .long IRQDefault /* User-Defined Interrupt 119 */
209 .long IRQDefault /* User-Defined Interrupt 120 */
210 .long IRQDefault /* User-Defined Interrupt 121 */
211 .long IRQDefault /* User-Defined Interrupt 122 */
212 .long IRQDefault /* User-Defined Interrupt 123 */
213 .long IRQDefault /* User-Defined Interrupt 124 */
214 .long IRQDefault /* User-Defined Interrupt 125 */
215 .long IRQDefault /* User-Defined Interrupt 126 */
216 .long IRQDefault /* User-Defined Interrupt 127 */
217 .long IRQDefault /* User-Defined Interrupt 128 */
218 .long IRQDefault /* User-Defined Interrupt 129 */
219 .long IRQDefault /* User-Defined Interrupt 130 */
220 .long IRQDefault /* User-Defined Interrupt 131 */
221 .long IRQDefault /* User-Defined Interrupt 132 */
222 .long IRQDefault /* User-Defined Interrupt 133 */
223 .long IRQDefault /* User-Defined Interrupt 134 */
224 .long IRQDefault /* User-Defined Interrupt 135 */
225 .long IRQDefault /* User-Defined Interrupt 136 */
226 .long IRQDefault /* User-Defined Interrupt 137 */
227 .long IRQDefault /* User-Defined Interrupt 138 */
228 .long IRQDefault /* User-Defined Interrupt 139 */
229 .long IRQDefault /* User-Defined Interrupt 140 */
230 .long IRQDefault /* User-Defined Interrupt 141 */
231 .long IRQDefault /* User-Defined Interrupt 142 */
232 .long IRQDefault /* User-Defined Interrupt 143 */
233 .long IRQDefault /* User-Defined Interrupt 144 */
234 .long IRQDefault /* User-Defined Interrupt 145 */
235 .long IRQDefault /* User-Defined Interrupt 146 */
236 .long IRQDefault /* User-Defined Interrupt 147 */
237 .long IRQDefault /* User-Defined Interrupt 148 */
238 .long IRQDefault /* User-Defined Interrupt 149 */
239 .long IRQDefault /* User-Defined Interrupt 150 */
240 .long IRQDefault /* User-Defined Interrupt 151 */
241 .long IRQDefault /* User-Defined Interrupt 152 */
242 .long IRQDefault /* User-Defined Interrupt 153 */
243 .long IRQDefault /* User-Defined Interrupt 154 */
244 .long IRQDefault /* User-Defined Interrupt 155 */
245 .long IRQDefault /* User-Defined Interrupt 156 */
246 .long IRQDefault /* User-Defined Interrupt 157 */
247 .long IRQDefault /* User-Defined Interrupt 158 */
248 .long IRQDefault /* User-Defined Interrupt 159 */
249 .long IRQDefault /* User-Defined Interrupt 160 */
250 .long IRQDefault /* User-Defined Interrupt 161 */
251 .long IRQDefault /* User-Defined Interrupt 162 */
252 .long IRQDefault /* User-Defined Interrupt 163 */
253 .long IRQDefault /* User-Defined Interrupt 164 */
254 .long IRQDefault /* User-Defined Interrupt 165 */
255 .long IRQDefault /* User-Defined Interrupt 166 */
256 .long IRQDefault /* User-Defined Interrupt 167 */
257 .long IRQDefault /* User-Defined Interrupt 168 */
258 .long IRQDefault /* User-Defined Interrupt 169 */
259 .long IRQDefault /* User-Defined Interrupt 170 */
260 .long IRQDefault /* User-Defined Interrupt 171 */
261 .long IRQDefault /* User-Defined Interrupt 172 */
262 .long IRQDefault /* User-Defined Interrupt 173 */
263 .long IRQDefault /* User-Defined Interrupt 174 */
264 .long IRQDefault /* User-Defined Interrupt 175 */
265 .long IRQDefault /* User-Defined Interrupt 176 */
266 .long IRQDefault /* User-Defined Interrupt 177 */
267 .long IRQDefault /* User-Defined Interrupt 178 */
268 .long IRQDefault /* User-Defined Interrupt 179 */
269 .long IRQDefault /* User-Defined Interrupt 180 */
270 .long IRQDefault /* User-Defined Interrupt 181 */
271 .long IRQDefault /* User-Defined Interrupt 182 */
272 .long IRQDefault /* User-Defined Interrupt 183 */
273 .long IRQDefault /* User-Defined Interrupt 184 */
274 .long IRQDefault /* User-Defined Interrupt 185 */
275 .long IRQDefault /* User-Defined Interrupt 186 */
276 .long IRQDefault /* User-Defined Interrupt 187 */
277 .long IRQDefault /* User-Defined Interrupt 188 */
278 .long IRQDefault /* User-Defined Interrupt 189 */
279 .long IRQDefault /* User-Defined Interrupt 190 */
280 .long IRQDefault /* User-Defined Interrupt 191 */