From 397eaeaa022280fb0ab07cade5cb8d60c1478559 Mon Sep 17 00:00:00 2001 From: Fabrizio Monti <fabrizio.monti@skywarder.eu> Date: Thu, 27 Mar 2025 22:45:01 +0100 Subject: [PATCH] [DMA] Fix: some channel selection values were incorrect. --- src/shared/drivers/dma/DMADefs.h | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/shared/drivers/dma/DMADefs.h b/src/shared/drivers/dma/DMADefs.h index 971d553e1..eb62a8ccc 100644 --- a/src/shared/drivers/dma/DMADefs.h +++ b/src/shared/drivers/dma/DMADefs.h @@ -77,7 +77,7 @@ enum class DMAStreamId : uint8_t */ enum class Channel : uint32_t { - // The first 8 channels are valid for all supported channels + // The first 8 channels are valid for all supported architectures CHANNEL0 = 0, CHANNEL1 = DMA_SxCR_CHSEL_0, CHANNEL2 = DMA_SxCR_CHSEL_1, @@ -85,15 +85,14 @@ enum class Channel : uint32_t CHANNEL4 = DMA_SxCR_CHSEL_2, CHANNEL5 = DMA_SxCR_CHSEL_2 | DMA_SxCR_CHSEL_0, CHANNEL6 = DMA_SxCR_CHSEL_2 | DMA_SxCR_CHSEL_1, - CHANNEL7 = DMA_SxCR_CHSEL, + CHANNEL7 = DMA_SxCR_CHSEL_2 | DMA_SxCR_CHSEL_1 | DMA_SxCR_CHSEL_0, // stm32f767 also has channels from 8 to 11 #ifdef STM32F767xx - // TODO: verify CHANNEL8 = DMA_SxCR_CHSEL_3, CHANNEL9 = DMA_SxCR_CHSEL_3 | DMA_SxCR_CHSEL_0, CHANNEL10 = DMA_SxCR_CHSEL_3 | DMA_SxCR_CHSEL_1, - CHANNEL11 = DMA_SxCR_CHSEL_3 | DMA_SxCR_CHSEL_2, + CHANNEL11 = DMA_SxCR_CHSEL_3 | DMA_SxCR_CHSEL_1 | DMA_SxCR_CHSEL_0, #endif // STM32F767xx }; -- GitLab