Commit Graph

39 Commits

Author SHA1 Message Date
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
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
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
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
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
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
Song Ruo Jing
db8b921a13 feat(dma2d): add support for esp32s31 2026-04-09 20:30:26 +08:00
morris
f2d62bba74 feat(gdma): expose interrupt priority as a configurable option
- Add intr_priority field to gdma_channel_t structure
- Add intr_bind_name field to gdma_signal_conn_t for interrupt binding
- Validate intr_priority during channel allocation (must be 0-3)
- Use ESP_INTR_FLAG_SHARED_PRIVATE instead of ESP_INTR_FLAG_SHARED
- Use esp_intr_alloc_info() with bind_by.name for shared interrupts
- Add interrupt priority configuration test case
- Update all gdma_periph.c files with pair-specific bind names (gdma_gXpY)
2026-04-01 10:42:22 +08:00
Chen Chen
afe13a644a fix(gdma): revoke burst size array check in gdma_config_transfer 2026-03-23 16:33:30 +08:00
armando
c60ed4b338 fix(spm): rename scp (scratchpad) to spm (scratchpad memory) 2026-03-17 01:29:34 +00:00
armando
c96f69faef change(mem): deprecated tcm and added scp memory utils 2026-03-11 11:18:15 +08:00
morris
a3ef29eb49 feat(gdma): add descriptor empty callback for GDMA RX events 2026-03-09 15:19:57 +08:00
Chen Chen
6ffde29079 feat(spi): make SPI DMA burst size configurable 2026-03-03 14:59:26 +08:00
Song Ruo Jing
9362907287 feat(dma2d,ppa): Support flash encryption for DMA2D and PPA 2026-02-26 16:39:40 +08:00
morris
2712bb2339 feat(crc): added async CRC driver based on GDMA peripheral 2026-02-13 09:57:25 +08:00
Chen Jichang
b8c527a87c refactor(flash_enc): move esp_flash_encryption_enabled() to efuse component 2026-02-05 11:42:08 +08:00
Chen Jichang
0ac402217c test(parlio,rmt,lcd): add virtual flash encryption test 2026-02-05 11:42:08 +08:00
Chen Ji Chang
76b31ecbd9 Merge branch 'fix/fix_dma_burst_size_regression' into 'master'
fix(gdma): skip alignment check for AHBDMA version 1 when flash enc

Closes IDF-15216

See merge request espressif/esp-idf!45434
2026-01-29 22:14:27 +08:00
Chen Jichang
d5ce5f2581 fix(gdma): skip alignment check for AHBDMA version 1 when flash enc 2026-01-28 19:44:36 +08:00
Chen Jichang
7656e0935e feat(gdma): support lp ahb dma on esp32s31 2026-01-28 13:08:07 +08:00
morris
0469db2f83 refactor(rcc): unify the usage of clock control macros for peripherals
- Removed conditional definitions for various RCC_ATOMIC macros across
multiple files, replacing them with a unified PERIPH_RCC_ATOMIC() macro.
- Updated instances where specific RCC_ATOMIC macros were used to ensure
consistent usage of PERIPH_RCC_ATOMIC().
- Deleted unused uart_share_hw_ctrl.h file as its functionality is now
integrated into the new structure.
2026-01-23 18:28:13 +08:00
morris
35bdd8c651 feat(dma): graduate the dma driver from esp_hw_support to esp_driver_dma 2026-01-22 14:14:14 +08:00