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