Commit Graph
100 Commits
Author SHA1 Message Date
Chen Jichang b28e9a3277 fix(gdma): fix buffer alignment when psram ecc enabled
Closes https://github.com/espressif/esp-idf/issues/18739
2026-08-13 15:06:31 +08:00
Song Ruo JingandCursor 8b0a8c9563 fix(dma2d): fix race with dma2d_force_end and ISR
free_up_channels can only be called once for a started transaction.
Double free will undesirely stop the next picked 2D-DMA transaction on the same channel.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 23:13:35 +08:00
Song Ruo Jing b93ae28fdd fix(dma2d): add a dequeue mechanism for dma2d driver
JPEG driver should be able to either dequeue a pending transaction from
a 2D-DMA pool or force end a processing transaction.
2026-07-08 21:07:01 +08:00
Song Ruo Jing de7b3abfe0 feat(ppa): add sleep retention support for DMA2D and PPA 2026-07-03 21:37:45 +08:00
armando 604772875c fix(spm): rename scp (scratchpad) to spm (scratchpad memory) 2026-03-19 16:27:44 +08:00
armando 01942e4eef change(mem): deprecated tcm and added scp memory utils 2026-03-18 09:48:08 +08:00
Chen Jichang dbff432986 fix(gdma): skip alignment check for AHBDMA version 1 when flash enc 2026-02-02 11:32:48 +08:00
Chen Jichang 474e4c66ef fix(gdma): fix dma burst size when flash enc enabled 2026-01-20 11:41:11 +08:00
Chen Jichang b26b78a5ea fix(dma): fix dma alignment when flash_enc enabled
Closes https://github.com/espressif/esp-idf/issues/17708
2026-01-14 14:23:13 +08:00
Song Ruo Jing 55f3730ba4 feat(2ddma): ESP32P4 ECO5 2DDMA related updates
Added one more pair of 2DDMA channels
Priority bit width increased corespondingly
Added three new CSC modes for RX channel 0
2025-11-13 15:47:15 +08:00
Chen Jichang 679c197185 refactor(gdma): move buffer aligment to buffer mount config 2025-10-15 15:40:39 +08:00
morris 7bcb7248bb feat(gdma): support allocate cache safe ISR for channels separately 2025-04-16 16:44:41 +08:00
C.S.M 05d0fdb7a5 feat(dma2d): Add a rx empty event callback 2025-04-07 13:36:57 +08:00
morris 70ab1ccdd0 Merge branch 'bugfix/ppa_srm_scale_frag_yuv420_v5.4' into 'release/v5.4'
fix(ppa): fix ppa srm potentially get blocked when scaling to YUV420 (v5.4)

See merge request espressif/esp-idf!37592
2025-03-31 17:05:23 +08:00
Song Ruo Jing 9004e5009a fix(dma2d): dma2d_force_end should not crash when rx channel is idle 2025-03-07 21:04:49 +08:00
morris 9a93c89945 feat(gdma): allow bypass the alignment check in the link driver
Closes https://github.com/espressif/esp-idf/issues/15228
2025-03-03 11:21:22 +08:00
morris 36de1af357 fix(gdma): relax alignment constraint for internal memory
external memory encryption should not affect internal memory alignment

Closes https://github.com/espressif/esp-idf/issues/15228
2025-02-19 15:16:08 +08:00
morris e121a77c92 fix(dma): also consider buffer alignment when calculating the DMA nodes
Closes https://github.com/espressif/esp-idf/issues/15228
2025-02-11 13:46:12 +08:00
morris 5c0611cb3b feat(async_memcpy): support rx buffer unaligned to cache line size 2025-02-11 13:46:12 +08:00
morris 565d0331f1 refactor(dma): split rx buffer to cache aligned ones 2025-02-11 13:46:12 +08:00
morris 2d6bc67fb5 feat(gdma): added API to count the size of rx buffer until eof 2025-01-14 16:39:05 +08:00
morris bd45800cd5 refactor(cp_dma): to use gdma_link driver for descriptor config 2024-12-05 11:41:55 +08:00
Li Shuai bde6b9141f change(esp_hw_support): update some modules sleep retention init dependency bitmap 2024-11-18 17:46:40 +08:00
morris 49fbe54bc4 feat(lcd): support color conversion for mipi dsi driver 2024-11-08 15:23:06 +08:00
morris efcb91b47e feat(lcd): support rgb lcd driver for esp32p4 2024-10-22 17:18:05 +08:00
morris 1193e26c88 feat(gdma): added function to concat two link lists 2024-10-11 18:20:13 +08:00
Song Ruo Jing 6afbc06666 feat(gdma): add retention support for esp32p4, esp32c5, esp32c61 2024-09-24 12:33:41 +08:00
Li Shuai 1fa27cbb0d Merge branch 'feature/esp32c5mp_light_sleep_support_stage_2' into 'master'
feat(esp_hw_support): esp32c5mp sleep support (system part)

Closes IDF-8643, PM-195, PM-169, IDF-8641, IDF-8640, IDF-8639, IDF-8638, CV-259, IDF-10308, IDF-10317, IDF-10310, PM-202, IDF-10918, PM-207, PM-208, PM-210, and PM-214

See merge request espressif/esp-idf!31645
2024-08-29 19:32:05 +08:00
morris 39cbba3685 change(gdma): deprecate legacy API
gdma_new_channel() is replaced by gdma_new_ahb_channel() and
gdma_new_axi_channel()
2024-08-28 15:27:35 +08:00
Lou Tianhao a0da9ade35 feat(esp_hw_support): support top domain powered down during sleep for esp32c5 2024-08-28 10:44:08 +08:00
Marius Vikhammer 0d140f38ea fix(system): fixed warnings related to ununsed var if asserts disabled 2024-08-26 10:25:04 +08:00
Chen Jichang f919336448 feat(dma): Add helper functions to split aligned buffer
In some cases we will need the dma's buffer to be aligned with specific
requirements. This MR add two helper function to split the unaligned
buffer and merge to the origin buffer. The cost is that each unaligned
buffer requires two stash buffers of spilt alignment size. And this
memory should be managed by callers.
2024-08-07 19:48:19 +08:00
morris f096265774 feat(gdma): add GDMA link list driver 2024-07-30 16:10:15 +08:00
Armando c503e385ab fix(dma): fix esp_dma_is_buffer_alignment_satisfied align issue when l2 cache line 128B 2024-07-17 15:15:16 +08:00
Alexey Lapshin b85736f6a6 fix(esp_hw_support): fix warnings found by GNU static analyzer 2024-06-18 14:25:37 +08:00
morris a7e7fe2ee8 Merge branch 'refactor/async_memcpy_allocate_dma_memory' into 'master'
refactor(async_memcpy): clean up memory allocation code

See merge request espressif/esp-idf!31197
2024-06-04 21:09:48 +08:00
morris 3e3f82a3fd refactor(async_memcpy): clean up memory allocation code 2024-05-30 18:26:34 +08:00
morris 68cb0d442f change(dw_gdma): clean up memory allocation for link list items 2024-05-29 18:00:00 +08:00
morris dc060460ea change(async_memcpy): set DMA transfer burst size 2024-05-24 22:43:55 +08:00
morris dc6989796a feat(gdma): set burst size and return alignment constraint
burst size can affect the buffer alignment
2024-05-24 22:43:55 +08:00
Song Ruo Jing ea7d496e58 feat(ppa): add PPA driver support for ESP32P4
Remove L4/L8, YUV422 in PPA driver
Clean up
2024-05-24 14:23:54 +08:00
Song Ruo Jing d956ba2a6c feat(ppa): add PPA driver support for ESP32P4
Add burst_length option to client
Change uint32_t to color_pixel_rgb888_data_t
Descriptor always malloc with MALLOC_CAP_INTERNAL | MALLOC_CAP_8BIT
Add dscr-port mode block size configuration as a separate API in 2D-DMA driver
Do writeback only on an extended window, instead of entire picture
2024-05-24 14:23:14 +08:00
Song Ruo Jing fd1a718f62 feat(ppa): add PPA driver support for ESP32P4
Modified API operation configuration structure
Rename invoker to client
Support YUV420 color mode for SRM
Move PPA srm/blending engine reset ahead of any 2D-DMA channel configurations
2024-05-23 16:40:56 +08:00
Song Ruo Jing a86e03cba3 feat(ppa): add PPA driver support for ESP32P4
Renamed SR to SRM
2024-05-23 16:40:55 +08:00
Alexey Gerenkov 8b93323da6 Merge branch 'upgrade_clang_toolchain' into 'master'
Upgrade clang toolchain version to 'esp-17.0.1_20240419'

See merge request espressif/esp-idf!29811
2024-05-14 21:47:06 +08:00
Alexey Gerenkov 23bf613eab fix(build): Fix '-Walign-missmatch' warning
"passing 4-byte aligned argument to 64-byte aligned parameter 1"
2024-05-03 16:55:18 +03:00
Wan Lei cceec04195 Merge branch 'refactor/spi_slave_hal_iram_dma_replace' into 'master'
refactor(spi_slave): spi slave and slave HD hal iram dma_ll replace

Closes IDF-6152 and IDF-9656

See merge request espressif/esp-idf!27877
2024-04-30 20:16:18 +08:00
wanlei 31f4e9c698 feat(gdma): strategy_config_t add eof_mode support 2024-04-24 14:01:09 +08:00
morris 07a3e5eaa8 feat(mipi_dsi): support isr iram safe 2024-04-23 18:31:16 +08:00
Armando (Dou Yiwen) 116bdf4762 Merge branch 'change/change_esp_cache_aligned_alloc_log_e_to_w' into 'master'
cache: change esp_cache_aligned_alloc_log_e_to_w and update to use heap cap malloc flags

Closes IDF-9666

See merge request espressif/esp-idf!30087
2024-04-15 17:02:02 +08:00