diff --git a/os/hal/ports/STM32/LLD/SPIv2/hal_spi_lld.h b/os/hal/ports/STM32/LLD/SPIv2/hal_spi_lld.h index 3ded6ed2a..ec3374d99 100644 --- a/os/hal/ports/STM32/LLD/SPIv2/hal_spi_lld.h +++ b/os/hal/ports/STM32/LLD/SPIv2/hal_spi_lld.h @@ -333,6 +333,11 @@ #endif /* Check on the validity of the assigned DMA channels.*/ +#if STM32_SPI_USE_SPI1 && \ + !STM32_DMA_IS_VALID_STREAM(STM32_SPI_SPI1_RX_DMA_STREAM) +#error "Invalid DMA channel assigned to SPI1 RX" +#endif + #if STM32_SPI_USE_SPI1 && \ !STM32_DMA_IS_VALID_STREAM(STM32_SPI_SPI1_TX_DMA_STREAM) #error "Invalid DMA channel assigned to SPI1 TX" diff --git a/os/hal/ports/STM32/LLD/SPIv2/hal_spi_v2_lld.h b/os/hal/ports/STM32/LLD/SPIv2/hal_spi_v2_lld.h index 499316e03..e5dcad75b 100644 --- a/os/hal/ports/STM32/LLD/SPIv2/hal_spi_v2_lld.h +++ b/os/hal/ports/STM32/LLD/SPIv2/hal_spi_v2_lld.h @@ -345,6 +345,11 @@ #endif /* Check on the validity of the assigned DMA channels.*/ +#if STM32_SPI_USE_SPI1 && \ + !STM32_DMA_IS_VALID_STREAM(STM32_SPI_SPI1_RX_DMA_STREAM) +#error "Invalid DMA channel assigned to SPI1 RX" +#endif + #if STM32_SPI_USE_SPI1 && \ !STM32_DMA_IS_VALID_STREAM(STM32_SPI_SPI1_TX_DMA_STREAM) #error "Invalid DMA channel assigned to SPI1 TX" diff --git a/readme.txt b/readme.txt index eddf7e713..fd5ff7798 100644 --- a/readme.txt +++ b/readme.txt @@ -123,6 +123,8 @@ - NEW: Added SPIv2 support also to STM32WB and STM32WL. - FIX: Re-opened and fixed bug #1100 (backported to 20.3.5)(backported to 21.11.2). +- FIX: Fixed missing chech on STM32 SPIv2 DMA settings for SPI1 (bug #1229) + (backported to 20.3.5)(backported to 21.11.2). - FIX: Fixed ARMv6-M port Keil compiler fail (bug #1228) (backported to 21.11.2). - FIX: Fixed invalid handling of lwIP NETIF_FLAG_LINK_UP flag (bug #1227)