diff options
Diffstat (limited to 'lib/chibios-contrib/ext/mcux-sdk/devices/K32L3A60/gcc/startup_K32L3A60_cm4.S')
-rw-r--r-- | lib/chibios-contrib/ext/mcux-sdk/devices/K32L3A60/gcc/startup_K32L3A60_cm4.S | 798 |
1 files changed, 798 insertions, 0 deletions
diff --git a/lib/chibios-contrib/ext/mcux-sdk/devices/K32L3A60/gcc/startup_K32L3A60_cm4.S b/lib/chibios-contrib/ext/mcux-sdk/devices/K32L3A60/gcc/startup_K32L3A60_cm4.S new file mode 100644 index 000000000..268ead019 --- /dev/null +++ b/lib/chibios-contrib/ext/mcux-sdk/devices/K32L3A60/gcc/startup_K32L3A60_cm4.S | |||
@@ -0,0 +1,798 @@ | |||
1 | /* ------------------------------------------------------------------------- */ | ||
2 | /* @file: startup_K32L3A60_cm4.s */ | ||
3 | /* @purpose: CMSIS Cortex-M4 Core Device Startup File */ | ||
4 | /* K32L3A60_cm4 */ | ||
5 | /* @version: 1.0 */ | ||
6 | /* @date: 2019-4-22 */ | ||
7 | /* @build: b190918 */ | ||
8 | /* ------------------------------------------------------------------------- */ | ||
9 | /* */ | ||
10 | /* Copyright 1997-2016 Freescale Semiconductor, Inc. */ | ||
11 | /* Copyright 2016-2019 NXP */ | ||
12 | /* All rights reserved. */ | ||
13 | /* */ | ||
14 | /* SPDX-License-Identifier: BSD-3-Clause */ | ||
15 | /*****************************************************************************/ | ||
16 | /* Version: GCC for ARM Embedded Processors */ | ||
17 | /*****************************************************************************/ | ||
18 | .syntax unified | ||
19 | .arch armv7-m | ||
20 | |||
21 | .section .isr_vector, "a" | ||
22 | .align 2 | ||
23 | .globl __isr_vector | ||
24 | __isr_vector: | ||
25 | .long __StackTop /* Top of Stack */ | ||
26 | .long Reset_Handler /* Reset Handler */ | ||
27 | .long NMI_Handler /* NMI Handler*/ | ||
28 | .long HardFault_Handler /* Hard Fault Handler*/ | ||
29 | .long MemManage_Handler /* MPU Fault Handler*/ | ||
30 | .long BusFault_Handler /* Bus Fault Handler*/ | ||
31 | .long UsageFault_Handler /* Usage Fault Handler*/ | ||
32 | .long 0 /* Reserved*/ | ||
33 | .long 0 /* Reserved*/ | ||
34 | .long 0 /* Reserved*/ | ||
35 | .long 0 /* Reserved*/ | ||
36 | .long SVC_Handler /* SVCall Handler*/ | ||
37 | .long DebugMon_Handler /* Debug Monitor Handler*/ | ||
38 | .long 0 /* Reserved*/ | ||
39 | .long PendSV_Handler /* PendSV Handler*/ | ||
40 | .long SysTick_Handler /* SysTick Handler*/ | ||
41 | |||
42 | /* External Interrupts*/ | ||
43 | .long CTI0_MCM0_IRQHandler /* Cross Trigger Interface 0 / Miscellaneous Control Module*/ | ||
44 | .long DMA0_IRQHandler /* DMA0 channel 0 transfer complete*/ | ||
45 | .long DMA1_IRQHandler /* DMA0 channel 1 transfer complete*/ | ||
46 | .long DMA2_IRQHandler /* DMA0 channel 2 transfer complete*/ | ||
47 | .long DMA3_IRQHandler /* DMA0 channel 3 transfer complete*/ | ||
48 | .long DMA4_IRQHandler /* DMA0 channel 4 transfer complete*/ | ||
49 | .long DMA5_IRQHandler /* DMA0 channel 5 transfer complete*/ | ||
50 | .long DMA6_IRQHandler /* DMA0 channel 6 transfer complete*/ | ||
51 | .long DMA7_IRQHandler /* DMA0 channel 7 transfer complete*/ | ||
52 | .long DMA8_IRQHandler /* DMA0 channel 8 transfer complete*/ | ||
53 | .long DMA9_IRQHandler /* DMA0 channel 9 transfer complete*/ | ||
54 | .long DMA10_IRQHandler /* DMA0 channel 10 transfer complete*/ | ||
55 | .long DMA11_IRQHandler /* DMA0 channel 11 transfer complete*/ | ||
56 | .long DMA12_IRQHandler /* DMA0 channel 12 transfer complete*/ | ||
57 | .long DMA13_IRQHandler /* DMA0 channel 13 transfer complete*/ | ||
58 | .long DMA14_IRQHandler /* DMA0 channel 14 transfer complete*/ | ||
59 | .long DMA15_IRQHandler /* DMA0 channel 15 transfer complete*/ | ||
60 | .long DMA0_Error_IRQHandler /* DMA0 channel 0-15 error interrupt*/ | ||
61 | .long MSMC_IRQHandler /* MSMC (SMC0) interrupt*/ | ||
62 | .long EWM_IRQHandler /* EWM interrupt*/ | ||
63 | .long FTFE_Command_Complete_IRQHandler /* FTFE interrupt*/ | ||
64 | .long FTFE_Read_Collision_IRQHandler /* FTFE interrupt*/ | ||
65 | .long LLWU0_IRQHandler /* Low leakage wakeup 0*/ | ||
66 | .long MUA_IRQHandler /* MU Side A interrupt*/ | ||
67 | .long SPM_IRQHandler /* SPM*/ | ||
68 | .long WDOG0_IRQHandler /* WDOG0 interrupt*/ | ||
69 | .long SCG_IRQHandler /* SCG interrupt*/ | ||
70 | .long LPIT0_IRQHandler /* LPIT0 interrupt*/ | ||
71 | .long RTC_IRQHandler /* RTC Alarm interrupt*/ | ||
72 | .long LPTMR0_IRQHandler /* LPTMR0 interrupt*/ | ||
73 | .long LPTMR1_IRQHandler /* LPTMR1 interrupt*/ | ||
74 | .long TPM0_IRQHandler /* TPM0 single interrupt vector for all sources*/ | ||
75 | .long TPM1_IRQHandler /* TPM1 single interrupt vector for all sources*/ | ||
76 | .long TPM2_IRQHandler /* TPM2 single interrupt vector for all sources*/ | ||
77 | .long EMVSIM0_IRQHandler /* EMVSIM0 interrupt*/ | ||
78 | .long FLEXIO0_IRQHandler /* FLEXIO0*/ | ||
79 | .long LPI2C0_IRQHandler /* LPI2C0 interrupt*/ | ||
80 | .long LPI2C1_IRQHandler /* LPI2C1 interrupt*/ | ||
81 | .long LPI2C2_IRQHandler /* LPI2C2 interrupt*/ | ||
82 | .long I2S0_IRQHandler /* I2S0 interrupt*/ | ||
83 | .long USDHC0_IRQHandler /* SDHC0 interrupt*/ | ||
84 | .long LPSPI0_IRQHandler /* LPSPI0 single interrupt vector for all sources*/ | ||
85 | .long LPSPI1_IRQHandler /* LPSPI1 single interrupt vector for all sources*/ | ||
86 | .long LPSPI2_IRQHandler /* LPSPI2 single interrupt vector for all sources*/ | ||
87 | .long LPUART0_IRQHandler /* LPUART0 status and error*/ | ||
88 | .long LPUART1_IRQHandler /* LPUART1 status and error*/ | ||
89 | .long LPUART2_IRQHandler /* LPUART2 status and error*/ | ||
90 | .long USB0_IRQHandler /* USB0 interrupt*/ | ||
91 | .long PORTA_IRQHandler /* PORTA Pin detect*/ | ||
92 | .long PORTB_IRQHandler /* PORTB Pin detect*/ | ||
93 | .long PORTC_IRQHandler /* PORTC Pin detect*/ | ||
94 | .long PORTD_IRQHandler /* PORTD Pin detect*/ | ||
95 | .long LPADC0_IRQHandler /* LPADC0 interrupt*/ | ||
96 | .long LPCMP0_IRQHandler /* LPCMP0 interrupt*/ | ||
97 | .long LPDAC0_IRQHandler /* LPDAC0 interrupt*/ | ||
98 | .long CAU3_Task_Complete_IRQHandler /* Cryptographic Acceleration Unit version 3 Task Complete*/ | ||
99 | .long CAU3_Security_Violation_IRQHandler /* Cryptographic Acceleration Unit version 3 Security Violation*/ | ||
100 | .long TRNG_IRQHandler /* TRNG interrupt*/ | ||
101 | .long LPIT1_IRQHandler /* LPIT1 interrupt*/ | ||
102 | .long LPTMR2_IRQHandler /* LPTMR2 interrupt*/ | ||
103 | .long TPM3_IRQHandler /* TPM3 single interrupt vector for all sources*/ | ||
104 | .long LPI2C3_IRQHandler /* LPI2C3 interrupt*/ | ||
105 | .long LPSPI3_IRQHandler /* LPSPI3 single interrupt vector for all sources*/ | ||
106 | .long LPUART3_IRQHandler /* LPUART3 status and error*/ | ||
107 | .long PORTE_IRQHandler /* PORTE Pin detect*/ | ||
108 | .long LPCMP1_IRQHandler /* LPCMP1 interrupt*/ | ||
109 | .long DefaultISR /* 82*/ | ||
110 | .long DefaultISR /* 83*/ | ||
111 | .long DefaultISR /* 84*/ | ||
112 | .long DefaultISR /* 85*/ | ||
113 | .long DefaultISR /* 86*/ | ||
114 | .long DefaultISR /* 87*/ | ||
115 | .long DefaultISR /* 88*/ | ||
116 | .long DefaultISR /* 89*/ | ||
117 | .long DefaultISR /* 90*/ | ||
118 | .long DefaultISR /* 91*/ | ||
119 | .long DefaultISR /* 92*/ | ||
120 | .long DefaultISR /* 93*/ | ||
121 | .long DefaultISR /* 94*/ | ||
122 | .long DefaultISR /* 95*/ | ||
123 | .long DefaultISR /* 96*/ | ||
124 | .long DefaultISR /* 97*/ | ||
125 | .long DefaultISR /* 98*/ | ||
126 | .long DefaultISR /* 99*/ | ||
127 | .long DefaultISR /* 100*/ | ||
128 | .long DefaultISR /* 101*/ | ||
129 | .long DefaultISR /* 102*/ | ||
130 | .long DefaultISR /* 103*/ | ||
131 | .long DefaultISR /* 104*/ | ||
132 | .long DefaultISR /* 105*/ | ||
133 | .long DefaultISR /* 106*/ | ||
134 | .long DefaultISR /* 107*/ | ||
135 | .long DefaultISR /* 108*/ | ||
136 | .long DefaultISR /* 109*/ | ||
137 | .long DefaultISR /* 110*/ | ||
138 | .long DefaultISR /* 111*/ | ||
139 | .long DefaultISR /* 112*/ | ||
140 | .long DefaultISR /* 113*/ | ||
141 | .long DefaultISR /* 114*/ | ||
142 | .long DefaultISR /* 115*/ | ||
143 | .long DefaultISR /* 116*/ | ||
144 | .long DefaultISR /* 117*/ | ||
145 | .long DefaultISR /* 118*/ | ||
146 | .long DefaultISR /* 119*/ | ||
147 | .long DefaultISR /* 120*/ | ||
148 | .long DefaultISR /* 121*/ | ||
149 | .long DefaultISR /* 122*/ | ||
150 | .long DefaultISR /* 123*/ | ||
151 | .long DefaultISR /* 124*/ | ||
152 | .long DefaultISR /* 125*/ | ||
153 | .long DefaultISR /* 126*/ | ||
154 | .long DefaultISR /* 127*/ | ||
155 | .long DefaultISR /* 128*/ | ||
156 | .long DefaultISR /* 129*/ | ||
157 | .long DefaultISR /* 130*/ | ||
158 | .long DefaultISR /* 131*/ | ||
159 | .long DefaultISR /* 132*/ | ||
160 | .long DefaultISR /* 133*/ | ||
161 | .long DefaultISR /* 134*/ | ||
162 | .long DefaultISR /* 135*/ | ||
163 | .long DefaultISR /* 136*/ | ||
164 | .long DefaultISR /* 137*/ | ||
165 | .long DefaultISR /* 138*/ | ||
166 | .long DefaultISR /* 139*/ | ||
167 | .long DefaultISR /* 140*/ | ||
168 | .long DefaultISR /* 141*/ | ||
169 | .long DefaultISR /* 142*/ | ||
170 | .long DefaultISR /* 143*/ | ||
171 | .long DefaultISR /* 144*/ | ||
172 | .long DefaultISR /* 145*/ | ||
173 | .long DefaultISR /* 146*/ | ||
174 | .long DefaultISR /* 147*/ | ||
175 | .long DefaultISR /* 148*/ | ||
176 | .long DefaultISR /* 149*/ | ||
177 | .long DefaultISR /* 150*/ | ||
178 | .long DefaultISR /* 151*/ | ||
179 | .long DefaultISR /* 152*/ | ||
180 | .long DefaultISR /* 153*/ | ||
181 | .long DefaultISR /* 154*/ | ||
182 | .long DefaultISR /* 155*/ | ||
183 | .long DefaultISR /* 156*/ | ||
184 | .long DefaultISR /* 157*/ | ||
185 | .long DefaultISR /* 158*/ | ||
186 | .long DefaultISR /* 159*/ | ||
187 | .long DefaultISR /* 160*/ | ||
188 | .long DefaultISR /* 161*/ | ||
189 | .long DefaultISR /* 162*/ | ||
190 | .long DefaultISR /* 163*/ | ||
191 | .long DefaultISR /* 164*/ | ||
192 | .long DefaultISR /* 165*/ | ||
193 | .long DefaultISR /* 166*/ | ||
194 | .long DefaultISR /* 167*/ | ||
195 | .long DefaultISR /* 168*/ | ||
196 | .long DefaultISR /* 169*/ | ||
197 | .long DefaultISR /* 170*/ | ||
198 | .long DefaultISR /* 171*/ | ||
199 | .long DefaultISR /* 172*/ | ||
200 | .long DefaultISR /* 173*/ | ||
201 | .long DefaultISR /* 174*/ | ||
202 | .long DefaultISR /* 175*/ | ||
203 | .long DefaultISR /* 176*/ | ||
204 | .long DefaultISR /* 177*/ | ||
205 | .long DefaultISR /* 178*/ | ||
206 | .long DefaultISR /* 179*/ | ||
207 | .long DefaultISR /* 180*/ | ||
208 | .long DefaultISR /* 181*/ | ||
209 | .long DefaultISR /* 182*/ | ||
210 | .long DefaultISR /* 183*/ | ||
211 | .long DefaultISR /* 184*/ | ||
212 | .long DefaultISR /* 185*/ | ||
213 | .long DefaultISR /* 186*/ | ||
214 | .long DefaultISR /* 187*/ | ||
215 | .long DefaultISR /* 188*/ | ||
216 | .long DefaultISR /* 189*/ | ||
217 | .long DefaultISR /* 190*/ | ||
218 | .long DefaultISR /* 191*/ | ||
219 | .long DefaultISR /* 192*/ | ||
220 | .long DefaultISR /* 193*/ | ||
221 | .long DefaultISR /* 194*/ | ||
222 | .long DefaultISR /* 195*/ | ||
223 | .long DefaultISR /* 196*/ | ||
224 | .long DefaultISR /* 197*/ | ||
225 | .long DefaultISR /* 198*/ | ||
226 | .long DefaultISR /* 199*/ | ||
227 | .long DefaultISR /* 200*/ | ||
228 | .long DefaultISR /* 201*/ | ||
229 | .long DefaultISR /* 202*/ | ||
230 | .long DefaultISR /* 203*/ | ||
231 | .long DefaultISR /* 204*/ | ||
232 | .long DefaultISR /* 205*/ | ||
233 | .long DefaultISR /* 206*/ | ||
234 | .long DefaultISR /* 207*/ | ||
235 | .long DefaultISR /* 208*/ | ||
236 | .long DefaultISR /* 209*/ | ||
237 | .long DefaultISR /* 210*/ | ||
238 | .long DefaultISR /* 211*/ | ||
239 | .long DefaultISR /* 212*/ | ||
240 | .long DefaultISR /* 213*/ | ||
241 | .long DefaultISR /* 214*/ | ||
242 | .long DefaultISR /* 215*/ | ||
243 | .long DefaultISR /* 216*/ | ||
244 | .long DefaultISR /* 217*/ | ||
245 | .long DefaultISR /* 218*/ | ||
246 | .long DefaultISR /* 219*/ | ||
247 | .long DefaultISR /* 220*/ | ||
248 | .long DefaultISR /* 221*/ | ||
249 | .long DefaultISR /* 222*/ | ||
250 | .long DefaultISR /* 223*/ | ||
251 | .long DefaultISR /* 224*/ | ||
252 | .long DefaultISR /* 225*/ | ||
253 | .long DefaultISR /* 226*/ | ||
254 | .long DefaultISR /* 227*/ | ||
255 | .long DefaultISR /* 228*/ | ||
256 | .long DefaultISR /* 229*/ | ||
257 | .long DefaultISR /* 230*/ | ||
258 | .long DefaultISR /* 231*/ | ||
259 | .long DefaultISR /* 232*/ | ||
260 | .long DefaultISR /* 233*/ | ||
261 | .long DefaultISR /* 234*/ | ||
262 | .long DefaultISR /* 235*/ | ||
263 | .long DefaultISR /* 236*/ | ||
264 | .long DefaultISR /* 237*/ | ||
265 | .long DefaultISR /* 238*/ | ||
266 | .long DefaultISR /* 239*/ | ||
267 | .long DefaultISR /* 240*/ | ||
268 | .long DefaultISR /* 241*/ | ||
269 | .long DefaultISR /* 242*/ | ||
270 | .long DefaultISR /* 243*/ | ||
271 | .long DefaultISR /* 244*/ | ||
272 | .long DefaultISR /* 245*/ | ||
273 | .long DefaultISR /* 246*/ | ||
274 | .long DefaultISR /* 247*/ | ||
275 | .long DefaultISR /* 248*/ | ||
276 | .long DefaultISR /* 249*/ | ||
277 | .long DefaultISR /* 250*/ | ||
278 | .long DefaultISR /* 251*/ | ||
279 | .long DefaultISR /* 252*/ | ||
280 | .long DefaultISR /* 253*/ | ||
281 | .long DefaultISR /* 254*/ | ||
282 | .long 0xFFFFFFFF /* Reserved for user TRIM value*/ | ||
283 | |||
284 | .size __isr_vector, . - __isr_vector | ||
285 | |||
286 | .text | ||
287 | .thumb | ||
288 | |||
289 | /* Reset Handler */ | ||
290 | |||
291 | .thumb_func | ||
292 | .align 2 | ||
293 | .globl Reset_Handler | ||
294 | .weak Reset_Handler | ||
295 | .type Reset_Handler, %function | ||
296 | Reset_Handler: | ||
297 | cpsid i /* Mask interrupts */ | ||
298 | .equ VTOR, 0xE000ED08 | ||
299 | ldr r0, =VTOR | ||
300 | ldr r1, =__isr_vector | ||
301 | str r1, [r0] | ||
302 | ldr r2, [r1] | ||
303 | msr msp, r2 | ||
304 | #ifndef __NO_SYSTEM_INIT | ||
305 | ldr r0,=SystemInit | ||
306 | blx r0 | ||
307 | #endif | ||
308 | /* Loop to copy data from read only memory to RAM. The ranges | ||
309 | * of copy from/to are specified by following symbols evaluated in | ||
310 | * linker script. | ||
311 | * __etext: End of code section, i.e., begin of data sections to copy from. | ||
312 | * __data_start__/__data_end__: RAM address range that data should be | ||
313 | * copied to. Both must be aligned to 4 bytes boundary. */ | ||
314 | |||
315 | ldr r1, =__etext | ||
316 | ldr r2, =__data_start__ | ||
317 | ldr r3, =__data_end__ | ||
318 | |||
319 | #ifdef __PERFORMANCE_IMPLEMENTATION | ||
320 | /* Here are two copies of loop implementations. First one favors performance | ||
321 | * and the second one favors code size. Default uses the second one. | ||
322 | * Define macro "__PERFORMANCE_IMPLEMENTATION" in project to use the first one */ | ||
323 | subs r3, r2 | ||
324 | ble .LC1 | ||
325 | .LC0: | ||
326 | subs r3, #4 | ||
327 | ldr r0, [r1, r3] | ||
328 | str r0, [r2, r3] | ||
329 | bgt .LC0 | ||
330 | .LC1: | ||
331 | #else /* code size implemenation */ | ||
332 | .LC0: | ||
333 | cmp r2, r3 | ||
334 | ittt lt | ||
335 | ldrlt r0, [r1], #4 | ||
336 | strlt r0, [r2], #4 | ||
337 | blt .LC0 | ||
338 | #endif | ||
339 | |||
340 | #ifdef __STARTUP_CLEAR_BSS | ||
341 | /* This part of work usually is done in C library startup code. Otherwise, | ||
342 | * define this macro to enable it in this startup. | ||
343 | * | ||
344 | * Loop to zero out BSS section, which uses following symbols | ||
345 | * in linker script: | ||
346 | * __bss_start__: start of BSS section. Must align to 4 | ||
347 | * __bss_end__: end of BSS section. Must align to 4 | ||
348 | */ | ||
349 | ldr r1, =__bss_start__ | ||
350 | ldr r2, =__bss_end__ | ||
351 | |||
352 | movs r0, 0 | ||
353 | .LC2: | ||
354 | cmp r1, r2 | ||
355 | itt lt | ||
356 | strlt r0, [r1], #4 | ||
357 | blt .LC2 | ||
358 | #endif /* __STARTUP_CLEAR_BSS */ | ||
359 | |||
360 | cpsie i /* Unmask interrupts */ | ||
361 | #ifndef __START | ||
362 | #define __START _start | ||
363 | #endif | ||
364 | #ifndef __ATOLLIC__ | ||
365 | ldr r0,=__START | ||
366 | blx r0 | ||
367 | #else | ||
368 | ldr r0,=__libc_init_array | ||
369 | blx r0 | ||
370 | ldr r0,=main | ||
371 | bx r0 | ||
372 | #endif | ||
373 | .pool | ||
374 | .size Reset_Handler, . - Reset_Handler | ||
375 | |||
376 | .align 1 | ||
377 | .thumb_func | ||
378 | .weak DefaultISR | ||
379 | .type DefaultISR, %function | ||
380 | DefaultISR: | ||
381 | b DefaultISR | ||
382 | .size DefaultISR, . - DefaultISR | ||
383 | |||
384 | .align 1 | ||
385 | .thumb_func | ||
386 | .weak NMI_Handler | ||
387 | .type NMI_Handler, %function | ||
388 | NMI_Handler: | ||
389 | ldr r0,=NMI_Handler | ||
390 | bx r0 | ||
391 | .size NMI_Handler, . - NMI_Handler | ||
392 | |||
393 | .align 1 | ||
394 | .thumb_func | ||
395 | .weak HardFault_Handler | ||
396 | .type HardFault_Handler, %function | ||
397 | HardFault_Handler: | ||
398 | ldr r0,=HardFault_Handler | ||
399 | bx r0 | ||
400 | .size HardFault_Handler, . - HardFault_Handler | ||
401 | |||
402 | .align 1 | ||
403 | .thumb_func | ||
404 | .weak SVC_Handler | ||
405 | .type SVC_Handler, %function | ||
406 | SVC_Handler: | ||
407 | ldr r0,=SVC_Handler | ||
408 | bx r0 | ||
409 | .size SVC_Handler, . - SVC_Handler | ||
410 | |||
411 | .align 1 | ||
412 | .thumb_func | ||
413 | .weak PendSV_Handler | ||
414 | .type PendSV_Handler, %function | ||
415 | PendSV_Handler: | ||
416 | ldr r0,=PendSV_Handler | ||
417 | bx r0 | ||
418 | .size PendSV_Handler, . - PendSV_Handler | ||
419 | |||
420 | .align 1 | ||
421 | .thumb_func | ||
422 | .weak SysTick_Handler | ||
423 | .type SysTick_Handler, %function | ||
424 | SysTick_Handler: | ||
425 | ldr r0,=SysTick_Handler | ||
426 | bx r0 | ||
427 | .size SysTick_Handler, . - SysTick_Handler | ||
428 | |||
429 | .align 1 | ||
430 | .thumb_func | ||
431 | .weak DMA0_IRQHandler | ||
432 | .type DMA0_IRQHandler, %function | ||
433 | DMA0_IRQHandler: | ||
434 | ldr r0,=DMA0_DriverIRQHandler | ||
435 | bx r0 | ||
436 | .size DMA0_IRQHandler, . - DMA0_IRQHandler | ||
437 | |||
438 | .align 1 | ||
439 | .thumb_func | ||
440 | .weak DMA1_IRQHandler | ||
441 | .type DMA1_IRQHandler, %function | ||
442 | DMA1_IRQHandler: | ||
443 | ldr r0,=DMA1_DriverIRQHandler | ||
444 | bx r0 | ||
445 | .size DMA1_IRQHandler, . - DMA1_IRQHandler | ||
446 | |||
447 | .align 1 | ||
448 | .thumb_func | ||
449 | .weak DMA2_IRQHandler | ||
450 | .type DMA2_IRQHandler, %function | ||
451 | DMA2_IRQHandler: | ||
452 | ldr r0,=DMA2_DriverIRQHandler | ||
453 | bx r0 | ||
454 | .size DMA2_IRQHandler, . - DMA2_IRQHandler | ||
455 | |||
456 | .align 1 | ||
457 | .thumb_func | ||
458 | .weak DMA3_IRQHandler | ||
459 | .type DMA3_IRQHandler, %function | ||
460 | DMA3_IRQHandler: | ||
461 | ldr r0,=DMA3_DriverIRQHandler | ||
462 | bx r0 | ||
463 | .size DMA3_IRQHandler, . - DMA3_IRQHandler | ||
464 | |||
465 | .align 1 | ||
466 | .thumb_func | ||
467 | .weak DMA4_IRQHandler | ||
468 | .type DMA4_IRQHandler, %function | ||
469 | DMA4_IRQHandler: | ||
470 | ldr r0,=DMA4_DriverIRQHandler | ||
471 | bx r0 | ||
472 | .size DMA4_IRQHandler, . - DMA4_IRQHandler | ||
473 | |||
474 | .align 1 | ||
475 | .thumb_func | ||
476 | .weak DMA5_IRQHandler | ||
477 | .type DMA5_IRQHandler, %function | ||
478 | DMA5_IRQHandler: | ||
479 | ldr r0,=DMA5_DriverIRQHandler | ||
480 | bx r0 | ||
481 | .size DMA5_IRQHandler, . - DMA5_IRQHandler | ||
482 | |||
483 | .align 1 | ||
484 | .thumb_func | ||
485 | .weak DMA6_IRQHandler | ||
486 | .type DMA6_IRQHandler, %function | ||
487 | DMA6_IRQHandler: | ||
488 | ldr r0,=DMA6_DriverIRQHandler | ||
489 | bx r0 | ||
490 | .size DMA6_IRQHandler, . - DMA6_IRQHandler | ||
491 | |||
492 | .align 1 | ||
493 | .thumb_func | ||
494 | .weak DMA7_IRQHandler | ||
495 | .type DMA7_IRQHandler, %function | ||
496 | DMA7_IRQHandler: | ||
497 | ldr r0,=DMA7_DriverIRQHandler | ||
498 | bx r0 | ||
499 | .size DMA7_IRQHandler, . - DMA7_IRQHandler | ||
500 | |||
501 | .align 1 | ||
502 | .thumb_func | ||
503 | .weak DMA8_IRQHandler | ||
504 | .type DMA8_IRQHandler, %function | ||
505 | DMA8_IRQHandler: | ||
506 | ldr r0,=DMA8_DriverIRQHandler | ||
507 | bx r0 | ||
508 | .size DMA8_IRQHandler, . - DMA8_IRQHandler | ||
509 | |||
510 | .align 1 | ||
511 | .thumb_func | ||
512 | .weak DMA9_IRQHandler | ||
513 | .type DMA9_IRQHandler, %function | ||
514 | DMA9_IRQHandler: | ||
515 | ldr r0,=DMA9_DriverIRQHandler | ||
516 | bx r0 | ||
517 | .size DMA9_IRQHandler, . - DMA9_IRQHandler | ||
518 | |||
519 | .align 1 | ||
520 | .thumb_func | ||
521 | .weak DMA10_IRQHandler | ||
522 | .type DMA10_IRQHandler, %function | ||
523 | DMA10_IRQHandler: | ||
524 | ldr r0,=DMA10_DriverIRQHandler | ||
525 | bx r0 | ||
526 | .size DMA10_IRQHandler, . - DMA10_IRQHandler | ||
527 | |||
528 | .align 1 | ||
529 | .thumb_func | ||
530 | .weak DMA11_IRQHandler | ||
531 | .type DMA11_IRQHandler, %function | ||
532 | DMA11_IRQHandler: | ||
533 | ldr r0,=DMA11_DriverIRQHandler | ||
534 | bx r0 | ||
535 | .size DMA11_IRQHandler, . - DMA11_IRQHandler | ||
536 | |||
537 | .align 1 | ||
538 | .thumb_func | ||
539 | .weak DMA12_IRQHandler | ||
540 | .type DMA12_IRQHandler, %function | ||
541 | DMA12_IRQHandler: | ||
542 | ldr r0,=DMA12_DriverIRQHandler | ||
543 | bx r0 | ||
544 | .size DMA12_IRQHandler, . - DMA12_IRQHandler | ||
545 | |||
546 | .align 1 | ||
547 | .thumb_func | ||
548 | .weak DMA13_IRQHandler | ||
549 | .type DMA13_IRQHandler, %function | ||
550 | DMA13_IRQHandler: | ||
551 | ldr r0,=DMA13_DriverIRQHandler | ||
552 | bx r0 | ||
553 | .size DMA13_IRQHandler, . - DMA13_IRQHandler | ||
554 | |||
555 | .align 1 | ||
556 | .thumb_func | ||
557 | .weak DMA14_IRQHandler | ||
558 | .type DMA14_IRQHandler, %function | ||
559 | DMA14_IRQHandler: | ||
560 | ldr r0,=DMA14_DriverIRQHandler | ||
561 | bx r0 | ||
562 | .size DMA14_IRQHandler, . - DMA14_IRQHandler | ||
563 | |||
564 | .align 1 | ||
565 | .thumb_func | ||
566 | .weak DMA15_IRQHandler | ||
567 | .type DMA15_IRQHandler, %function | ||
568 | DMA15_IRQHandler: | ||
569 | ldr r0,=DMA15_DriverIRQHandler | ||
570 | bx r0 | ||
571 | .size DMA15_IRQHandler, . - DMA15_IRQHandler | ||
572 | |||
573 | .align 1 | ||
574 | .thumb_func | ||
575 | .weak DMA0_Error_IRQHandler | ||
576 | .type DMA0_Error_IRQHandler, %function | ||
577 | DMA0_Error_IRQHandler: | ||
578 | ldr r0,=DMA0_Error_DriverIRQHandler | ||
579 | bx r0 | ||
580 | .size DMA0_Error_IRQHandler, . - DMA0_Error_IRQHandler | ||
581 | |||
582 | .align 1 | ||
583 | .thumb_func | ||
584 | .weak FLEXIO0_IRQHandler | ||
585 | .type FLEXIO0_IRQHandler, %function | ||
586 | FLEXIO0_IRQHandler: | ||
587 | ldr r0,=FLEXIO0_DriverIRQHandler | ||
588 | bx r0 | ||
589 | .size FLEXIO0_IRQHandler, . - FLEXIO0_IRQHandler | ||
590 | |||
591 | .align 1 | ||
592 | .thumb_func | ||
593 | .weak LPI2C0_IRQHandler | ||
594 | .type LPI2C0_IRQHandler, %function | ||
595 | LPI2C0_IRQHandler: | ||
596 | ldr r0,=LPI2C0_DriverIRQHandler | ||
597 | bx r0 | ||
598 | .size LPI2C0_IRQHandler, . - LPI2C0_IRQHandler | ||
599 | |||
600 | .align 1 | ||
601 | .thumb_func | ||
602 | .weak LPI2C1_IRQHandler | ||
603 | .type LPI2C1_IRQHandler, %function | ||
604 | LPI2C1_IRQHandler: | ||
605 | ldr r0,=LPI2C1_DriverIRQHandler | ||
606 | bx r0 | ||
607 | .size LPI2C1_IRQHandler, . - LPI2C1_IRQHandler | ||
608 | |||
609 | .align 1 | ||
610 | .thumb_func | ||
611 | .weak LPI2C2_IRQHandler | ||
612 | .type LPI2C2_IRQHandler, %function | ||
613 | LPI2C2_IRQHandler: | ||
614 | ldr r0,=LPI2C2_DriverIRQHandler | ||
615 | bx r0 | ||
616 | .size LPI2C2_IRQHandler, . - LPI2C2_IRQHandler | ||
617 | |||
618 | .align 1 | ||
619 | .thumb_func | ||
620 | .weak I2S0_IRQHandler | ||
621 | .type I2S0_IRQHandler, %function | ||
622 | I2S0_IRQHandler: | ||
623 | ldr r0,=I2S0_DriverIRQHandler | ||
624 | bx r0 | ||
625 | .size I2S0_IRQHandler, . - I2S0_IRQHandler | ||
626 | |||
627 | .align 1 | ||
628 | .thumb_func | ||
629 | .weak USDHC0_IRQHandler | ||
630 | .type USDHC0_IRQHandler, %function | ||
631 | USDHC0_IRQHandler: | ||
632 | ldr r0,=USDHC0_DriverIRQHandler | ||
633 | bx r0 | ||
634 | .size USDHC0_IRQHandler, . - USDHC0_IRQHandler | ||
635 | |||
636 | .align 1 | ||
637 | .thumb_func | ||
638 | .weak LPSPI0_IRQHandler | ||
639 | .type LPSPI0_IRQHandler, %function | ||
640 | LPSPI0_IRQHandler: | ||
641 | ldr r0,=LPSPI0_DriverIRQHandler | ||
642 | bx r0 | ||
643 | .size LPSPI0_IRQHandler, . - LPSPI0_IRQHandler | ||
644 | |||
645 | .align 1 | ||
646 | .thumb_func | ||
647 | .weak LPSPI1_IRQHandler | ||
648 | .type LPSPI1_IRQHandler, %function | ||
649 | LPSPI1_IRQHandler: | ||
650 | ldr r0,=LPSPI1_DriverIRQHandler | ||
651 | bx r0 | ||
652 | .size LPSPI1_IRQHandler, . - LPSPI1_IRQHandler | ||
653 | |||
654 | .align 1 | ||
655 | .thumb_func | ||
656 | .weak LPSPI2_IRQHandler | ||
657 | .type LPSPI2_IRQHandler, %function | ||
658 | LPSPI2_IRQHandler: | ||
659 | ldr r0,=LPSPI2_DriverIRQHandler | ||
660 | bx r0 | ||
661 | .size LPSPI2_IRQHandler, . - LPSPI2_IRQHandler | ||
662 | |||
663 | .align 1 | ||
664 | .thumb_func | ||
665 | .weak LPUART0_IRQHandler | ||
666 | .type LPUART0_IRQHandler, %function | ||
667 | LPUART0_IRQHandler: | ||
668 | ldr r0,=LPUART0_DriverIRQHandler | ||
669 | bx r0 | ||
670 | .size LPUART0_IRQHandler, . - LPUART0_IRQHandler | ||
671 | |||
672 | .align 1 | ||
673 | .thumb_func | ||
674 | .weak LPUART1_IRQHandler | ||
675 | .type LPUART1_IRQHandler, %function | ||
676 | LPUART1_IRQHandler: | ||
677 | ldr r0,=LPUART1_DriverIRQHandler | ||
678 | bx r0 | ||
679 | .size LPUART1_IRQHandler, . - LPUART1_IRQHandler | ||
680 | |||
681 | .align 1 | ||
682 | .thumb_func | ||
683 | .weak LPUART2_IRQHandler | ||
684 | .type LPUART2_IRQHandler, %function | ||
685 | LPUART2_IRQHandler: | ||
686 | ldr r0,=LPUART2_DriverIRQHandler | ||
687 | bx r0 | ||
688 | .size LPUART2_IRQHandler, . - LPUART2_IRQHandler | ||
689 | |||
690 | .align 1 | ||
691 | .thumb_func | ||
692 | .weak LPI2C3_IRQHandler | ||
693 | .type LPI2C3_IRQHandler, %function | ||
694 | LPI2C3_IRQHandler: | ||
695 | ldr r0,=LPI2C3_DriverIRQHandler | ||
696 | bx r0 | ||
697 | .size LPI2C3_IRQHandler, . - LPI2C3_IRQHandler | ||
698 | |||
699 | .align 1 | ||
700 | .thumb_func | ||
701 | .weak LPSPI3_IRQHandler | ||
702 | .type LPSPI3_IRQHandler, %function | ||
703 | LPSPI3_IRQHandler: | ||
704 | ldr r0,=LPSPI3_DriverIRQHandler | ||
705 | bx r0 | ||
706 | .size LPSPI3_IRQHandler, . - LPSPI3_IRQHandler | ||
707 | |||
708 | .align 1 | ||
709 | .thumb_func | ||
710 | .weak LPUART3_IRQHandler | ||
711 | .type LPUART3_IRQHandler, %function | ||
712 | LPUART3_IRQHandler: | ||
713 | ldr r0,=LPUART3_DriverIRQHandler | ||
714 | bx r0 | ||
715 | .size LPUART3_IRQHandler, . - LPUART3_IRQHandler | ||
716 | |||
717 | |||
718 | /* Macro to define default handlers. Default handler | ||
719 | * will be weak symbol and just dead loops. They can be | ||
720 | * overwritten by other handlers */ | ||
721 | .macro def_irq_handler handler_name | ||
722 | .weak \handler_name | ||
723 | .set \handler_name, DefaultISR | ||
724 | .endm | ||
725 | |||
726 | /* Exception Handlers */ | ||
727 | def_irq_handler MemManage_Handler | ||
728 | def_irq_handler BusFault_Handler | ||
729 | def_irq_handler UsageFault_Handler | ||
730 | def_irq_handler DebugMon_Handler | ||
731 | def_irq_handler CTI0_MCM0_IRQHandler | ||
732 | def_irq_handler DMA0_DriverIRQHandler | ||
733 | def_irq_handler DMA1_DriverIRQHandler | ||
734 | def_irq_handler DMA2_DriverIRQHandler | ||
735 | def_irq_handler DMA3_DriverIRQHandler | ||
736 | def_irq_handler DMA4_DriverIRQHandler | ||
737 | def_irq_handler DMA5_DriverIRQHandler | ||
738 | def_irq_handler DMA6_DriverIRQHandler | ||
739 | def_irq_handler DMA7_DriverIRQHandler | ||
740 | def_irq_handler DMA8_DriverIRQHandler | ||
741 | def_irq_handler DMA9_DriverIRQHandler | ||
742 | def_irq_handler DMA10_DriverIRQHandler | ||
743 | def_irq_handler DMA11_DriverIRQHandler | ||
744 | def_irq_handler DMA12_DriverIRQHandler | ||
745 | def_irq_handler DMA13_DriverIRQHandler | ||
746 | def_irq_handler DMA14_DriverIRQHandler | ||
747 | def_irq_handler DMA15_DriverIRQHandler | ||
748 | def_irq_handler DMA0_Error_DriverIRQHandler | ||
749 | def_irq_handler MSMC_IRQHandler | ||
750 | def_irq_handler EWM_IRQHandler | ||
751 | def_irq_handler FTFE_Command_Complete_IRQHandler | ||
752 | def_irq_handler FTFE_Read_Collision_IRQHandler | ||
753 | def_irq_handler LLWU0_IRQHandler | ||
754 | def_irq_handler MUA_IRQHandler | ||
755 | def_irq_handler SPM_IRQHandler | ||
756 | def_irq_handler WDOG0_IRQHandler | ||
757 | def_irq_handler SCG_IRQHandler | ||
758 | def_irq_handler LPIT0_IRQHandler | ||
759 | def_irq_handler RTC_IRQHandler | ||
760 | def_irq_handler LPTMR0_IRQHandler | ||
761 | def_irq_handler LPTMR1_IRQHandler | ||
762 | def_irq_handler TPM0_IRQHandler | ||
763 | def_irq_handler TPM1_IRQHandler | ||
764 | def_irq_handler TPM2_IRQHandler | ||
765 | def_irq_handler EMVSIM0_IRQHandler | ||
766 | def_irq_handler FLEXIO0_DriverIRQHandler | ||
767 | def_irq_handler LPI2C0_DriverIRQHandler | ||
768 | def_irq_handler LPI2C1_DriverIRQHandler | ||
769 | def_irq_handler LPI2C2_DriverIRQHandler | ||
770 | def_irq_handler I2S0_DriverIRQHandler | ||
771 | def_irq_handler USDHC0_DriverIRQHandler | ||
772 | def_irq_handler LPSPI0_DriverIRQHandler | ||
773 | def_irq_handler LPSPI1_DriverIRQHandler | ||
774 | def_irq_handler LPSPI2_DriverIRQHandler | ||
775 | def_irq_handler LPUART0_DriverIRQHandler | ||
776 | def_irq_handler LPUART1_DriverIRQHandler | ||
777 | def_irq_handler LPUART2_DriverIRQHandler | ||
778 | def_irq_handler USB0_IRQHandler | ||
779 | def_irq_handler PORTA_IRQHandler | ||
780 | def_irq_handler PORTB_IRQHandler | ||
781 | def_irq_handler PORTC_IRQHandler | ||
782 | def_irq_handler PORTD_IRQHandler | ||
783 | def_irq_handler LPADC0_IRQHandler | ||
784 | def_irq_handler LPCMP0_IRQHandler | ||
785 | def_irq_handler LPDAC0_IRQHandler | ||
786 | def_irq_handler CAU3_Task_Complete_IRQHandler | ||
787 | def_irq_handler CAU3_Security_Violation_IRQHandler | ||
788 | def_irq_handler TRNG_IRQHandler | ||
789 | def_irq_handler LPIT1_IRQHandler | ||
790 | def_irq_handler LPTMR2_IRQHandler | ||
791 | def_irq_handler TPM3_IRQHandler | ||
792 | def_irq_handler LPI2C3_DriverIRQHandler | ||
793 | def_irq_handler LPSPI3_DriverIRQHandler | ||
794 | def_irq_handler LPUART3_DriverIRQHandler | ||
795 | def_irq_handler PORTE_IRQHandler | ||
796 | def_irq_handler LPCMP1_IRQHandler | ||
797 | |||
798 | .end | ||