Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
73 changes: 72 additions & 1 deletion targets/TARGET_STM/stm_dma_utils.c
Original file line number Diff line number Diff line change
Expand Up @@ -399,7 +399,7 @@ IRQn_Type stm_get_dma_irqn(const DMALinkInfo *dmaLink)
case 2:
switch(dmaLink->channelIdx)
{
#ifdef TARGET_MCU_STM32G0
#if defined(TARGET_MCU_STM32G0)
// STM32G0 does its own thing and has all DMA2 channels under 1 IRQ
case 1:
case 2:
Expand Down Expand Up @@ -924,6 +924,77 @@ void DMA1_Ch4_5_DMAMUX1_OVR_IRQHandler(void)
}
#endif

#elif defined(TARGET_MCU_STM32U0)

void DMA1_Channel2_3_IRQHandler(void)
{
if(stmDMAHandles[0][1] != NULL) {
HAL_DMA_IRQHandler(stmDMAHandles[0][1]);
}
if(stmDMAHandles[0][2] != NULL) {
HAL_DMA_IRQHandler(stmDMAHandles[0][2]);
}
}

#ifdef DMA2
void DMA1_Ch4_7_DMA2_Ch1_5_DMAMUX_OVR_IRQHandler(void)
{
if(stmDMAHandles[0][3] != NULL) {
HAL_DMA_IRQHandler(stmDMAHandles[0][3]);
}
if(stmDMAHandles[0][4] != NULL) {
HAL_DMA_IRQHandler(stmDMAHandles[0][4]);
}
if(stmDMAHandles[0][5] != NULL) {
HAL_DMA_IRQHandler(stmDMAHandles[0][5]);
}
if(stmDMAHandles[0][6] != NULL) {
HAL_DMA_IRQHandler(stmDMAHandles[0][6]);
}
if(stmDMAHandles[1][0] != NULL) {
HAL_DMA_IRQHandler(stmDMAHandles[1][0]);
}
if(stmDMAHandles[1][1] != NULL) {
HAL_DMA_IRQHandler(stmDMAHandles[1][1]);
}
if(stmDMAHandles[1][2] != NULL) {
HAL_DMA_IRQHandler(stmDMAHandles[1][2]);
}
if(stmDMAHandles[1][3] != NULL) {
HAL_DMA_IRQHandler(stmDMAHandles[1][3]);
}
if(stmDMAHandles[1][4] != NULL) {
HAL_DMA_IRQHandler(stmDMAHandles[1][4]);
}
}
#elif defined(DMA1_Channel7)
void DMA1_Ch4_7_DMAMUX_OVR_IRQHandler(void)
{
if(stmDMAHandles[0][3] != NULL) {
HAL_DMA_IRQHandler(stmDMAHandles[0][3]);
}
if(stmDMAHandles[0][4] != NULL) {
HAL_DMA_IRQHandler(stmDMAHandles[0][4]);
}
if(stmDMAHandles[0][5] != NULL) {
HAL_DMA_IRQHandler(stmDMAHandles[0][5]);
}
if(stmDMAHandles[0][6] != NULL) {
HAL_DMA_IRQHandler(stmDMAHandles[0][6]);
}
}
#else
void DMA1_Ch4_5_DMAMUX_OVR_IRQHandler(void)
{
if(stmDMAHandles[0][3] != NULL) {
HAL_DMA_IRQHandler(stmDMAHandles[0][3]);
}
if(stmDMAHandles[0][4] != NULL) {
HAL_DMA_IRQHandler(stmDMAHandles[0][4]);
}
}
#endif

#elif defined(TARGET_MCU_STM32L0)

void DMA1_Channel2_3_IRQHandler(void)
Expand Down