refactor(gdma): increase performance and optimize api

This commit is contained in:
Chen Jichang
2026-09-03 19:09:30 +08:00
committed by Chen Ji Chang
parent 305d434bda
commit bd2d64bffb
23 changed files with 119 additions and 142 deletions
@@ -320,8 +320,14 @@ static esp_err_t alloc_dma_chan(spi_host_device_t host_id, spi_dma_chan_t dma_ch
ESP_RETURN_ON_ERROR(gdma_config_transfer(dma_ctx->rx_dma_chan, &trans_cfg), SPI_TAG, "config gdma rx transfer failed");
// Get DMA alignment constraints
gdma_get_channel_alignment_constraints(dma_ctx->tx_dma_chan, &dma_ctx->dma_align_tx_int, &dma_ctx->dma_align_tx_ext, NULL);
gdma_get_channel_alignment_constraints(dma_ctx->rx_dma_chan, &dma_ctx->dma_align_rx_int, &dma_ctx->dma_align_rx_ext, NULL);
gdma_channel_alignment_info_t tx_align_info;
gdma_get_channel_alignment_constraints(dma_ctx->tx_dma_chan, &tx_align_info);
dma_ctx->dma_align_tx_int = tx_align_info.int_mem_alignment;
dma_ctx->dma_align_tx_ext = tx_align_info.ext_enc_mem_alignment;
gdma_channel_alignment_info_t rx_align_info;
gdma_get_channel_alignment_constraints(dma_ctx->rx_dma_chan, &rx_align_info);
dma_ctx->dma_align_rx_int = rx_align_info.int_mem_alignment;
dma_ctx->dma_align_rx_ext = rx_align_info.ext_enc_mem_alignment;
}
return ret;
}