44
44
*/
45
45
46
46
.syntax unified
47
- #if defined(MCU_SERIES_M7 )
47
+ #if defined(MCU_SERIES_F7 )
48
48
.cpu cortex-m7
49
- #else
49
+ #elif defined(MCU_SERIES_F4) || defined(MCU_SERIES_L4)
50
50
.cpu cortex-m4
51
+ #else
52
+ #error "Unknown MCU Series"
51
53
#endif
52
54
.fpu softvfp
53
55
.thumb
@@ -164,7 +166,11 @@ g_pfnVectors:
164
166
165
167
/* External Interrupts */
166
168
.word WWDG_IRQHandler /* Window WatchDog */
169
+ #if defined(MCU_SERIES_L4)
170
+ .word PVD_PVM_IRQHandler /* PVD and PVM through EXTI line detection */
171
+ #else
167
172
.word PVD_IRQHandler /* PVD through EXTI Line detection */
173
+ #endif
168
174
.word TAMP_STAMP_IRQHandler /* Tamper and TimeStamps through the EXTI line */
169
175
.word RTC_WKUP_IRQHandler /* RTC Wakeup through the EXTI line */
170
176
.word FLASH_IRQHandler /* FLASH */
@@ -174,6 +180,16 @@ g_pfnVectors:
174
180
.word EXTI2_IRQHandler /* EXTI Line2 */
175
181
.word EXTI3_IRQHandler /* EXTI Line3 */
176
182
.word EXTI4_IRQHandler /* EXTI Line4 */
183
+ #if defined(MCU_SERIES_L4)
184
+ .word DMA1_Channel1_IRQHandler /* DMA1 Channel 1 */
185
+ .word DMA1_Channel2_IRQHandler /* DMA1 Channel 2 */
186
+ .word DMA1_Channel3_IRQHandler /* DMA1 Channel 3 */
187
+ .word DMA1_Channel4_IRQHandler /* DMA1 Channel 4 */
188
+ .word DMA1_Channel5_IRQHandler /* DMA1 Channel 5 */
189
+ .word DMA1_Channel6_IRQHandler /* DMA1 Channel 6 */
190
+ .word DMA1_Channel7_IRQHandler /* DMA1 Channel 7 */
191
+ .word ADC1_2_IRQHandler /* ADC1 and ADC2 */
192
+ #else
177
193
.word DMA1_Stream0_IRQHandler /* DMA1 Stream 0 */
178
194
.word DMA1_Stream1_IRQHandler /* DMA1 Stream 1 */
179
195
.word DMA1_Stream2_IRQHandler /* DMA1 Stream 2 */
@@ -182,14 +198,21 @@ g_pfnVectors:
182
198
.word DMA1_Stream5_IRQHandler /* DMA1 Stream 5 */
183
199
.word DMA1_Stream6_IRQHandler /* DMA1 Stream 6 */
184
200
.word ADC_IRQHandler /* ADC1, ADC2 and ADC3s */
201
+ #endif
185
202
.word CAN1_TX_IRQHandler /* CAN1 TX */
186
203
.word CAN1_RX0_IRQHandler /* CAN1 RX0 */
187
204
.word CAN1_RX1_IRQHandler /* CAN1 RX1 */
188
205
.word CAN1_SCE_IRQHandler /* CAN1 SCE */
189
206
.word EXTI9_5_IRQHandler /* External Line[9:5]s */
207
+ #if defined(MCU_SERIES_L4)
208
+ .word TIM1_BRK_TIM15_IRQHandler /* TIM1 Break and TIM15 */
209
+ .word TIM1_UP_TIM16_IRQHandler /* TIM1 Update and TIM16 */
210
+ .word TIM1_TRG_COM_TIM17_IRQHandler /* TIM1 Trigger and Commutation and TIM17 */
211
+ #else
190
212
.word TIM1_BRK_TIM9_IRQHandler /* TIM1 Break and TIM9 */
191
213
.word TIM1_UP_TIM10_IRQHandler /* TIM1 Update and TIM10 */
192
214
.word TIM1_TRG_COM_TIM11_IRQHandler /* TIM1 Trigger and Commutation and TIM11 */
215
+ #endif
193
216
.word TIM1_CC_IRQHandler /* TIM1 Capture Compare */
194
217
.word TIM2_IRQHandler /* TIM2 */
195
218
.word TIM3_IRQHandler /* TIM3 */
@@ -205,13 +228,24 @@ g_pfnVectors:
205
228
.word USART3_IRQHandler /* USART3 */
206
229
.word EXTI15_10_IRQHandler /* External Line[15:10]s */
207
230
.word RTC_Alarm_IRQHandler /* RTC Alarm (A and B) through EXTI Line */
231
+ #if defined(MCU_SERIES_L4)
232
+ .word DFSDM3_IRQHandler /* Digital filter for sigma delta modulator 3 */
233
+ .word TIM8_BRK_IRQHandler /* TIM8 Break */
234
+ .word TIM8_UP_IRQHandler /* TIM8 Update */
235
+ .word TIM8_TRG_COM_IRQHandler /* TIM8 Trigger and Commutation */
236
+ #else
208
237
.word OTG_FS_WKUP_IRQHandler /* USB OTG FS Wakeup through EXTI line */
209
238
.word TIM8_BRK_TIM12_IRQHandler /* TIM8 Break and TIM12 */
210
239
.word TIM8_UP_TIM13_IRQHandler /* TIM8 Update and TIM13 */
211
240
.word TIM8_TRG_COM_TIM14_IRQHandler /* TIM8 Trigger and Commutation and TIM14 */
241
+ #endif
212
242
.word TIM8_CC_IRQHandler /* TIM8 Capture Compare */
243
+ #if defined(MCU_SERIES_L4)
244
+ .word ADC3_IRQHandler /* ADC3 global interrupt */
245
+ #else
213
246
.word DMA1_Stream7_IRQHandler /* DMA1 Stream7 */
214
- #if defined(MCU_SERIES_F7)
247
+ #endif
248
+ #if defined(MCU_SERIES_F7) || defined(MCU_SERIES_L4)
215
249
.word FMC_IRQHandler /* FMC */
216
250
.word SDMMC1_IRQHandler /* SDMMC1 */
217
251
#else
@@ -224,6 +258,19 @@ g_pfnVectors:
224
258
.word UART5_IRQHandler /* UART5 */
225
259
.word TIM6_DAC_IRQHandler /* TIM6 and DAC1&2 underrun errors */
226
260
.word TIM7_IRQHandler /* TIM7 */
261
+ #if defined(MCU_SERIES_L4)
262
+ .word DMA2_Channel1_IRQHandler /* DMA2 Channel 1 */
263
+ .word DMA2_Channel2_IRQHandler /* DMA2 Channel 2 */
264
+ .word DMA2_Channel3_IRQHandler /* DMA2 Channel 3 */
265
+ .word DMA2_Channel4_IRQHandler /* DMA2 Channel 4 */
266
+ .word DMA2_Channel5_IRQHandler /* DMA2 Channel 5 */
267
+ .word DFSDM0_IRQHandler /* Digital filter for sigma delta modulator 0 */
268
+ .word DFSDM1_IRQHandler /* Digital filter for sigma delta modulator 1 */
269
+ .word DFSDM2_IRQHandler /* Digital filter for sigma delta modulator 2 */
270
+ .word COMP_IRQHandler /* Comporator thru EXTI line */
271
+ .word LPTIM1_IRQHandler /* Low power timer 1 */
272
+ .word LPTIM2_IRQHandler /* Low power timer 2 */
273
+ #else
227
274
.word DMA2_Stream0_IRQHandler /* DMA2 Stream 0 */
228
275
.word DMA2_Stream1_IRQHandler /* DMA2 Stream 1 */
229
276
.word DMA2_Stream2_IRQHandler /* DMA2 Stream 2 */
@@ -235,20 +282,40 @@ g_pfnVectors:
235
282
.word CAN2_RX0_IRQHandler /* CAN2 RX0 */
236
283
.word CAN2_RX1_IRQHandler /* CAN2 RX1 */
237
284
.word CAN2_SCE_IRQHandler /* CAN2 SCE */
285
+ #endif
238
286
.word OTG_FS_IRQHandler /* USB OTG FS */
287
+ #if defined(MCU_SERIES_L4)
288
+ .word DMA2_Channel6_IRQHandler /* DMA2 Channel 6 */
289
+ .word DMA2_Channel7_IRQHandler /* DMA2 Channel 7 */
290
+ .word LPUART1_IRQHandler /* Low power UART */
291
+ .word QUADSPI_IRQHandler /* Quad SPI */
292
+ #else
239
293
.word DMA2_Stream5_IRQHandler /* DMA2 Stream 5 */
240
294
.word DMA2_Stream6_IRQHandler /* DMA2 Stream 6 */
241
295
.word DMA2_Stream7_IRQHandler /* DMA2 Stream 7 */
242
296
.word USART6_IRQHandler /* USART6 */
297
+ #endif
243
298
.word I2C3_EV_IRQHandler /* I2C3 event */
244
299
.word I2C3_ER_IRQHandler /* I2C3 error */
300
+ #if defined(MCU_SERIES_L4)
301
+ .word SAI1_IRQHandler /* Serial audio interface 1 */
302
+ .word SAI2_IRQHandler /* Serial audio interface 2 */
303
+ .word SWPMI1_IRQHandler /* Single wire protocole 1 */
304
+ .word TSC_IRQHandler /* Touch sensig controller */
305
+ .word LCD_IRQHandler /* LCD */
306
+ #else
245
307
.word OTG_HS_EP1_OUT_IRQHandler /* USB OTG HS End Point 1 Out */
246
308
.word OTG_HS_EP1_IN_IRQHandler /* USB OTG HS End Point 1 In */
247
309
.word OTG_HS_WKUP_IRQHandler /* USB OTG HS Wakeup through EXTI */
248
310
.word OTG_HS_IRQHandler /* USB OTG HS */
249
311
.word DCMI_IRQHandler /* DCMI */
312
+ #endif
250
313
.word 0 /* CRYP crypto */
314
+ #if defined(MCU_SERIES_L4)
315
+ .word RNG_IRQHandler /* Random number generator */
316
+ #else
251
317
.word HASH_RNG_IRQHandler /* Hash and Rng */
318
+ #endif
252
319
.word FPU_IRQHandler /* FPU */
253
320
254
321
#if defined(MCU_SERIES_F7)
@@ -307,8 +374,13 @@ g_pfnVectors:
307
374
.weak WWDG_IRQHandler
308
375
.thumb_set WWDG_IRQHandler,Default_Handler
309
376
377
+ #if defined(MCU_SERIES_L4)
378
+ .weak PVD_PVM_IRQHandler
379
+ .thumb_set PVD_PVM_IRQHandler,Default_Handler
380
+ #else
310
381
.weak PVD_IRQHandler
311
382
.thumb_set PVD_IRQHandler,Default_Handler
383
+ #endif
312
384
313
385
.weak TAMP_STAMP_IRQHandler
314
386
.thumb_set TAMP_STAMP_IRQHandler,Default_Handler
@@ -337,6 +409,31 @@ g_pfnVectors:
337
409
.weak EXTI4_IRQHandler
338
410
.thumb_set EXTI4_IRQHandler,Default_Handler
339
411
412
+ #if defined(MCU_SERIES_L4)
413
+ .weak DMA1_Channel1_IRQHandler
414
+ .thumb_set DMA1_Channel1_IRQHandler,Default_Handler
415
+
416
+ .weak DMA1_Channel2_IRQHandler
417
+ .thumb_set DMA1_Channel2_IRQHandler,Default_Handler
418
+
419
+ .weak DMA1_Channel3_IRQHandler
420
+ .thumb_set DMA1_Channel3_IRQHandler,Default_Handler
421
+
422
+ .weak DMA1_Channel4_IRQHandler
423
+ .thumb_set DMA1_Channel4_IRQHandler,Default_Handler
424
+
425
+ .weak DMA1_Channel5_IRQHandler
426
+ .thumb_set DMA1_Channel5_IRQHandler,Default_Handler
427
+
428
+ .weak DMA1_Channel6_IRQHandler
429
+ .thumb_set DMA1_Channel6_IRQHandler,Default_Handler
430
+
431
+ .weak DMA1_Channel7_IRQHandler
432
+ .thumb_set DMA1_Channel7_IRQHandler,Default_Handler
433
+
434
+ .weak ADC1_2_IRQHandler
435
+ .thumb_set ADC1_2_IRQHandler,Default_Handler
436
+ #else
340
437
.weak DMA1_Stream0_IRQHandler
341
438
.thumb_set DMA1_Stream0_IRQHandler,Default_Handler
342
439
@@ -360,6 +457,7 @@ g_pfnVectors:
360
457
361
458
.weak ADC_IRQHandler
362
459
.thumb_set ADC_IRQHandler,Default_Handler
460
+ #endif
363
461
364
462
.weak CAN1_TX_IRQHandler
365
463
.thumb_set CAN1_TX_IRQHandler,Default_Handler
@@ -376,6 +474,16 @@ g_pfnVectors:
376
474
.weak EXTI9_5_IRQHandler
377
475
.thumb_set EXTI9_5_IRQHandler,Default_Handler
378
476
477
+ #if defined(MCU_SERIES_L4)
478
+ .weak TIM1_BRK_TIM15_IRQHandler
479
+ .thumb_set TIM1_BRK_TIM15_IRQHandler,Default_Handler
480
+
481
+ .weak TIM1_UP_TIM16_IRQHandler
482
+ .thumb_set TIM1_UP_TIM16_IRQHandler,Default_Handler
483
+
484
+ .weak TIM1_TRG_COM_TIM17_IRQHandler
485
+ .thumb_set TIM1_TRG_COM_TIM17_IRQHandler,Default_Handler
486
+ #else
379
487
.weak TIM1_BRK_TIM9_IRQHandler
380
488
.thumb_set TIM1_BRK_TIM9_IRQHandler,Default_Handler
381
489
@@ -384,6 +492,7 @@ g_pfnVectors:
384
492
385
493
.weak TIM1_TRG_COM_TIM11_IRQHandler
386
494
.thumb_set TIM1_TRG_COM_TIM11_IRQHandler,Default_Handler
495
+ #endif
387
496
388
497
.weak TIM1_CC_IRQHandler
389
498
.thumb_set TIM1_CC_IRQHandler,Default_Handler
@@ -430,6 +539,19 @@ g_pfnVectors:
430
539
.weak RTC_Alarm_IRQHandler
431
540
.thumb_set RTC_Alarm_IRQHandler,Default_Handler
432
541
542
+ #if defined(MCU_SERIES_L4)
543
+ .weak DFSDM3_IRQHandler
544
+ .thumb_set DFSDM3_IRQHandler,Default_Handler
545
+
546
+ .weak TIM8_BRK_IRQHandler
547
+ .thumb_set TIM8_BRK_IRQHandler,Default_Handler
548
+
549
+ .weak TIM8_UP_IRQHandler
550
+ .thumb_set TIM8_UP_IRQHandler,Default_Handler
551
+
552
+ .weak TIM8_TRG_COM_IRQHandler
553
+ .thumb_set TIM8_TRG_COM_IRQHandler,Default_Handler
554
+ #else
433
555
.weak OTG_FS_WKUP_IRQHandler
434
556
.thumb_set OTG_FS_WKUP_IRQHandler,Default_Handler
435
557
@@ -441,14 +563,20 @@ g_pfnVectors:
441
563
442
564
.weak TIM8_TRG_COM_TIM14_IRQHandler
443
565
.thumb_set TIM8_TRG_COM_TIM14_IRQHandler,Default_Handler
566
+ #endif
444
567
445
568
.weak TIM8_CC_IRQHandler
446
569
.thumb_set TIM8_CC_IRQHandler,Default_Handler
447
570
571
+ #if defined(MCU_SERIES_L4)
572
+ .weak ADC3_IRQHandler
573
+ .thumb_set ADC3_IRQHandler,Default_Handler
574
+ #else
448
575
.weak DMA1_Stream7_IRQHandler
449
576
.thumb_set DMA1_Stream7_IRQHandler,Default_Handler
577
+ #endif
450
578
451
- #if defined(MCU_SERIES_F7)
579
+ #if defined(MCU_SERIES_F7) || defined(MCU_SERIES_L4)
452
580
.weak FMC_IRQHandler
453
581
.thumb_set FMC_IRQHandler,Default_Handler
454
582
@@ -480,6 +608,40 @@ g_pfnVectors:
480
608
.weak TIM7_IRQHandler
481
609
.thumb_set TIM7_IRQHandler,Default_Handler
482
610
611
+ #if defined(MCU_SERIES_L4)
612
+ .weak DMA2_Channel1_IRQHandler
613
+ .thumb_set DMA2_Channel1_IRQHandler,Default_Handler
614
+
615
+ .weak DMA2_Channel2_IRQHandler
616
+ .thumb_set DMA2_Channel2_IRQHandler,Default_Handler
617
+
618
+ .weak DMA2_Channel3_IRQHandler
619
+ .thumb_set DMA2_Channel3_IRQHandler,Default_Handler
620
+
621
+ .weak DMA2_Channel4_IRQHandler
622
+ .thumb_set DMA2_Channel4_IRQHandler,Default_Handler
623
+
624
+ .weak DMA2_Channel5_IRQHandler
625
+ .thumb_set DMA2_Channel5_IRQHandler,Default_Handler
626
+
627
+ .weak DFSDM0_IRQHandler
628
+ .thumb_set DFSDM0_IRQHandler,Default_Handler
629
+
630
+ .weak DFSDM1_IRQHandler
631
+ .thumb_set DFSDM1_IRQHandler,Default_Handler
632
+
633
+ .weak DFSDM2_IRQHandler
634
+ .thumb_set DFSDM2_IRQHandler,Default_Handler
635
+
636
+ .weak COMP_IRQHandler
637
+ .thumb_set COMP_IRQHandler,Default_Handler
638
+
639
+ .weak LPTIM1_IRQHandler
640
+ .thumb_set LPTIM1_IRQHandler,Default_Handler
641
+
642
+ .weak LPTIM2_IRQHandler
643
+ .thumb_set LPTIM2_IRQHandler,Default_Handler
644
+ #else
483
645
.weak DMA2_Stream0_IRQHandler
484
646
.thumb_set DMA2_Stream0_IRQHandler,Default_Handler
485
647
@@ -512,10 +674,24 @@ g_pfnVectors:
512
674
513
675
.weak CAN2_SCE_IRQHandler
514
676
.thumb_set CAN2_SCE_IRQHandler,Default_Handler
677
+ #endif
515
678
516
679
.weak OTG_FS_IRQHandler
517
680
.thumb_set OTG_FS_IRQHandler,Default_Handler
518
681
682
+ #if defined(MCU_SERIES_L4)
683
+ .weak DMA2_Channel6_IRQHandler
684
+ .thumb_set DMA2_Channel6_IRQHandler,Default_Handler
685
+
686
+ .weak DMA2_Channel7_IRQHandler
687
+ .thumb_set DMA2_Channel7_IRQHandler,Default_Handler
688
+
689
+ .weak LPUART1_IRQHandler
690
+ .thumb_set LPUART1_IRQHandler,Default_Handler
691
+
692
+ .weak QUADSPI_IRQHandler
693
+ .thumb_set QUADSPI_IRQHandler,Default_Handler
694
+ #else
519
695
.weak DMA2_Stream5_IRQHandler
520
696
.thumb_set DMA2_Stream5_IRQHandler,Default_Handler
521
697
@@ -527,13 +703,33 @@ g_pfnVectors:
527
703
528
704
.weak USART6_IRQHandler
529
705
.thumb_set USART6_IRQHandler,Default_Handler
706
+ #endif
530
707
531
708
.weak I2C3_EV_IRQHandler
532
709
.thumb_set I2C3_EV_IRQHandler,Default_Handler
533
710
534
711
.weak I2C3_ER_IRQHandler
535
712
.thumb_set I2C3_ER_IRQHandler,Default_Handler
536
713
714
+ #if defined(MCU_SERIES_L4)
715
+ .weak SAI1_IRQHandler
716
+ .thumb_set SAI1_IRQHandler,Default_Handler
717
+
718
+ .weak SAI2_IRQHandler
719
+ .thumb_set SAI2_IRQHandler,Default_Handler
720
+
721
+ .weak SWPMI1_IRQHandler
722
+ .thumb_set SWPMI1_IRQHandler,Default_Handler
723
+
724
+ .weak TSC_IRQHandler
725
+ .thumb_set TSC_IRQHandler,Default_Handler
726
+
727
+ .weak LCD_IRQHandler
728
+ .thumb_set LCD_IRQHandler,Default_Handler
729
+
730
+ .weak RNG_IRQHandler
731
+ .thumb_set RNG_IRQHandler,Default_Handler
732
+ #else
537
733
.weak OTG_HS_EP1_OUT_IRQHandler
538
734
.thumb_set OTG_HS_EP1_OUT_IRQHandler,Default_Handler
539
735
@@ -551,6 +747,7 @@ g_pfnVectors:
551
747
552
748
.weak HASH_RNG_IRQHandler
553
749
.thumb_set HASH_RNG_IRQHandler,Default_Handler
750
+ #endif
554
751
555
752
.weak FPU_IRQHandler
556
753
.thumb_set FPU_IRQHandler,Default_Handler
0 commit comments