Commit Graph

118 Commits

Author SHA1 Message Date
morris d13b4862d1 Merge branch 'bugfix/dma_memcpy_psram_workaround' into 'master'
fix(dma): add PSRAM memory barrier for external RAM buffers

Closes IDF-15127

See merge request espressif/esp-idf!45121
2026-01-15 19:14:13 +08:00
morris cf33484844 fix(dma): add PSRAM memory barrier for external RAM buffers 2026-01-15 10:11:25 +08:00
Chen Jichang 4709b6b474 change(soc): split SOC_NON_CACHEABLE_OFFSET macro to SRAM/PSRAM/FLASH 2026-01-14 16:04:28 +08:00
Chen Jichang 307b21f591 feat(gdma): add gdma support for s31 2026-01-14 16:04:28 +08:00
morris 373901e94c Merge branch 'refactor/remove_gdma_trigger_peripheral_t' into 'master'
refactor: remove gdma_trigger_peripheral_t

See merge request espressif/esp-idf!44964
2026-01-13 17:38:53 +08:00
morris 512b499e1b refactor: remove gdma_trigger_peripheral_t 2026-01-12 13:47:54 +08:00
Chen Jichang 13efd171c7 fix(gdma): fix dma burst size when flash enc enabled 2026-01-12 11:52:08 +08:00
morris fb1b53c7c5 refactor(gdma): channel allocation can return both direction within the same call 2026-01-04 15:39:38 +08:00
Chen Jichang f94c0535db fix(dma): fix dma alignment when flash_enc enabled
Closes https://github.com/espressif/esp-idf/issues/17708
2025-12-30 15:22:58 +08:00
morris 29560e6102 refactor(gdma): skip the null buffer in mount pre-check 2025-12-22 22:02:28 +08:00
morris bc064a353a refactor(hal_dma): move bitscrambler from hal component
because bitscrambler can't live without DMA, it's highly binded with the
GDMA peripheral.
2025-11-21 16:10:16 +08:00
morris aa1fd9c611 refactor: avoid function calls inside MIN/MAX macros 2025-11-17 22:17:54 +08:00
Kevin (Lao Kaiyao) ce65a06cc2 Merge branch 'refactor/parlio_rx_use_dma_link' into 'master'
refactor(parlio_rx): use gdma_link for better gdma link management

Closes IDF-13369, IDF-13627, and IDFGH-16449

See merge request espressif/esp-idf!40743
2025-11-04 12:04:45 +08:00
laokaiyao ff1c14b1a3 refactor(parlio_rx): refactor to support unaligned user payload buffer
Closes https://github.com/espressif/esp-idf/issues/17581
2025-10-30 16:12:34 +08:00
laokaiyao 49284c3f8d feat(gdma_link): support to select final node link type 2025-10-30 16:06:12 +08:00
morris 717312f472 fix(gdma): fixed the race conditon in of gdma resource allocation 2025-10-30 16:05:44 +08:00
morris 2de3be7300 feat(dma): graduate the dma driver into a single component 2025-10-19 22:06:46 +08:00
Song Ruo Jing dd5d4bd8d7 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
Also cleaned up DMA2D capability definitions in soc_caps.h
2025-10-15 16:49:22 +08:00
Chen Jichang ddef1d3d52 refactor(gdma): move buffer aligment to buffer mount config 2025-09-26 16:42:33 +08:00
Konstantin Kondrashov dcf486359e feat(log): Optimize log tag init for bin logging 2025-09-15 15:59:52 +03:00
Chen Jichang 4ee0feeb6f refactor(rmt): use gdma link list driver to mount buffer 2025-08-11 14:22:28 +08:00
Chen Jichang 4957e09e5e fix(dma): add burst size check when dma access psram 2025-08-05 11:36:24 +08:00
Chen Jichang 05c2ebcf16 feat(parlio_tx): support buffer switched callback 2025-06-20 11:19:46 +08:00
C.S.M 4860379677 refactor(hw_support): Use esp_os_enter_critical instead of portENTER_CRITICAL_SAFE in esp_hw_support 2025-06-18 11:23:34 +08:00
morris fb4b590941 refactor(dma)!: remove deprecated functions 2025-06-12 12:24:58 +08:00
Chen Jichang 16d25b4a52 feat(gdma): support gdma weighted arbitration on ESP32C5 2025-05-29 11:41:02 +08:00
morris d8f2cd80dc feat(gdma): support allocate cache safe ISR for channels separately 2025-04-15 11:10:45 +08:00
C.S.M c7bcb07ace feat(dma2d): Add a rx empty event callback 2025-03-13 11:37:44 +08:00
Song Ruo Jing 65044efa22 Merge branch 'bugfix/ppa_srm_scale_frag_yuv420' into 'master'
fix(ppa): fix ppa srm potentially get blocked when scaling to YUV420

Closes IDF-12468

See merge request espressif/esp-idf!37318
2025-03-03 22:41:44 +08:00
Song Ruo Jing e791f14bc4 fix(dma2d): dma2d_force_end should not crash when rx channel is idle 2025-02-27 21:12:45 +08:00
morris 95fe253065 feat(gdma): allow bypass the alignment check in the link driver
Closes https://github.com/espressif/esp-idf/issues/15228
2025-02-27 15:18:06 +08:00
morris 46d1d7a43f 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-18 13:37:22 +08:00
morris 5558028870 bugfix(cache): cache invalidate operation should respect the cache line size
not only the buffer address but also the buffer size should aligned to
the cache line size
2025-02-10 17:48:46 +08:00
morris cfca6c606e fix(dma): also consider buffer alignment when calculating the DMA nodes
Closes https://github.com/espressif/esp-idf/issues/15228
2025-02-07 12:34:42 +08:00
morris 0c7fef8ac9 feat(async_memcpy): support rx buffer unaligned to cache line size 2025-01-24 11:46:44 +08:00
morris 8bb6f764e1 refactor(dma): split rx buffer to cache aligned ones 2025-01-24 11:46:16 +08:00
morris 97d09e6427 feat(gdma): added API to count the size of rx buffer until eof 2025-01-13 22:58:27 +08:00
morris 364bbbde68 refactor(cp_dma): to use gdma_link driver for descriptor config 2024-12-02 17:40:13 +08:00
Jiang Jiang Jian 1f947551c0 Merge branch 'feat/sleep_retention_expand_module_bitmap' into 'master'
expand the number of sleep retention modules supported on different chips

Closes PM-230

See merge request espressif/esp-idf!33755
2024-11-20 14:50:35 +08:00
Li Shuai 8eea8a8ef3 change(esp_hw_support): update some modules sleep retention init dependency bitmap 2024-11-18 15:40:47 +08:00
morris b9a8180b17 test(parlio): dma can transmit PSRAM buffer 2024-11-18 14:37:00 +08:00
morris 0ed4c19c5e feat(lcd): support color conversion for mipi dsi driver 2024-11-07 17:02:54 +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