diff --git a/os/hal/ports/STM32/LLD/QUADSPIv1/hal_qspi_lld.c b/os/hal/ports/STM32/LLD/QUADSPIv1/hal_qspi_lld.c index fd1b649fb..1d41f7418 100644 --- a/os/hal/ports/STM32/LLD/QUADSPIv1/hal_qspi_lld.c +++ b/os/hal/ports/STM32/LLD/QUADSPIv1/hal_qspi_lld.c @@ -163,6 +163,7 @@ void qspi_lld_start(QSPIDriver *qspip) { } /* QSPI setup and enable.*/ + qspip->qspi->DCR = qspip->config->dcr; qspip->qspi->CR = ((STM32_QSPI_QUADSPI1_PRESCALER_VALUE - 1U) << 24U) | QUADSPI_CR_TCIE | QUADSPI_CR_TEIE | QUADSPI_CR_DMAEN | QUADSPI_CR_EN; diff --git a/os/hal/ports/STM32/LLD/QUADSPIv1/hal_qspi_lld.h b/os/hal/ports/STM32/LLD/QUADSPIv1/hal_qspi_lld.h index fb52ed7b8..c3a82d690 100644 --- a/os/hal/ports/STM32/LLD/QUADSPIv1/hal_qspi_lld.h +++ b/os/hal/ports/STM32/LLD/QUADSPIv1/hal_qspi_lld.h @@ -164,6 +164,10 @@ typedef struct { */ qspicallback_t end_cb; /* End of the mandatory fields.*/ + /** + * @brief DCR register initialization data. + */ + uint32_t dcr; } QSPIConfig; /**