Commit Graph

100 Commits

Author SHA1 Message Date
morris
eec76a070e feat(esp_driver_dma): add dw_gdma backend for async_memcpy 2026-08-10 16:16:53 +08:00
morris
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 Vikhammer
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 Vikhammer
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
gaoxu
5c96c978c9 fix(dvp): fix dvp loss frame error 2025-07-26 17:43:46 +08:00
Marius Vikhammer
bf84ab652a change(test_utils): moved test_utils component to tools/test_apps/components/ 2025-07-21 14:05:50 +08:00
Dong Heng
20f1700053 Merge branch 'feature/lcd_cam_dvp_driver_only_gen_clock' into 'master'
feat(esp_driver_cam): DVP driver supports only initializing the clock and XCLK pin to generate a clock for the external device

Closes IDF-13385

See merge request espressif/esp-idf!39837
2025-07-08 16:49:51 +08:00