@@ -399,7 +399,7 @@ IRQn_Type stm_get_dma_irqn(const DMALinkInfo *dmaLink)
399399 case 2 :
400400 switch (dmaLink -> channelIdx )
401401 {
402- #ifdef TARGET_MCU_STM32G0
402+ #if defined( TARGET_MCU_STM32G0 )
403403 // STM32G0 does its own thing and has all DMA2 channels under 1 IRQ
404404 case 1 :
405405 case 2 :
@@ -924,6 +924,77 @@ void DMA1_Ch4_5_DMAMUX1_OVR_IRQHandler(void)
924924}
925925#endif
926926
927+ #elif defined(TARGET_MCU_STM32U0 )
928+
929+ void DMA1_Channel2_3_IRQHandler (void )
930+ {
931+ if (stmDMAHandles [0 ][1 ] != NULL ) {
932+ HAL_DMA_IRQHandler (stmDMAHandles [0 ][1 ]);
933+ }
934+ if (stmDMAHandles [0 ][2 ] != NULL ) {
935+ HAL_DMA_IRQHandler (stmDMAHandles [0 ][2 ]);
936+ }
937+ }
938+
939+ #ifdef DMA2
940+ void DMA1_Ch4_7_DMA2_Ch1_5_DMAMUX_OVR_IRQHandler (void )
941+ {
942+ if (stmDMAHandles [0 ][3 ] != NULL ) {
943+ HAL_DMA_IRQHandler (stmDMAHandles [0 ][3 ]);
944+ }
945+ if (stmDMAHandles [0 ][4 ] != NULL ) {
946+ HAL_DMA_IRQHandler (stmDMAHandles [0 ][4 ]);
947+ }
948+ if (stmDMAHandles [0 ][5 ] != NULL ) {
949+ HAL_DMA_IRQHandler (stmDMAHandles [0 ][5 ]);
950+ }
951+ if (stmDMAHandles [0 ][6 ] != NULL ) {
952+ HAL_DMA_IRQHandler (stmDMAHandles [0 ][6 ]);
953+ }
954+ if (stmDMAHandles [1 ][0 ] != NULL ) {
955+ HAL_DMA_IRQHandler (stmDMAHandles [1 ][0 ]);
956+ }
957+ if (stmDMAHandles [1 ][1 ] != NULL ) {
958+ HAL_DMA_IRQHandler (stmDMAHandles [1 ][1 ]);
959+ }
960+ if (stmDMAHandles [1 ][2 ] != NULL ) {
961+ HAL_DMA_IRQHandler (stmDMAHandles [1 ][2 ]);
962+ }
963+ if (stmDMAHandles [1 ][3 ] != NULL ) {
964+ HAL_DMA_IRQHandler (stmDMAHandles [1 ][3 ]);
965+ }
966+ if (stmDMAHandles [1 ][4 ] != NULL ) {
967+ HAL_DMA_IRQHandler (stmDMAHandles [1 ][4 ]);
968+ }
969+ }
970+ #elif defined(DMA1_Channel7 )
971+ void DMA1_Ch4_7_DMAMUX_OVR_IRQHandler (void )
972+ {
973+ if (stmDMAHandles [0 ][3 ] != NULL ) {
974+ HAL_DMA_IRQHandler (stmDMAHandles [0 ][3 ]);
975+ }
976+ if (stmDMAHandles [0 ][4 ] != NULL ) {
977+ HAL_DMA_IRQHandler (stmDMAHandles [0 ][4 ]);
978+ }
979+ if (stmDMAHandles [0 ][5 ] != NULL ) {
980+ HAL_DMA_IRQHandler (stmDMAHandles [0 ][5 ]);
981+ }
982+ if (stmDMAHandles [0 ][6 ] != NULL ) {
983+ HAL_DMA_IRQHandler (stmDMAHandles [0 ][6 ]);
984+ }
985+ }
986+ #else
987+ void DMA1_Ch4_5_DMAMUX_OVR_IRQHandler (void )
988+ {
989+ if (stmDMAHandles [0 ][3 ] != NULL ) {
990+ HAL_DMA_IRQHandler (stmDMAHandles [0 ][3 ]);
991+ }
992+ if (stmDMAHandles [0 ][4 ] != NULL ) {
993+ HAL_DMA_IRQHandler (stmDMAHandles [0 ][4 ]);
994+ }
995+ }
996+ #endif
997+
927998#elif defined(TARGET_MCU_STM32L0 )
928999
9291000void DMA1_Channel2_3_IRQHandler (void )
0 commit comments