diff --git a/os/hal/ports/STM32/LLD/QUADSPIv1/hal_wspi_lld.c b/os/hal/ports/STM32/LLD/QUADSPIv1/hal_wspi_lld.c index bf3cb967b..915135ccf 100644 --- a/os/hal/ports/STM32/LLD/QUADSPIv1/hal_wspi_lld.c +++ b/os/hal/ports/STM32/LLD/QUADSPIv1/hal_wspi_lld.c @@ -98,6 +98,7 @@ static void wspi_lld_serve_interrupt(WSPIDriver *wspip) { /* Clearing DMA interrupts here because the DMA ISR is not called on transfer complete.*/ dmaStreamClearInterrupt(wspip->dma); + dmaStreamDisable(wspip->dma); #if defined(STM32L471xx) || defined(STM32L475xx) || \ defined(STM32L476xx) || defined(STM32L486xx) diff --git a/readme.txt b/readme.txt index 22d63708d..a41833b13 100644 --- a/readme.txt +++ b/readme.txt @@ -102,6 +102,8 @@ ARMv7-M and ARMv8-M-ML. - NEW: On STM32WBxx added a check on STM32_LSI_ENABLE required by IWDG. - NEW: Added SPIv2 support also to STM32WB and STM32WL. +- FIX: Fixed DMA stream not disabled in STM32 QUADSPIv1 driver (bug #1203) + (backported to 20.3.5)(backported to 21.11.1). - FIX: Fixed I2C4 DMA streams for STM32L496 (bug #1202) - FIX: Fixed STM32_SDMMC2_NUMBER on STM32H7 (bug #1201) (backported to 20.3.5)(backported to 21.11.1).