diff --git a/os/hal/platforms/STM32/SPIv2/spi_lld.c b/os/hal/platforms/STM32/SPIv2/spi_lld.c index afc027dfc..c8b733649 100644 --- a/os/hal/platforms/STM32/SPIv2/spi_lld.c +++ b/os/hal/platforms/STM32/SPIv2/spi_lld.c @@ -293,7 +293,7 @@ void spi_lld_start(SPIDriver *spip) { spip->spi->CR1 = 0; spip->spi->CR1 = spip->config->cr1 | SPI_CR1_MSTR | SPI_CR1_SSM | SPI_CR1_SSI; - spip->spi->CR2 = spip->config->cr2 | SPI_CR2_SSOE | + spip->spi->CR2 = spip->config->cr2 | SPI_CR2_FRXTH | SPI_CR2_SSOE | SPI_CR2_RXDMAEN | SPI_CR2_TXDMAEN; spip->spi->CR1 |= SPI_CR1_SPE; } diff --git a/readme.txt b/readme.txt index 89f971f63..aeb3c377d 100644 --- a/readme.txt +++ b/readme.txt @@ -86,7 +86,8 @@ ***************************************************************************** *** 2.5.2 *** -- FIX: Fixed fixed I2C malfunction after fixing bug 3607518 (bug 3607549) +- FIX: Fixed STM32 SPI (V2) driver hangs (bug 3608241). +- FIX: Fixed fixed I2C malfunction after fixing bug 3607518 (bug 3607549). - FIX: Fixed spurious interrupt disabling an STM32 DMA stream (bug 3607518) (backported to 2.4.4). - FIX: Fixed start of any ADC disables VREF and VBAT (bug 3607467)