Skip to content

Commit 61521da

Browse files
committed
Merge branch 'test/add_spi_slave_freq_test_v4.4' into 'release/v4.4'
spi_slave: fix io re-config issue (v4.4) See merge request espressif/esp-idf!22591
2 parents 012b500 + 86fd4b9 commit 61521da

File tree

1 file changed

+3
-0
lines changed

1 file changed

+3
-0
lines changed

components/driver/spi_slave.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ static const char *SPI_TAG = "spi_slave";
5151

5252
typedef struct {
5353
int id;
54+
spi_bus_config_t bus_config;
5455
spi_slave_interface_config_t cfg;
5556
intr_handle_t intr;
5657
spi_slave_hal_context_t hal;
@@ -136,6 +137,7 @@ esp_err_t spi_slave_initialize(spi_host_device_t host, const spi_bus_config_t *b
136137
}
137138
memset(spihost[host], 0, sizeof(spi_slave_t));
138139
memcpy(&spihost[host]->cfg, slave_config, sizeof(spi_slave_interface_config_t));
140+
memcpy(&spihost[host]->bus_config, bus_config, sizeof(spi_bus_config_t));
139141
spihost[host]->id = host;
140142

141143
bool use_dma = (dma_chan != SPI_DMA_DISABLED);
@@ -262,6 +264,7 @@ esp_err_t spi_slave_free(spi_host_device_t host)
262264
if (spihost[host]->dma_enabled) {
263265
spicommon_dma_chan_free(host);
264266
}
267+
spicommon_bus_free_io_cfg(&spihost[host]->bus_config);
265268
free(spihost[host]->hal.dmadesc_tx);
266269
free(spihost[host]->hal.dmadesc_rx);
267270
esp_intr_free(spihost[host]->intr);

0 commit comments

Comments
 (0)