aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--os/hal/platforms/STM32/spi_lld.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/os/hal/platforms/STM32/spi_lld.c b/os/hal/platforms/STM32/spi_lld.c
index cbb7859a3..4dc18e80c 100644
--- a/os/hal/platforms/STM32/spi_lld.c
+++ b/os/hal/platforms/STM32/spi_lld.c
@@ -97,6 +97,12 @@ static void serve_interrupt(SPIDriver *spip) {
/* Wakeup the waiting thread if any, note that the following macro is
empty if the SPI_USE_WAIT option is disabled.*/
_spi_wakeup(spip);
+
+ /* State change.*/
+ if (spip->spd_state == SPI_SYNC)
+ spip->spd_state = SPI_READY;
+ else
+ spip->spd_state = SPI_SELECTED;
}
/*===========================================================================*/