]> git.sur5r.net Git - freertos/blob
ff927d543d22889a10037c51384573b1b8d7729f
[freertos] /
1 /*******************************************************************************\r
2  * (c) Copyright 2012-2013 Microsemi SoC Products Group.  All rights reserved.\r
3  * \r
4  *  SmartFusion2 vector table and startup code for CodeSourcery G++.\r
5  *\r
6  * SVN $Revision: 5269 $\r
7  * SVN $Date: 2013-03-21 20:53:38 +0000 (Thu, 21 Mar 2013) $\r
8  */\r
9 \r
10         .syntax unified\r
11     .cpu cortex-m3\r
12     .thumb\r
13     \r
14 \r
15 /*==============================================================================\r
16  * Vector table\r
17  */\r
18     .global     g_pfnVectors\r
19     .section    .isr_vector,"a",%progbits\r
20     .type       g_pfnVectors, %object\r
21     .size       g_pfnVectors, .-g_pfnVectors\r
22     \r
23 g_pfnVectors:\r
24     .word  _estack\r
25     .word  Reset_Handler\r
26     .word  NMI_Handler\r
27     .word  HardFault_Handler\r
28     .word  MemManage_Handler\r
29     .word  BusFault_Handler\r
30     .word  UsageFault_Handler\r
31     .word  0\r
32     .word  0\r
33     .word  0\r
34     .word  0\r
35     .word  SVC_Handler\r
36     .word  DebugMon_Handler\r
37     .word  0\r
38     .word  PendSV_Handler\r
39     .word  SysTick_Handler\r
40     .word  WdogWakeup_IRQHandler\r
41     .word  RTC_Wakeup_IRQHandler\r
42     .word  SPI0_IRQHandler\r
43     .word  SPI1_IRQHandler\r
44     .word  I2C0_IRQHandler\r
45     .word  I2C0_SMBAlert_IRQHandler\r
46     .word  I2C0_SMBus_IRQHandler\r
47     .word  I2C1_IRQHandler\r
48     .word  I2C1_SMBAlert_IRQHandler\r
49     .word  I2C1_SMBus_IRQHandler\r
50     .word  UART0_IRQHandler\r
51     .word  UART1_IRQHandler\r
52     .word  EthernetMAC_IRQHandler\r
53     .word  DMA_IRQHandler\r
54     .word  Timer1_IRQHandler\r
55     .word  Timer2_IRQHandler\r
56     .word  CAN_IRQHandler\r
57     .word  ENVM0_IRQHandler\r
58     .word  ENVM1_IRQHandler\r
59     .word  ComBlk_IRQHandler\r
60     .word  USB_IRQHandler\r
61     .word  USB_DMA_IRQHandler\r
62     .word  PLL_Lock_IRQHandler\r
63     .word  PLL_LockLost_IRQHandler\r
64     .word  CommSwitchError_IRQHandler\r
65     .word  CacheError_IRQHandler\r
66     .word  DDR_IRQHandler\r
67     .word  HPDMA_Complete_IRQHandler\r
68     .word  HPDMA_Error_IRQHandler\r
69     .word  ECC_Error_IRQHandler\r
70     .word  MDDR_IOCalib_IRQHandler\r
71     .word  FAB_PLL_Lock_IRQHandler\r
72     .word  FAB_PLL_LockLost_IRQHandler\r
73     .word  FIC64_IRQHandler\r
74     .word  FabricIrq0_IRQHandler\r
75     .word  FabricIrq1_IRQHandler\r
76     .word  FabricIrq2_IRQHandler\r
77     .word  FabricIrq3_IRQHandler\r
78     .word  FabricIrq4_IRQHandler\r
79     .word  FabricIrq5_IRQHandler\r
80     .word  FabricIrq6_IRQHandler\r
81     .word  FabricIrq7_IRQHandler\r
82     .word  FabricIrq8_IRQHandler\r
83     .word  FabricIrq9_IRQHandler\r
84     .word  FabricIrq10_IRQHandler\r
85     .word  FabricIrq11_IRQHandler\r
86     .word  FabricIrq12_IRQHandler\r
87     .word  FabricIrq13_IRQHandler\r
88     .word  FabricIrq14_IRQHandler\r
89     .word  FabricIrq15_IRQHandler    \r
90     .word  GPIO0_IRQHandler\r
91     .word  GPIO1_IRQHandler\r
92     .word  GPIO2_IRQHandler\r
93     .word  GPIO3_IRQHandler\r
94     .word  GPIO4_IRQHandler\r
95     .word  GPIO5_IRQHandler\r
96     .word  GPIO6_IRQHandler\r
97     .word  GPIO7_IRQHandler\r
98     .word  GPIO8_IRQHandler\r
99     .word  GPIO9_IRQHandler\r
100     .word  GPIO10_IRQHandler\r
101     .word  GPIO11_IRQHandler\r
102     .word  GPIO12_IRQHandler\r
103     .word  GPIO13_IRQHandler\r
104     .word  GPIO14_IRQHandler\r
105     .word  GPIO15_IRQHandler\r
106     .word  GPIO16_IRQHandler\r
107     .word  GPIO17_IRQHandler\r
108     .word  GPIO18_IRQHandler\r
109     .word  GPIO19_IRQHandler\r
110     .word  GPIO20_IRQHandler\r
111     .word  GPIO21_IRQHandler\r
112     .word  GPIO22_IRQHandler\r
113     .word  GPIO23_IRQHandler\r
114     .word  GPIO24_IRQHandler\r
115     .word  GPIO25_IRQHandler\r
116     .word  GPIO26_IRQHandler\r
117     .word  GPIO27_IRQHandler\r
118     .word  GPIO28_IRQHandler\r
119     .word  GPIO29_IRQHandler\r
120     .word  GPIO30_IRQHandler\r
121     .word  GPIO31_IRQHandler\r
122 \r
123         \r
124 /*==============================================================================\r
125  * Reset_Handler\r
126  */\r
127     .global Reset_Handler\r
128     .type   Reset_Handler, %function\r
129 Reset_Handler:\r
130 _start:\r
131 /*------------------------------------------------------------------------------        \r
132  * Call CMSIS system init function.\r
133  */\r
134     ldr     r0, =SystemInit\r
135     blx     r0\r
136     \r
137 /*------------------------------------------------------------------------------         \r
138  * Check if the executable is built for NVM LMA mirrored to VMA address.\r
139  * This is done for debugging executables running out of eNVM with SoftConsole.\r
140  * The .text section should not be copied in this case since both the LMA and\r
141  * VMA point at the eNVM despite the LMA and VMa having different values.\r
142  */\r
143     ldr r0, =__mirrored_nvm\r
144     cmp r0, #0\r
145     bne copy_data\r
146     \r
147 /*------------------------------------------------------------------------------         \r
148  * Copy code section.\r
149  */\r
150         ldr r0, =__text_load\r
151         ldr r1, =__text_start\r
152         ldr r2, =_etext\r
153         cmp r0, r1\r
154         beq copy_data\r
155 copy_code_loop:\r
156         cmp r1, r2\r
157     itt ne\r
158         ldrne r3, [r0], #4\r
159         strne r3, [r1], #4\r
160         bne copy_code_loop\r
161 \r
162 /*------------------------------------------------------------------------------        \r
163  * Copy data section.\r
164  */\r
165 copy_data:\r
166         ldr r0, =__data_load\r
167         ldr r1, =__data_start\r
168         ldr r2, =_edata\r
169         cmp r0, r1\r
170         beq clear_bss\r
171 copy_data_loop:\r
172         cmp r1, r2\r
173     itt ne\r
174         ldrne r3, [r0], #4\r
175         strne r3, [r1], #4\r
176         bne copy_data_loop\r
177         \r
178 /*------------------------------------------------------------------------------        \r
179  * Clear .bss\r
180  */\r
181 clear_bss:\r
182         ldr r0, =0\r
183         ldr r1, =__bss_start__\r
184         ldr r2, =__bss_end__\r
185 clear_bss_loop:\r
186         cmp r1, r2\r
187     it ne\r
188         strne r0, [r1], #4\r
189         bne clear_bss_loop\r
190 \r
191 /*------------------------------------------------------------------------------        \r
192  * Call global constructors\r
193  */\r
194     /*\r
195      * Align to word and use 32-bits LDR instruction to ensure the ADD instruction\r
196      * taking PC as argument is aligned on a word boundary.\r
197      */\r
198     .align 4\r
199 call_glob_ctor:\r
200         ldr.w r0, =__libc_init_array\r
201     add lr, pc, #3\r
202         bx r0\r
203 \r
204 /*------------------------------------------------------------------------------        \r
205  * branch to main.\r
206  */\r
207 branch_to_main:          \r
208         mov     r0, #0          /*  no arguments  */\r
209         mov     r1, #0          /*  no argv either */\r
210     ldr pc, =main\r
211 \r
212 ExitLoop:\r
213     B ExitLoop\r
214 \r
215 /*==============================================================================\r
216  * NMI_Handler\r
217  */\r
218     .weak   NMI_Handler\r
219     .type   NMI_Handler, %function\r
220 NMI_Handler:\r
221     B .\r
222 \r
223 /*==============================================================================\r
224  * HardFault_Handler\r
225  */\r
226     .weak   HardFault_Handler\r
227     .type   HardFault_Handler, %function\r
228 HardFault_Handler:\r
229     B .\r
230 \r
231 /*==============================================================================\r
232  * MemManage_Handler\r
233  */\r
234     .weak   MemManage_Handler\r
235     .type   MemManage_Handler, %function\r
236 MemManage_Handler:\r
237     B .\r
238 \r
239 /*==============================================================================\r
240  * BusFault_Handler\r
241  */\r
242     .weak   BusFault_Handler\r
243     .type   BusFault_Handler, %function\r
244 BusFault_Handler:\r
245     B .\r
246 \r
247 /*==============================================================================\r
248  * UsageFault_Handler\r
249  */\r
250     .weak   UsageFault_Handler\r
251     .type   UsageFault_Handler, %function\r
252 UsageFault_Handler:\r
253     B .\r
254 \r
255 /*==============================================================================\r
256  * SVC_Handler\r
257  */\r
258     .weak   SVC_Handler\r
259     .type   SVC_Handler, %function\r
260 SVC_Handler:\r
261     B .\r
262 \r
263 /*==============================================================================\r
264  * DebugMon_Handler\r
265  */\r
266     .weak   DebugMon_Handler\r
267     .type   DebugMon_Handler, %function\r
268 DebugMon_Handler:\r
269     B .\r
270 \r
271 /*==============================================================================\r
272  * PendSV_Handler\r
273  */\r
274     .weak   PendSV_Handler\r
275     .type   PendSV_Handler, %function\r
276 PendSV_Handler:\r
277     B .\r
278 \r
279 /*==============================================================================\r
280  * SysTick_Handler\r
281  */\r
282     .weak   SysTick_Handler\r
283     .type   SysTick_Handler, %function\r
284 SysTick_Handler:\r
285     B .\r
286 \r
287 /*==============================================================================\r
288  * WdogWakeup_IRQHandler\r
289  */\r
290     .weak   WdogWakeup_IRQHandler\r
291     .type   WdogWakeup_IRQHandler, %function\r
292 WdogWakeup_IRQHandler:\r
293     B .\r
294 \r
295 /*==============================================================================\r
296  * RTC_Wakeup_IRQHandler\r
297  */\r
298     .weak   RTC_Wakeup_IRQHandler\r
299     .type   RTC_Wakeup_IRQHandler, %function\r
300 RTC_Wakeup_IRQHandler:\r
301     B .\r
302 \r
303 /*==============================================================================\r
304  * SPI0_IRQHandler\r
305  */\r
306     .weak   SPI0_IRQHandler\r
307     .type   SPI0_IRQHandler, %function\r
308 SPI0_IRQHandler:\r
309     B .\r
310 \r
311 /*==============================================================================\r
312  * SPI1_IRQHandler\r
313  */\r
314     .weak   SPI1_IRQHandler\r
315     .type   SPI1_IRQHandler, %function\r
316 SPI1_IRQHandler:\r
317     B .\r
318 \r
319 /*==============================================================================\r
320  * I2C0_IRQHandler\r
321  */\r
322     .weak   I2C0_IRQHandler\r
323     .type   I2C0_IRQHandler, %function\r
324 I2C0_IRQHandler:\r
325     B .\r
326 \r
327 /*==============================================================================\r
328  * I2C0_SMBAlert_IRQHandler\r
329  */\r
330     .weak   I2C0_SMBAlert_IRQHandler\r
331     .type   I2C0_SMBAlert_IRQHandler, %function\r
332 I2C0_SMBAlert_IRQHandler:\r
333     B .\r
334 \r
335 /*==============================================================================\r
336  * I2C0_SMBus_IRQHandler\r
337  */\r
338     .weak   I2C0_SMBus_IRQHandler\r
339     .type   I2C0_SMBus_IRQHandler, %function\r
340 I2C0_SMBus_IRQHandler:\r
341     B .\r
342 \r
343 /*==============================================================================\r
344  * I2C1_IRQHandler\r
345  */\r
346     .weak   I2C1_IRQHandler\r
347     .type   I2C1_IRQHandler, %function\r
348 I2C1_IRQHandler:\r
349     B .\r
350 \r
351 /*==============================================================================\r
352  * I2C1_SMBAlert_IRQHandler\r
353  */\r
354     .weak   I2C1_SMBAlert_IRQHandler\r
355     .type   I2C1_SMBAlert_IRQHandler, %function\r
356 I2C1_SMBAlert_IRQHandler:\r
357     B .\r
358 \r
359 /*==============================================================================\r
360  * I2C1_SMBus_IRQHandler\r
361  */\r
362     .weak   I2C1_SMBus_IRQHandler\r
363     .type   I2C1_SMBus_IRQHandler, %function\r
364 I2C1_SMBus_IRQHandler:\r
365     B .\r
366 \r
367 /*==============================================================================\r
368  * UART0_IRQHandler\r
369  */\r
370     .weak   UART0_IRQHandler\r
371     .type   UART0_IRQHandler, %function\r
372 UART0_IRQHandler:\r
373     B .\r
374 \r
375 /*==============================================================================\r
376  * UART1_IRQHandler\r
377  */\r
378     .weak   UART1_IRQHandler\r
379     .type   UART1_IRQHandler, %function\r
380 UART1_IRQHandler:\r
381     B .\r
382     \r
383 /*==============================================================================\r
384  * EthernetMAC_IRQHandler\r
385  */\r
386     .weak   EthernetMAC_IRQHandler\r
387     .type   EthernetMAC_IRQHandler, %function\r
388 EthernetMAC_IRQHandler:\r
389     B .\r
390 \r
391 /*==============================================================================\r
392  * DMA_IRQHandler\r
393  */\r
394     .weak   DMA_IRQHandler\r
395     .type   DMA_IRQHandler, %function\r
396 DMA_IRQHandler:\r
397     B .\r
398 \r
399 /*==============================================================================\r
400  * Timer1_IRQHandler\r
401  */\r
402     .weak   Timer1_IRQHandler\r
403     .type   Timer1_IRQHandler, %function\r
404 Timer1_IRQHandler:\r
405     B .\r
406 \r
407 /*==============================================================================\r
408  * Timer2_IRQHandler\r
409  */\r
410     .weak   Timer2_IRQHandler\r
411     .type   Timer2_IRQHandler, %function\r
412 Timer2_IRQHandler:\r
413     B .\r
414     \r
415 /*==============================================================================\r
416  * CAN_IRQHandler\r
417  */\r
418     .weak   CAN_IRQHandler\r
419     .type   CAN_IRQHandler, %function\r
420 CAN_IRQHandler:\r
421     B .\r
422     \r
423 /*==============================================================================\r
424  * ENVM0_IRQHandler\r
425  */\r
426     .weak   ENVM0_IRQHandler\r
427     .type   ENVM0_IRQHandler, %function\r
428 ENVM0_IRQHandler:\r
429     B .\r
430 \r
431 /*==============================================================================\r
432  * ENVM1_IRQHandler\r
433  */\r
434     .weak   ENVM1_IRQHandler\r
435     .type   ENVM1_IRQHandler, %function\r
436 ENVM1_IRQHandler:\r
437     B .\r
438 \r
439 /*==============================================================================\r
440  * ComBlk_IRQHandler\r
441  */\r
442     .weak   ComBlk_IRQHandler\r
443     .type   ComBlk_IRQHandler, %function\r
444 ComBlk_IRQHandler:\r
445     B .\r
446     \r
447 /*==============================================================================\r
448  * USB_IRQHandler\r
449  */\r
450     .weak   USB_IRQHandler\r
451     .type   USB_IRQHandler, %function\r
452 USB_IRQHandler:\r
453     B .\r
454     \r
455 /*==============================================================================\r
456  * USB_DMA_IRQHandler\r
457  */\r
458     .weak   USB_DMA_IRQHandler\r
459     .type   USB_DMA_IRQHandler, %function\r
460 USB_DMA_IRQHandler:\r
461     B .\r
462 \r
463 /*==============================================================================\r
464  * PLL_Lock_IRQHandler\r
465  */\r
466     .weak   PLL_Lock_IRQHandler\r
467     .type   PLL_Lock_IRQHandler, %function\r
468 PLL_Lock_IRQHandler:\r
469     B .\r
470 \r
471 /*==============================================================================\r
472  * PLL_LockLost_IRQHandler\r
473  */\r
474     .weak   PLL_LockLost_IRQHandler\r
475     .type   PLL_LockLost_IRQHandler, %function\r
476 PLL_LockLost_IRQHandler:\r
477     B .\r
478 \r
479 /*==============================================================================\r
480  * CommSwitchError_IRQHandler\r
481  */\r
482     .weak   CommSwitchError_IRQHandler\r
483     .type   CommSwitchError_IRQHandler, %function\r
484 CommSwitchError_IRQHandler:\r
485     B .\r
486 \r
487 /*==============================================================================\r
488  * CacheError_IRQHandler\r
489  */\r
490     .weak   CacheError_IRQHandler\r
491     .type   CacheError_IRQHandler, %function\r
492 CacheError_IRQHandler:\r
493     B .\r
494 \r
495 /*==============================================================================\r
496  * DDR_IRQHandler\r
497  */\r
498     .weak   DDR_IRQHandler\r
499     .type   DDR_IRQHandler, %function\r
500 DDR_IRQHandler:\r
501     B .\r
502 \r
503 /*==============================================================================\r
504  * HPDMA_Complete_IRQHandler\r
505  */\r
506     .weak   HPDMA_Complete_IRQHandler\r
507     .type   HPDMA_Complete_IRQHandler, %function\r
508 HPDMA_Complete_IRQHandler:\r
509     B .\r
510 \r
511 /*==============================================================================\r
512  * HPDMA_Error_IRQHandler\r
513  */\r
514     .weak   HPDMA_Error_IRQHandler\r
515     .type   HPDMA_Error_IRQHandler, %function\r
516 HPDMA_Error_IRQHandler:\r
517     B .\r
518     \r
519 /*==============================================================================\r
520  * ECC_Error_IRQHandler\r
521  */\r
522     .weak   ECC_Error_IRQHandler\r
523     .type   ECC_Error_IRQHandler, %function\r
524 ECC_Error_IRQHandler:\r
525     B .\r
526 \r
527 /*==============================================================================\r
528  * MDDR_IOCalib_IRQHandler\r
529  */\r
530     .weak   MDDR_IOCalib_IRQHandler\r
531     .type   MDDR_IOCalib_IRQHandler, %function\r
532 MDDR_IOCalib_IRQHandler:\r
533     B .\r
534 \r
535 /*==============================================================================\r
536  * FAB_PLL_Lock_IRQHandler\r
537  */\r
538     .weak   FAB_PLL_Lock_IRQHandler\r
539     .type   FAB_PLL_Lock_IRQHandler, %function    \r
540 FAB_PLL_Lock_IRQHandler:\r
541     B .\r
542 \r
543 /*==============================================================================\r
544  * FAB_PLL_LockLost_IRQHandler\r
545  */\r
546     .weak   FAB_PLL_LockLost_IRQHandler\r
547     .type   FAB_PLL_LockLost_IRQHandler, %function        \r
548 FAB_PLL_LockLost_IRQHandler:\r
549     B .\r
550     \r
551 /*==============================================================================\r
552  * FIC64_IRQHandler\r
553  */\r
554     .weak   FIC64_IRQHandler\r
555     .type   FIC64_IRQHandler, %function            \r
556 FIC64_IRQHandler:\r
557     B .\r
558     \r
559 /*==============================================================================\r
560  * FabricIrq0_IRQHandler\r
561  */\r
562     .weak   FabricIrq0_IRQHandler\r
563     .type   FabricIrq0_IRQHandler, %function\r
564 FabricIrq0_IRQHandler:\r
565     B .\r
566 \r
567 /*==============================================================================\r
568  * FabricIrq1_IRQHandler\r
569  */\r
570     .weak   FabricIrq1_IRQHandler\r
571     .type   FabricIrq1_IRQHandler, %function\r
572 FabricIrq1_IRQHandler:\r
573     B .\r
574 \r
575 /*==============================================================================\r
576  * FabricIrq2_IRQHandler\r
577  */\r
578     .weak   FabricIrq2_IRQHandler\r
579     .type   FabricIrq2_IRQHandler, %function\r
580 FabricIrq2_IRQHandler:\r
581     B .\r
582 \r
583 /*==============================================================================\r
584  * FabricIrq3_IRQHandler\r
585  */\r
586     .weak   FabricIrq3_IRQHandler\r
587     .type   FabricIrq3_IRQHandler, %function\r
588 FabricIrq3_IRQHandler:\r
589     B .\r
590 \r
591 /*==============================================================================\r
592  * FabricIrq4_IRQHandler\r
593  */\r
594     .weak   FabricIrq4_IRQHandler\r
595     .type   FabricIrq4_IRQHandler, %function\r
596 FabricIrq4_IRQHandler:\r
597     B .\r
598 \r
599 /*==============================================================================\r
600  * FabricIrq5_IRQHandler\r
601  */\r
602     .weak   FabricIrq5_IRQHandler\r
603     .type   FabricIrq5_IRQHandler, %function\r
604 FabricIrq5_IRQHandler:\r
605     B .\r
606 \r
607 /*==============================================================================\r
608  * FabricIrq6_IRQHandler\r
609  */\r
610     .weak   FabricIrq6_IRQHandler\r
611     .type   FabricIrq6_IRQHandler, %function\r
612 FabricIrq6_IRQHandler:\r
613     B .\r
614 \r
615 /*==============================================================================\r
616  * FabricIrq7_IRQHandler\r
617  */\r
618     .weak   FabricIrq7_IRQHandler\r
619     .type   FabricIrq7_IRQHandler, %function\r
620 FabricIrq7_IRQHandler:\r
621     B .\r
622     \r
623 /*==============================================================================\r
624  * FabricIrq8_IRQHandler\r
625  */\r
626     .weak   FabricIrq8_IRQHandler\r
627     .type   FabricIrq8_IRQHandler, %function\r
628 FabricIrq8_IRQHandler:\r
629     B .\r
630 \r
631 /*==============================================================================\r
632  * FabricIrq9_IRQHandler\r
633  */\r
634     .weak   FabricIrq9_IRQHandler\r
635     .type   FabricIrq9_IRQHandler, %function\r
636 FabricIrq9_IRQHandler:\r
637     B .\r
638 \r
639 /*==============================================================================\r
640  * FabricIrq10_IRQHandler\r
641  */\r
642     .weak   FabricIrq10_IRQHandler\r
643     .type   FabricIrq10_IRQHandler, %function\r
644 FabricIrq10_IRQHandler:\r
645     B .\r
646 \r
647 /*==============================================================================\r
648  * FabricIrq11_IRQHandler\r
649  */\r
650     .weak   FabricIrq11_IRQHandler\r
651     .type   FabricIrq11_IRQHandler, %function\r
652 FabricIrq11_IRQHandler:\r
653     B .\r
654 \r
655 /*==============================================================================\r
656  * FabricIrq12_IRQHandler\r
657  */\r
658     .weak   FabricIrq12_IRQHandler\r
659     .type   FabricIrq12_IRQHandler, %function\r
660 FabricIrq12_IRQHandler:\r
661     B .\r
662 \r
663 /*==============================================================================\r
664  * FabricIrq13_IRQHandler\r
665  */\r
666     .weak   FabricIrq13_IRQHandler\r
667     .type   FabricIrq13_IRQHandler, %function\r
668 FabricIrq13_IRQHandler:\r
669     B .\r
670 \r
671 /*==============================================================================\r
672  * FabricIrq14_IRQHandler\r
673  */\r
674     .weak   FabricIrq14_IRQHandler\r
675     .type   FabricIrq14_IRQHandler, %function\r
676 FabricIrq14_IRQHandler:\r
677     B .\r
678 \r
679 /*==============================================================================\r
680  * FabricIrq15_IRQHandler\r
681  */\r
682     .weak   FabricIrq15_IRQHandler\r
683     .type   FabricIrq15_IRQHandler, %function\r
684 FabricIrq15_IRQHandler:\r
685     B .    \r
686 \r
687 /*==============================================================================\r
688  * GPIO0_IRQHandler\r
689  */\r
690     .weak   GPIO0_IRQHandler\r
691     .type   GPIO0_IRQHandler, %function\r
692 GPIO0_IRQHandler:\r
693     B .\r
694 \r
695 /*==============================================================================\r
696  * GPIO1_IRQHandler\r
697  */\r
698     .weak   GPIO1_IRQHandler\r
699     .type   GPIO1_IRQHandler, %function\r
700 GPIO1_IRQHandler:\r
701     B .\r
702 \r
703 /*==============================================================================\r
704  * GPIO2_IRQHandler\r
705  */\r
706     .weak   GPIO2_IRQHandler\r
707     .type   GPIO2_IRQHandler, %function\r
708 GPIO2_IRQHandler:\r
709     B .\r
710 \r
711 /*==============================================================================\r
712  * GPIO3_IRQHandler\r
713  */\r
714     .weak   GPIO3_IRQHandler\r
715     .type   GPIO3_IRQHandler, %function\r
716 GPIO3_IRQHandler:\r
717     B .\r
718 \r
719 /*==============================================================================\r
720  * GPIO4_IRQHandler\r
721  */\r
722     .weak   GPIO4_IRQHandler\r
723     .type   GPIO4_IRQHandler, %function\r
724 GPIO4_IRQHandler:\r
725     B .\r
726 \r
727 /*==============================================================================\r
728  * GPIO5_IRQHandler\r
729  */\r
730     .weak   GPIO5_IRQHandler\r
731     .type   GPIO5_IRQHandler, %function\r
732 GPIO5_IRQHandler:\r
733     B .\r
734 \r
735 /*==============================================================================\r
736  * GPIO6_IRQHandler\r
737  */\r
738     .weak   GPIO6_IRQHandler\r
739     .type   GPIO6_IRQHandler, %function\r
740 GPIO6_IRQHandler:\r
741     B .\r
742 \r
743 /*==============================================================================\r
744  * GPIO7_IRQHandler\r
745  */\r
746     .weak   GPIO7_IRQHandler\r
747     .type   GPIO7_IRQHandler, %function\r
748 GPIO7_IRQHandler:\r
749     B .\r
750 \r
751 /*==============================================================================\r
752  * GPIO8_IRQHandler\r
753  */\r
754     .weak   GPIO8_IRQHandler\r
755     .type   GPIO8_IRQHandler, %function\r
756 GPIO8_IRQHandler:\r
757     B .\r
758 \r
759 /*==============================================================================\r
760  * GPIO9_IRQHandler\r
761  */\r
762     .weak   GPIO9_IRQHandler\r
763     .type   GPIO9_IRQHandler, %function\r
764 GPIO9_IRQHandler:\r
765     B .\r
766 \r
767 /*==============================================================================\r
768  * GPIO10_IRQHandler\r
769  */\r
770     .weak   GPIO10_IRQHandler\r
771     .type   GPIO10_IRQHandler, %function\r
772 GPIO10_IRQHandler:\r
773     B .\r
774 \r
775 /*==============================================================================\r
776  * GPIO11_IRQHandler\r
777  */\r
778     .weak   GPIO11_IRQHandler\r
779     .type   GPIO11_IRQHandler, %function\r
780 GPIO11_IRQHandler:\r
781     B .\r
782 \r
783 /*==============================================================================\r
784  * GPIO12_IRQHandler\r
785  */\r
786     .weak   GPIO12_IRQHandler\r
787     .type   GPIO12_IRQHandler, %function\r
788 GPIO12_IRQHandler:\r
789     B .\r
790 \r
791 /*==============================================================================\r
792  * GPIO13_IRQHandler\r
793  */\r
794     .weak   GPIO13_IRQHandler\r
795     .type   GPIO13_IRQHandler, %function\r
796 GPIO13_IRQHandler:\r
797     B .\r
798 \r
799 /*==============================================================================\r
800  * GPIO14_IRQHandler\r
801  */\r
802     .weak   GPIO14_IRQHandler\r
803     .type   GPIO14_IRQHandler, %function\r
804 GPIO14_IRQHandler:\r
805     B .\r
806 \r
807 /*==============================================================================\r
808  * GPIO15_IRQHandler\r
809  */\r
810     .weak   GPIO15_IRQHandler\r
811     .type   GPIO15_IRQHandler, %function\r
812 GPIO15_IRQHandler:\r
813     B .\r
814 \r
815 /*==============================================================================\r
816  * GPIO16_IRQHandler\r
817  */\r
818     .weak   GPIO16_IRQHandler\r
819     .type   GPIO16_IRQHandler, %function\r
820 GPIO16_IRQHandler:\r
821     B .\r
822 \r
823 /*==============================================================================\r
824  * GPIO17_IRQHandler\r
825  */\r
826     .weak   GPIO17_IRQHandler\r
827     .type   GPIO17_IRQHandler, %function\r
828 GPIO17_IRQHandler:\r
829     B .\r
830 \r
831 /*==============================================================================\r
832  * GPIO18_IRQHandler\r
833  */\r
834     .weak   GPIO18_IRQHandler\r
835     .type   GPIO18_IRQHandler, %function\r
836 GPIO18_IRQHandler:\r
837     B .\r
838 \r
839 /*==============================================================================\r
840  * GPIO19_IRQHandler\r
841  */\r
842     .weak   GPIO19_IRQHandler\r
843     .type   GPIO19_IRQHandler, %function\r
844 GPIO19_IRQHandler:\r
845     B .\r
846 \r
847 /*==============================================================================\r
848  * GPIO20_IRQHandler\r
849  */\r
850     .weak   GPIO20_IRQHandler\r
851     .type   GPIO20_IRQHandler, %function\r
852 GPIO20_IRQHandler:\r
853     B .\r
854 \r
855 /*==============================================================================\r
856  * GPIO21_IRQHandler\r
857  */\r
858     .weak   GPIO21_IRQHandler\r
859     .type   GPIO21_IRQHandler, %function\r
860 GPIO21_IRQHandler:\r
861     B .\r
862 \r
863 /*==============================================================================\r
864  * GPIO22_IRQHandler\r
865  */\r
866     .weak   GPIO22_IRQHandler\r
867     .type   GPIO22_IRQHandler, %function\r
868 GPIO22_IRQHandler:\r
869     B .\r
870 \r
871 /*==============================================================================\r
872  * GPIO23_IRQHandler\r
873  */\r
874     .weak   GPIO23_IRQHandler\r
875     .type   GPIO23_IRQHandler, %function\r
876 GPIO23_IRQHandler:\r
877     B .\r
878 \r
879 /*==============================================================================\r
880  * GPIO24_IRQHandler\r
881  */\r
882     .weak   GPIO24_IRQHandler\r
883     .type   GPIO24_IRQHandler, %function\r
884 GPIO24_IRQHandler:\r
885     B .\r
886 \r
887 /*==============================================================================\r
888  * GPIO25_IRQHandler\r
889  */\r
890     .weak   GPIO25_IRQHandler\r
891     .type   GPIO25_IRQHandler, %function\r
892 GPIO25_IRQHandler:\r
893     B .\r
894 \r
895 /*==============================================================================\r
896  * GPIO26_IRQHandler\r
897  */\r
898     .weak   GPIO26_IRQHandler\r
899     .type   GPIO26_IRQHandler, %function\r
900 GPIO26_IRQHandler:\r
901     B .\r
902 \r
903 /*==============================================================================\r
904  * GPIO27_IRQHandler\r
905  */\r
906     .weak   GPIO27_IRQHandler\r
907     .type   GPIO27_IRQHandler, %function\r
908 GPIO27_IRQHandler:\r
909     B .\r
910 \r
911 /*==============================================================================\r
912  * GPIO28_IRQHandler\r
913  */\r
914     .weak   GPIO28_IRQHandler\r
915     .type   GPIO28_IRQHandler, %function\r
916 GPIO28_IRQHandler:\r
917     B .\r
918 \r
919 /*==============================================================================\r
920  * GPIO29_IRQHandler\r
921  */\r
922     .weak   GPIO29_IRQHandler\r
923     .type   GPIO29_IRQHandler, %function\r
924 GPIO29_IRQHandler:\r
925     B .\r
926 \r
927 /*==============================================================================\r
928  * GPIO30_IRQHandler\r
929  */\r
930     .weak   GPIO30_IRQHandler\r
931     .type   GPIO30_IRQHandler, %function\r
932 GPIO30_IRQHandler:\r
933     B .\r
934 \r
935 /*==============================================================================\r
936  * GPIO31_IRQHandler\r
937  */\r
938     .weak   GPIO31_IRQHandler\r
939     .type   GPIO31_IRQHandler, %function\r
940 GPIO31_IRQHandler:\r
941     B .\r
942 \r
943 /*==============================================================================\r
944  * mscc_post_hw_cfg_init\r
945  */\r
946     .weak   mscc_post_hw_cfg_init\r
947     .type   mscc_post_hw_cfg_init, %function\r
948 mscc_post_hw_cfg_init:\r
949     BX LR\r
950 \r
951 .end\r