Optimize CMT FIFO access

This commit is contained in:
LennartF22 2024-09-21 18:46:29 +02:00
parent 9b9c1e29f1
commit 4364daf54c

View File

@ -101,10 +101,12 @@ void cmt_spi3_write_fifo(const uint8_t* buf, const uint16_t len)
}; };
SPI_PARAM_LOCK(); SPI_PARAM_LOCK();
spi_device_acquire_bus(spi_fifo, portMAX_DELAY);
for (uint8_t i = 0; i < len; i++) { for (uint8_t i = 0; i < len; i++) {
t.tx_buffer = buf + i; t.tx_buffer = buf + i;
ESP_ERROR_CHECK(spi_device_polling_transmit(spi_fifo, &t)); ESP_ERROR_CHECK(spi_device_polling_transmit(spi_fifo, &t));
} }
spi_device_release_bus(spi_fifo);
SPI_PARAM_UNLOCK(); SPI_PARAM_UNLOCK();
} }
@ -116,9 +118,11 @@ void cmt_spi3_read_fifo(uint8_t* buf, const uint16_t len)
}; };
SPI_PARAM_LOCK(); SPI_PARAM_LOCK();
spi_device_acquire_bus(spi_fifo, portMAX_DELAY);
for (uint8_t i = 0; i < len; i++) { for (uint8_t i = 0; i < len; i++) {
t.rx_buffer = buf + i; t.rx_buffer = buf + i;
ESP_ERROR_CHECK(spi_device_polling_transmit(spi_fifo, &t)); ESP_ERROR_CHECK(spi_device_polling_transmit(spi_fifo, &t));
} }
spi_device_release_bus(spi_fifo);
SPI_PARAM_UNLOCK(); SPI_PARAM_UNLOCK();
} }