Commit Graph

4484 Commits

Author SHA1 Message Date
morris
cd356d592d refactor(adc): move channel count to adc LL 2026-08-25 12:30:52 +08:00
Armando (Dou Yiwen)
b532be2707 Merge branch 'fix/fix_mpll_cali_flow_s31' into 'master'
mpll: improved mpll calibration flow on s31

See merge request espressif/esp-idf!51928
2026-08-25 02:48:14 +00:00
morris
e93e858123 Merge branch 'fix/ci_h4_enable_spi_test' into 'master'
fix(driver_spi): ci enable h4 generic test

Closes IDF-15615

See merge request espressif/esp-idf!51937
2026-08-24 15:48:35 +08:00
morris
7b9cc1ac79 Merge branch 'refactor/dac_priv_dma_callbacks' into 'master'
refactor(dac): move DMA interrupt handling behind dac_priv_dma callbacks

See merge request espressif/esp-idf!51860
2026-08-24 10:23:51 +08:00
Armando (Dou Yiwen)
9726078b55 fix(mpll): improved mpll calibration flow on esp32s31
Signed-off-by: Armando (Dou Yiwen) <douyiwen@espressif.com>
2026-08-24 09:34:36 +08:00
wanckl
4cf27f5e88 fix(driver_spi): ci enable h4 generic test 2026-08-21 19:39:57 +08:00
Hu Rui
18e0614798 refactor(dac): move DMA interrupt handling behind dac_priv_dma callbacks 2026-08-21 18:53:09 +08:00
morris
1c13ed9bf3 Merge branch 'fix/esp_idf_h4_pmu_icg_mapping' into 'master'
fix(esp_hw_support): pmu_icg_mapping define mistake

See merge request espressif/esp-idf!51905
2026-08-21 11:49:03 +08:00
Jiang Jiang Jian
9ad859a1e4 Merge branch 'fix/esp32s31_cpu_clk_src_dependency' into 'master'
fix(esp_hw_support): fix esp32s31 cpu clk src dependency

Closes BT-4455

See merge request espressif/esp-idf!51572
2026-08-20 20:53:03 +08:00
morris
d8df109e32 Merge branch 'feat/spi_master_ddr_mode' into 'master'
feat(driver_spi): master driver support DDR(DTR) clock mode

Closes IDFGH-12948

See merge request espressif/esp-idf!49810
2026-08-20 17:40:32 +08:00
hebinglin
27fe024e30 fix(esp_hw_support): pmu_icg_mapping define mistake 2026-08-20 17:23:26 +08:00
morris
fe465ae1fe Merge branch 'fix/psram-ecc-mspi-dma-align' into 'master'
fix(mspi): handle PSRAM ECC DMA alignment across MSPI users

Closes IDF-15850, IDF-15910, and IDF-15700

See merge request espressif/esp-idf!49987
2026-08-20 11:51:46 +08:00
wanckl
a9ce9e4abf feat(driver_spi): master driver support DDR(DTR) clock mode 2026-08-19 17:22:45 +08:00
wuzhenghui
4b34a6b250 feat(bootloader): use CPLL/4 as flash default 80M clock source 2026-08-19 16:16:05 +08:00
harshal.patil
01b86f1269 change(esp_hw_support): harden the ESP32-S31 PSRAM region permissions
Both PSRAM layouts were mapped as a single RWX window, so everything in external
RAM - the heap included - was executable.

PSRAM used as data only is now RW, and under XIP-from-PSRAM it is split per
section as ESP32-P4 does: .text RX, .rodata read-only, and the MMU-page
alignment gaps and the reclaimed heap RW, so neither is executable.

Both describe the layout that esp_psram_init() produces, and the entries are
locked, so - again as on ESP32-P4 - they are only narrowed when
CONFIG_SPIRAM_PRE_CONFIGURE_MEMORY_PROTECTION says that layout applies. Without
it the application owns the region and PSRAM stays RWX.

The per-section entries cost one PMP entry more than the 16 available, so the CPU
subsystem and peripheral windows are chained as TOR entries, taking one entry
instead of three.

soc.h is corrected against the S31 bus address map: the peripheral window base
was 1 MB too low, and the LP peripheral top, derived from a register base plus a
size rather than from the map, was 16 KB short. SOC_NON_CACHEABLE_OFFSET_FLASH
is added.
2026-08-19 09:39:52 +05:30
nilesh.kale
b5891edb9b feat: enable cpu region protection for esp32s31 2026-08-17 19:23:58 +05:30
Chen Jichang
2b8029c775 feat(mspi): split dma and mspi alignment 2026-08-17 16:49:27 +08:00
Island
ac6504cab6 Merge branch 'fix/use_conflict_cb_for_regi2c_when_regdma_rf_is_used' into 'master'
feat(sleep): applied regi2c conflict process at regdma rf

See merge request espressif/esp-idf!51770
2026-08-17 14:43:56 +08:00
cjin
5533d153f5 feat(sleep): applied regi2c conflict process at regdma rf 2026-08-14 16:29:55 +08:00
Chen Jichang
f2cf926e0a feat(rgb_lcd): support draw bitmap hook 2026-08-13 14:29:43 +08:00
Michael (XIAO Xufeng)
ea634fc1e9 Merge branch 'fix/fix_mpll_init_flow' into 'master'
mpll: improved mpll init flow

See merge request espressif/esp-idf!51658
2026-08-11 21:43:44 +08:00
Erhan Kurubas
114807c981 feat(riscv_trace): add trace support for ESP32-H21 2026-08-11 13:06:45 +02:00
Erhan Kurubas
cde1da8fe6 feat(riscv_trace): add trace support for ESP32-H4 2026-08-11 13:06:45 +02:00
Erhan Kurubas
64d913f86b feat(riscv_trace): add trace support for ESP32-C61 2026-08-11 13:06:45 +02:00
Armando (Dou Yiwen)
81acd9c18f fix(mpll): fix mpll calibration fail bug 2026-08-11 17:57:55 +08:00
Erhan Kurubas
cd89c2b22b feat(riscv_trace): add trace support for ESP32-H2 2026-08-07 14:44:03 +02:00
Erhan Kurubas
5e9000329a feat(riscv_trace): add trace support for ESP32-C6 2026-08-07 14:44:03 +02:00
Erhan Kurubas
91534a8488 fix(soc): correct mem_start_addr typo in H2/H21 trace header 2026-08-07 14:44:03 +02:00
Erhan Kurubas
57ccd12f17 Merge branch 'esp32c5_trace_encoder' into 'master'
feat(esp_riscv_trace): add ESP32-C5 support

See merge request espressif/esp-idf!51384
2026-08-07 13:45:10 +02:00
Gao Xu
c7a146ea24 Merge branch 'fix/update_trng_workflow_for_esp32s31' into 'master'
fix(rng): update TRNG bringup for esp32s31 runtime use

See merge request espressif/esp-idf!48579
2026-08-07 11:32:46 +08:00
Erhan Kurubas
1a59c3e769 feat(esp_riscv_trace): add ESP32-C5 support 2026-08-06 17:13:04 +02:00
Erhan Kurubas
3dfd8f0154 feat(esp_riscv_trace): add ESP32-S31 support
ESP32-S31 uses the same trace encoder IP as ESP32-P4. Of the E-Trace v2.0
parameters the two targets report, only privilege_width_p differs (1 on P4,
2 on S31), and it affects both the sync packet layout and the filter's
privilege selector.

- Add the SOC_RISCV_TRACE_* caps for ESP32-S31 along with the esp32s31 LL, and
  declare TRACE0/TRACE1 in the target's trace_struct.h.
- Carry privilege_width_p as SOC_RISCV_TRACE_PRIV_WIDTH so the sync packet
  decoder can locate the address field, which starts one bit later on targets
  that implement supervisor mode.
- Use the RISC-V architectural privilege encoding (0 user, 1 supervisor,
  3 machine) in the public filter enum so the values do not change per target,
  and let each LL narrow them to its own register field.
- Add riscv_trace_ll_priv_is_supported() per target, so a privilege level the
  selector cannot represent is rejected with ESP_ERR_NOT_SUPPORTED rather than
  being silently narrowed to a different level. It lives next to the narrowing
  code so the two cannot drift apart.
- Fix trace buffer allocation on targets whose internal RAM is not reached
  through a cache. esp_cache_get_alignment() reports 0 there, which underflowed
  the size check and failed every allocation. Align base and size to the larger
  of the reported cache line and the encoder's 4-byte write granularity.
2026-08-06 13:08:26 +08:00
gaoxu
5a2658edb4 fix(rng): fix esp_random failed beacuse do not enable RNG clock 2026-08-05 14:43:24 +08:00
Gao Xu
db9e5b4d31 Merge branch 'feat/rng_support_h21' into 'master'
H21 RNG support

Closes IDF-11503

See merge request espressif/esp-idf!50061
2026-08-05 14:15:43 +08:00
He Binglin
dce537e00e Merge branch 'feat/esp_idf_h4_retention_clk_icg' into 'master'
feat(esp_hw_support): refactor PMU sleep icg and support retention ICG

See merge request espressif/esp-idf!48915
2026-07-31 10:35:19 +08:00
Renz Christian Bagaporo
7054ec851c Merge branch 'feat/cmakev2_ulp_legacy_shim' into 'master'
feat(ulp): build all legacy ULP projects through CMakev2

See merge request espressif/esp-idf!50143
2026-07-31 07:10:43 +08:00
morris
9c068fe2d9 Merge branch 'feature/add_mcpwm_rc_fast_clk_source' into 'master'
feat(mcpwm): support RC_FAST group clock source

Closes IDF-8048

See merge request espressif/esp-idf!51149
2026-07-29 23:05:19 +08:00
Steven Yang
8a982614a2 feat(mcpwm): support RC_FAST group clock source
Expose RC_FAST as a shared MCPWM group clock source for timers,
capture timers, and carriers on ESP32-C5, ESP32-C6, ESP32-H2,
and ESP32-P4. Fix the ESP32-S31 MCPWM clock selector mapping.

Add a hardware runtime test that verifies MCPWM Timer counting
resolution for every supported clock source.
2026-07-29 20:20:47 +08:00
Wang Meng Yang
5203199852 Merge branch 'docs/update_coexist_docs' into 'master'
docs(coex): enable coexist docs for c61 h21 h4 s31

See merge request espressif/esp-idf!51105
2026-07-29 20:14:35 +08:00
hebinglin
57daf0a8f7 feat(esp_hw_support): add backup clk icg support 2026-07-29 17:09:34 +08:00
hebinglin
a4889bd73d change(esp_hw_support): refactor pmu/esp_sleep param struct 2026-07-29 15:23:09 +08:00
Alexey Lapshin
62ef4a6166 feat(soc): esp32s31 enable zc* extension 2026-07-29 14:19:38 +08:00
Renz Bagaporo
1f5cba3070 fix(ulp): clarify buildv2 child marker
Rename the internal ULP child-build marker to __ULP_BUILDV2 so component CMake files make the build-system scope explicit.

Document that the marker is currently set only by the IDF_BUILD_V2 ULP child path.
2026-07-29 13:08:23 +09:00
Erhan Kurubas
11e6799f80 Merge branch 'stub_bins_for_more_targets' into 'master'
Increase OCD stub memory reservation from 8K to 12K and extend this feature to more targets

See merge request espressif/esp-idf!51231
2026-07-28 16:58:05 +02:00
Jiang Jiang Jian
8e7e031230 Merge branch 'feat/support_active_tickless_idle' into 'master'
feat(esp_pm): support freertos tickless IDLE with auto lightsleep disabled

Closes PM-799

See merge request espressif/esp-idf!49817
2026-07-28 17:04:50 +08:00
Erhan Kurubas
e21ab7e724 feat(system): add OCD stub bin support for more targets
Add SOC_DEBUG_HAVE_OCD_STUB_BINS for esp32c5, esp32c61, esp32h4,
esp32h21, esp32p4, and esp32s31. Update TEE linker scripts with
correct esp_tee_app_config offsets for the 0x3000 stub reservation
2026-07-28 08:34:02 +03: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
Wu Zheng Hui
aac7f7ea47 Merge branch 'feat/support_esp32s31_clock_tree_management' into 'master'
feat: support esp32s31 clock tree management

Closes PM-630

See merge request espressif/esp-idf!48934
2026-07-24 20:11:45 +08:00
linruihao
52c9ff43f7 docs(coex): enable coexist docs for c61 h21 h4 s31 2026-07-23 17:18:07 +08:00
harshal.patil
a7b29bfda9 change(security): disable Key Manager support on ESP32-C5/P4/S31
The Key Manager hardware peripheral in its current form needs further
design changes before it can be offered as a production feature.
Until a revised peripheral design is available, withdraw ESP-IDF
support for it on all Key Manager capable targets.
2026-07-22 19:58:23 +05:30