drivers: dma: stm32 Fix for STM32F1 SoCs
Not all STM32 parts have at least 5 DMA interrupt vectors for DMA2. In particular, some STM32F1 XL-density devices only have 4 DMA2 interrupt vectors, with Channels 4 and 5 sharing the same vector. Added #if DT_INST_IRQ_HAS_IDX(1, 4) to prevent compiler errors on these SoCs. Signed-off-by: Josh Hansen <jhansen3141@gmail.com>
This commit is contained in:
parent
8302e5e21c
commit
ae4f68c16d
1 changed files with 4 additions and 0 deletions
|
|
@ -773,6 +773,7 @@ DMA_STM32_DEFINE_IRQ_HANDLER(1, 0);
|
|||
DMA_STM32_DEFINE_IRQ_HANDLER(1, 1);
|
||||
DMA_STM32_DEFINE_IRQ_HANDLER(1, 2);
|
||||
DMA_STM32_DEFINE_IRQ_HANDLER(1, 3);
|
||||
#if DT_INST_IRQ_HAS_IDX(1, 4)
|
||||
DMA_STM32_DEFINE_IRQ_HANDLER(1, 4);
|
||||
#if DT_INST_IRQ_HAS_IDX(1, 5)
|
||||
DMA_STM32_DEFINE_IRQ_HANDLER(1, 5);
|
||||
|
|
@ -780,6 +781,7 @@ DMA_STM32_DEFINE_IRQ_HANDLER(1, 5);
|
|||
DMA_STM32_DEFINE_IRQ_HANDLER(1, 6);
|
||||
#if DT_INST_IRQ_HAS_IDX(1, 7)
|
||||
DMA_STM32_DEFINE_IRQ_HANDLER(1, 7);
|
||||
#endif /* DT_INST_IRQ_HAS_IDX(1, 4) */
|
||||
#endif /* DT_INST_IRQ_HAS_IDX(1, 5) */
|
||||
#endif /* DT_INST_IRQ_HAS_IDX(1, 6) */
|
||||
#endif /* DT_INST_IRQ_HAS_IDX(1, 7) */
|
||||
|
|
@ -793,6 +795,7 @@ static void dma_stm32_config_irq_1(const struct device *dev)
|
|||
DMA_STM32_IRQ_CONNECT(1, 1);
|
||||
DMA_STM32_IRQ_CONNECT(1, 2);
|
||||
DMA_STM32_IRQ_CONNECT(1, 3);
|
||||
#if DT_INST_IRQ_HAS_IDX(1, 4)
|
||||
DMA_STM32_IRQ_CONNECT(1, 4);
|
||||
#if DT_INST_IRQ_HAS_IDX(1, 5)
|
||||
DMA_STM32_IRQ_CONNECT(1, 5);
|
||||
|
|
@ -800,6 +803,7 @@ static void dma_stm32_config_irq_1(const struct device *dev)
|
|||
DMA_STM32_IRQ_CONNECT(1, 6);
|
||||
#if DT_INST_IRQ_HAS_IDX(1, 7)
|
||||
DMA_STM32_IRQ_CONNECT(1, 7);
|
||||
#endif /* DT_INST_IRQ_HAS_IDX(1, 4) */
|
||||
#endif /* DT_INST_IRQ_HAS_IDX(1, 5) */
|
||||
#endif /* DT_INST_IRQ_HAS_IDX(1, 6) */
|
||||
#endif /* DT_INST_IRQ_HAS_IDX(1, 7) */
|
||||
|
|
|
|||
Loading…
Reference in a new issue