diff --git a/drivers/spi/spi_ll_stm32.c b/drivers/spi/spi_ll_stm32.c index 948b7641eaf..1991bfe6521 100644 --- a/drivers/spi/spi_ll_stm32.c +++ b/drivers/spi/spi_ll_stm32.c @@ -324,8 +324,10 @@ static void spi_stm32_shift_m(SPI_TypeDef *spi, struct spi_stm32_data *data) spi_context_update_tx(&data->ctx, 2, 1); } - while (!ll_func_rx_is_not_empty(spi)) { - /* NOP */ + if (spi_context_rx_buf_on(&data->ctx)) { + while (!ll_func_rx_is_not_empty(spi)) { + /* NOP */ + } } if (SPI_WORD_SIZE_GET(data->ctx.config->operation) == 8) {