Commit Graph
103 Commits
Author SHA1 Message Date
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
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 eec76a070e feat(esp_driver_dma): add dw_gdma backend for async_memcpy 2026-08-10 16:16:53 +08:00
morrisandCursor 74d9e99d91 refactor(lcdcam): move shared core clock setup to drivers
Configure the shared LCDCAM core clock through guarded LCD and CAM LL APIs,
and unify LCD functional clock LL calls around group IDs across supported targets.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-27 18:40:04 +08:00
wuzhenghui 7c75525edd fix(driver): fix drivers clock management 2026-07-22 16:32:12 +08:00
Alexey Lapshin 1791325998 change(ci): enable -Werror=unused-but-set-variable 2026-07-16 10:54:36 +07:00
Gao Xu 31d519d52d Merge branch 'feat/csi_error_event' into 'master'
Add MIPI-CSI error event

Closes IDF-12075

See merge request espressif/esp-idf!49258
2026-07-13 17:59:29 +08:00
gaoxu 129f11f6d8 ci(csi): added test for MIPI-CSI host error event 2026-07-13 17:25:47 +08:00
gaoxu 24a51e6b16 feat(csi): add MIPI-CSI host error event 2026-07-13 15:10:16 +08:00
morris 56f56b887b fix(csi): move csi_fsm init before resource allocation to fix err-path leak
CSI_FSM_INIT is 1, but the controller struct is zero-allocated.
Any failure before the former csi_fsm assignment (near the end of
esp_cam_new_csi_ctlr) jumped to err: which called s_del_csi_ctlr.
That function bailed out immediately because csi_fsm == 0, leaking
the claimed slot, queue, bridge, DMA channel, PM lock, and backup
buffer. Move csi_fsm = CSI_FSM_INIT right after a successful claim
so the err: path properly tears down all allocated resources.
2026-07-09 10:27:01 +08:00
Marius Vikhammer ff88ad88a9 Merge branch 'test/linux-full-component-build' into 'master'
test: add Linux full component build app

See merge request espressif/esp-idf!50377
2026-07-08 10:13:12 +08:00
Marius VikhammerandCursor e2c86567ac fix: preserve Linux component header registration
Keep Linux components include-only when their runtime dependencies are unavailable.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-06 13:36:34 +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
Marius VikhammerandCursor bd25b59620 test: add Linux full component build app
Exercise unrestricted Linux-target builds so unsupported hardware-only components are caught by CI.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-06 13:26:17 +08:00
gaoxu 4e3751b32e feat(cam): support dvp cam on ESP32-S31 2026-05-14 17:09:49 +08:00
armando a472bfbb69 feat(csi): support custom data type 2026-02-28 11:21:12 +08:00
armando 303da81075 feat(csi): support csi input bit swap 2026-02-05 01:18:27 +00:00
morris fe436d881e feat(ci): remove common_components dependencies from peripheral drivers
Replace *common_components with specific driver dependencies across all
peripheral driver test apps and examples to prevent unnecessary CI
triggers
when common_components change.

This follows the same pattern established in TWAI driver commit:
6d21cc6c29

Changes made:
- 26 component test apps updated
(esp_driver_*/test_apps/.build-test-rules.yml)
- 1 driver test app updated
(components/driver/test_apps/.build-test-rules.yml)
- Key examples updated in examples/peripherals/.build-test-rules.yml
- Established standard dependency pattern: esp_hal_xxx, esp_hw_support,
soc
- Added esp_driver_gpio for GPIO-dependent drivers
2026-01-29 16:33:17 +08:00
gaoxu 72c4529e7e feat(cam): add format conversion when new dvp cam 2026-01-26 11:37:12 +08:00
gaoxu 493b67fdc7 feat(csi): add csi color format conversion 2026-01-26 11:37:09 +08:00
gaoxu b53427075e refactor(cam): use fourcc for cam format 2026-01-26 11:37:06 +08:00
Igor Udot f4cb052666 Merge branch 'ci/base_components' into 'master'
ci: use common_components in depends_components

See merge request espressif/esp-idf!45070
2026-01-26 09:08:11 +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
igor.udot 4c26ab876b ci: update build-test-rules to use common_components 2026-01-23 10:14:09 +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
wanckl 70da170f24 test(esp_cam_sensor): fixed cam_spi_slave build errors 2026-01-16 17:53:21 +08:00
morris fb1b53c7c5 refactor(gdma): channel allocation can return both direction within the same call 2026-01-04 15:39:38 +08:00
Dong Heng ff010c06b2 fix(esp_driver_cam): fix MIPI-CSI RX data broken 2025-12-26 09:49:59 +08:00
morris 3c47e1509b fix(drivers): enlarge the default DMA burst size in peripheral drivers 2025-12-22 22:09:15 +08:00
armando a0e52a3a1d refactor(isp): use fourcc for isp color formats 2025-12-17 01:58:58 +00:00
armando b856201cc1 feat(hal):graudate the isp hal driver into a new component 2025-12-10 17:56:43 +08:00
wanckl 4fe7e6ac18 ci(p4): p4 eco5 enable parts of special tests 2025-12-08 13:59:25 +08:00
armando 66da426c83 feat(hal):graudate the camera hal driver into a new component 2025-11-21 10:51:28 +08:00
armando b25ba4a0c1 ci(p4): disable p4 rev3 invalid tests temporarily 2025-11-17 12:11:39 +08:00
gaoxu 96959a2128 feat(cam): support esp32p4 eco5 dvp cam 2025-11-04 11:46:38 +08:00
Lv Xin Yue 73115c34c9 Merge branch 'docs/improve_cam_ctrl_header_files' into 'master'
improve cam driver header files

See merge request espressif/esp-idf!42431
2025-10-21 09:15:02 +08:00
Lv Xin Yue 31700298ed improve cam driver header files 2025-10-20 18:26:46 +08:00
morris e5da8951b3 fix(uart): always add NOP workaround for UART FIFO read on esp32 2025-10-17 13:08:25 +08:00
Chen Chen a4710cc206 refactor(driver): remove redundant driver dependencies
now the driver component only contains legacy code for i2c, twai and
touch sensor
2025-09-30 15:47:45 +08:00
Marius Vikhammer 484d2c5c2f fix(system): fixed issues with unused variable warnings when compiling with NDEBUG 2025-09-19 15:42:07 +08:00
gaoxu 1e674fa044 feat(cam): support format conversion function 2025-08-28 14:14:36 +08:00
Marek Fiala 9d35d63651 feat(cmake): Update minimum cmake version to 3.22 (whole repository) 2025-08-19 14:44:32 +02:00
Gao Xu b67635cbd4 Merge branch 'ci/add_s3_eye_test_and_runner' into 'master'
ci(camera): add esp32s3eye test and runner for DVP

See merge request espressif/esp-idf!41109
2025-08-12 14:58:03 +08:00
Song Ruo Jing 451cfc91c3 Merge branch 'contrib/github_pr_17241' into 'master'
Refactor: Use enum values when assigning "pull_[up|down]_en" fields of "gpio_config" (GitHub PR)

Closes IDFGH-16192

See merge request espressif/esp-idf!41058
2025-08-11 12:08:16 +08:00
gaoxu 178b5802f3 ci(camera): add esp32s3eye test and runner for DVP 2025-08-10 18:45:02 +08:00
armando 458070b1b6 fix(cam): fixed dvp dma desc type on s3 2025-08-08 10:17:05 +08:00
armando b4a482eae1 fix(cam): fixed dvp dma desc type on s3" 2025-08-07 14:11:20 +08:00
Darian Leung 5454499877 refactor: Use enum values for gpio pull up/down fields
Ensure that enum values are used When assigning `pull_up_en` and `pull_down_en`
fields of `gpio_config_t`. Helps avoid `invalid conversion` errors when
building those code snippets in C++.
2025-08-07 11:45:11 +08:00
Marius Vikhammer 4065fb20f3 Merge branch 'feature/esp_test_utils_component' into 'master'
change(test_utils): moved test_utils out of unit-test-app project

See merge request espressif/esp-idf!40678
2025-08-01 11:04:37 +08:00