Armando (Dou Yiwen)
5e181236b7
refactor(mspi): move esp_mspi_align and mspi_mem_barrier to esp_mspi
2026-09-09 14:17:00 +08:00
morris
f5afb99e3b
fix(gdma): treat burst size 0 and 1 as burst disabled
...
The GDMA layer used `max_data_burst_size == 0` as the only way to disable the
data burst. That conflicts with the upstream drivers' convention where a zeroed
config struct means "unset", so users had no way to ask for the driver default
burst size.
GDMA now treats both 0 and 1 as "no data burst": a single-beat burst has no
benefit over the non-burst mode. The MSPI alignment constraint under Flash
Encryption / PSRAM ECC still takes precedence and is reported with a warning.
The upstream drivers using GDMA now apply their own default burst size (16
bytes) when the user leaves `dma_burst_size` as 0, following the UHCI driver:
- esp_async_crc (AHB / AXI GDMA backend)
- esp_async_memcpy (AHB / AXI / LP-AHB / DW_GDMA backend)
Callers that really want no burst can now set `dma_burst_size` to 1.
2026-09-08 23:29:14 +08:00
morris
66d1b5f641
Merge branch 'feat/i2s_edma' into 'master'
...
feat(i2s): supports DMA buffer in PSRAM
Closes IDF-15256, IDF-11059, and IDF-4471
See merge request espressif/esp-idf!51877
2026-09-03 16:14:03 +08:00
morris
0b8dde2d06
feat(uhci): add flash encryption test on encrypted runners
2026-09-02 17:40:50 +08:00
Chen Chen
bea9fd822c
feat(i2s): enable dma burst size configuration
2026-09-01 16:11:57 +08:00
Chen Chen
1dfce4409a
feat(gdma): add burst size validation check during config
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-01 16:07:51 +08:00
Marius Vikhammer
532b433246
fix(build_system): cleaned up esp_psram dependencies
...
Also moved mspi_mb functionality to esp_hw_support together with
other mspi functionality
2026-08-24 11:12:17 +08:00
morris
fe465ae1fe
Merge branch 'fix/psram-ecc-mspi-dma-align' into 'master'
...
fix(mspi): handle PSRAM ECC DMA alignment across MSPI users
Closes IDF-15850, IDF-15910, and IDF-15700
See merge request espressif/esp-idf!49987
2026-08-20 11:51:46 +08:00
Hu Rui
b6c74df553
feat(gdma): add tx done and total_eof callbacks
2026-08-17 19:28:07 +08:00
Chen Jichang
e008f5a627
refactor(gdma): increase performance and optimize api
2026-08-17 17:02:06 +08:00
Chen Jichang
2b8029c775
feat(mspi): split dma and mspi alignment
2026-08-17 16:49:27 +08:00
morris
c07cec57ca
Merge branch 'refactor/i2s_gdma_link' into 'master'
...
refactor(i2s): uses GDMA link to mount DMA descriptors
Closes IDF-15890
See merge request espressif/esp-idf!51510
2026-08-17 10:04:16 +08:00
Chen Jichang
7d6164515c
refactor(lcd): add async dma2d copy wrapper
2026-08-13 14:29:43 +08:00
Chen Jichang
e3144ebd08
fix(dma2d): improve async color convert performance
2026-08-13 14:29:43 +08:00
Chen Chen
3acbac7b1c
refactor(gdma): pass channel count to retention test helper
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-12 17:04:48 +08:00
morris
eec76a070e
feat(esp_driver_dma): add dw_gdma backend for async_memcpy
2026-08-10 16:16:53 +08:00
Chen Ji Chang
5abb8ab351
Merge branch 'test/enable_c61_h4_flash_enc_test' into 'master'
...
test(flash_enc): enable c61 and h4 flash_enc test
Closes IDF-15964
See merge request espressif/esp-idf!50872
2026-07-23 16:51:51 +08:00
Chen Jichang
294f35cb03
test(dma): add psram ecc test for supported targets
2026-07-21 14:50:23 +08:00
Chen Jichang
9a196c8416
remove(lcd): remove restart support for p4 and s31
2026-07-20 13:19:09 +08:00
Chen Jichang
6322016c9d
test(flash_enc): enable c61 and h4 flash_enc test
2026-07-17 16:06:34 +08:00
morris
08346e011a
test(drivers): run flash encryption apps on real hardware
...
Replace the virtual efuse flash-encryption flow in parlio, rmt, and lcd
test apps with real-device flash_enc configs so CI can validate the same
path used on encryption runners.
2026-07-13 14:33:47 +08:00
morris
18f50fefa9
Merge branch 'feat/esp_macro_align_up_down' into 'master'
...
refactor(esp_common): centralize ALIGN_UP/ALIGN_DOWN into esp_macros.h
See merge request espressif/esp-idf!50335
2026-07-06 19:09:14 +08:00
Chen Ji Chang
b09ea896b6
Merge branch 'fix/fix_async_color_convert_csc' into 'master'
...
fix(dma2d): fix async color convert csc check
See merge request espressif/esp-idf!50229
2026-07-06 16:10:10 +08:00
morris
651d6a283f
refactor(esp_common): centralize ALIGN_UP/ALIGN_DOWN into esp_macros.h
...
Remove ~50 duplicate local definitions of ALIGN_UP/ALIGN_DOWN/ALIGN_UP_BY/
ALIGN_DOWN_BY across the codebase and replace them with canonical
ESP_ALIGN_UP/ESP_ALIGN_DOWN from esp_macros.h.
2026-07-06 13:36:06 +08:00
Chen Jichang
5123e1c634
fix(dma2d): fix async color convert csc check
2026-07-06 12:43:35 +08:00
Song Ruo Jing
e4a269d793
Merge branch 'bugfix/dma2d_dequeue_mechanism' into 'master'
...
fix(dma2d): add a dequeue mechanism for dma2d driver
See merge request espressif/esp-idf!49925
2026-07-06 11:19:53 +08:00
Song Ruo Jing
3d8fd22e14
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.
2026-07-02 20:25:09 +08:00
Song Ruo Jing
92024d98b6
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-02 20:25:09 +08:00
Sudeep Mohanty
b3951f4013
fix(test_apps): override config defaults unused by these tests
...
These tests enable features they do not use -- the VFS console, Wi-Fi task core pinning, and
the DS peripheral -- which shift memory layout, interrupt allocation, and peripheral access
enough to fail them. Override the unused options in each test's sdkconfig and ignore the
resulting unknown-symbol build warnings.
2026-07-01 13:17:25 +02:00
morris
e34e2af9e4
Merge branch 'docs/esp_crc_rom_api' into 'master'
...
fix(esp_crc): clarify CRC ROM helper usage documentation
Closes IDFGH-17804
See merge request espressif/esp-idf!50177
2026-07-01 15:11:11 +08:00
Hu Rui
03cf5bb45a
Merge branch 'refactor/driver_dac_common' into 'master'
...
refactor(dac): improve the DAC driver
See merge request espressif/esp-idf!48212
2026-07-01 13:36:23 +08:00
morris
aa4532395a
fix(esp_crc): clarify CRC helper usage documentation
...
Document the implicit bitwise inversion behavior in the CRC ROM wrappers
and add regression tests covering continuous-buffer examples.
Closes https://github.com/espressif/esp-idf/issues/18715
2026-06-30 15:37:06 +08:00
morris
624a21f359
feat(dma2d): support RGB24 and BGR24 scramble conversion
...
Add async color convert coverage for direct RGB24/BGR24 byte-order swaps
and
thread both TX and RX CSC state through DMA2D transactions for future
extensibility.
2026-06-28 17:07:18 +08:00
Hu Rui
3de0e061c1
refactor(dac): improve the DAC driver
2026-06-26 13:45:38 +08:00
Chen Jichang
0853d69715
fix(gdma): fix buffer alignment when psram ecc enabled
...
Closes https://github.com/espressif/esp-idf/issues/18739
2026-06-24 17:02:39 +08:00
morris
dcd7f1deba
feat(dma2d): added async color convert driver
2026-06-16 15:01:23 +08:00
Song Ruo Jing
14d8570163
feat(ppa): add sleep retention support for DMA2D and PPA
2026-06-15 15:45:07 +08:00
morris
891341153d
Merge branch 'feat/esp_async_memcpy_blocking_api' into 'master'
...
feat(esp_driver_dma): add blocking async memcpy API
See merge request espressif/esp-idf!49295
2026-06-08 22:24:09 +08:00
morris
6bc9814ffb
feat(esp_driver_dma): add blocking async memcpy API
...
Add a blocking wrapper for async memcpy so simple users can wait for one DMA copy without writing their own ISR callback and semaphore plumbing. Update functional tests and documentation to use the simpler API where async completion handling is not needed.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-05 12:07:17 +08:00
Chen Jichang
1f7fc79540
fix(gdma): fix crc stuck with large input
2026-06-04 15:59:45 +08:00
morris
c49a6ed454
fix(async_crc): limit the blocking API only accept infinite timeout
...
also support user configured interrupt priority
2026-06-03 15:43:12 +08:00
Chen Jichang
f8ff130959
feat(lcd): support buffer switch interrupt
2026-06-01 15:19:19 +08:00
morris
90e0b94ed6
test(dma): reenable unit test for esp32p4 rev1 targets
2026-05-27 10:32:34 +08:00
Li Shuai
e28ee420ac
fix(ci): some digital peripherals support sleep retention attach and detach
2026-05-21 11:46:16 +08:00
Chen Jichang
cc3edfa727
feat(gdma): support gdma sleep retention on s31
2026-05-13 18:09:17 +08:00
Chen Jichang
3c3b9a6a4e
ci(esp32h4): disable tests which cannot pass
2026-05-11 16:48:58 +08:00
Chen Jichang
645ff40cde
ci(esp32h4): enable ci target test
2026-05-11 16:48:58 +08:00
wuzhenghui
d3c5129050
fix(driver): fix retention unsupported mouldes TOP pd test
2026-05-07 12:02:05 +08:00
morris
d318aeaafb
feat(gdma): move gdma sleep retention info from esp_hal_dma to esp_driver_dma
2026-04-24 15:35:35 +08:00
Song Ruo Jing
b40257aed2
refactor(dma2d): use ESP_INTR_FLAG_SHARED_PRIVATE flag for DMA2D interrupt
2026-04-09 20:31:41 +08:00