aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authormrcodetastic <12006953+mrcodetastic@users.noreply.github.com>2025-01-14 21:13:05 +0000
committerGitHub <noreply@github.com>2025-01-14 21:13:05 +0000
commit99131abc836368df544ad98874bc54aefd961553 (patch)
tree04b2f60a637c00ad565ea8abcd38738d81c318db /src
parent87518f921def9fbc9b72b06b05dd8be68729b423 (diff)
parentaa6fc263b21101322f2b2ffea1cb4b7f81c81f69 (diff)
Merge pull request #728 from kroimon/guard_gdma_config_transfer
Guard new gdma_config_transfer to allow building with ESP-IDF < 5.4.0
Diffstat (limited to 'src')
-rw-r--r--src/platforms/esp32c6/dma_parallel_io.cpp8
-rw-r--r--src/platforms/esp32s3/gdma_lcd_parallel16.cpp10
2 files changed, 17 insertions, 1 deletions
diff --git a/src/platforms/esp32c6/dma_parallel_io.cpp b/src/platforms/esp32c6/dma_parallel_io.cpp
index 759395d..a7685c7 100644
--- a/src/platforms/esp32c6/dma_parallel_io.cpp
+++ b/src/platforms/esp32c6/dma_parallel_io.cpp
@@ -140,6 +140,7 @@ bool Bus_Parallel16::init(void)
.auto_update_desc = false};
gdma_apply_strategy(dma_chan, &strategy_config);
+#if ESP_IDF_VERSION >= ESP_IDF_VERSION_VAL(5, 4, 0)
gdma_transfer_config_t transfer_config = {
#ifdef SPIRAM_DMA_BUFFER
.max_data_burst_size = 64,
@@ -150,6 +151,13 @@ bool Bus_Parallel16::init(void)
#endif
};
gdma_config_transfer(dma_chan, &transfer_config);
+#else
+ gdma_transfer_ability_t ability = {
+ .sram_trans_align = 32,
+ .psram_trans_align = 64,
+ };
+ gdma_set_transfer_ability(dma_chan, &ability);
+#endif
// Enable DMA transfer callback
static gdma_tx_event_callbacks_t tx_cbs = {
diff --git a/src/platforms/esp32s3/gdma_lcd_parallel16.cpp b/src/platforms/esp32s3/gdma_lcd_parallel16.cpp
index a4c5837..631c342 100644
--- a/src/platforms/esp32s3/gdma_lcd_parallel16.cpp
+++ b/src/platforms/esp32s3/gdma_lcd_parallel16.cpp
@@ -256,6 +256,7 @@
};
gdma_apply_strategy(dma_chan, &strategy_config);
+#if ESP_IDF_VERSION >= ESP_IDF_VERSION_VAL(5, 4, 0)
gdma_transfer_config_t transfer_config = {
#ifdef SPIRAM_DMA_BUFFER
.max_data_burst_size = 64,
@@ -265,7 +266,14 @@
.access_ext_mem = false
#endif
};
- gdma_config_transfer(dma_chan, &transfer_config);
+ gdma_config_transfer(dma_chan, &transfer_config);
+#else
+ gdma_transfer_ability_t ability = {
+ .sram_trans_align = 32,
+ .psram_trans_align = 64,
+ };
+ gdma_set_transfer_ability(dma_chan, &ability);
+#endif
// Enable DMA transfer callback
static gdma_tx_event_callbacks_t tx_cbs = {