Commit Graph
3165 Commits
Author SHA1 Message Date
Ondrej Kosta 6a82c094fb fix(esp_clk_tree): temporarily disabled gating of all ref_clks on ESP32S31 2026-05-21 13:18:57 +02:00
Li Shuai d7a2e15164 Merge branch 'feat/pm-683' into 'master'
support sleep retention runtime module attach/detach feature

Closes PM-683, PM-656, and BT-4216

See merge request espressif/esp-idf!47164
2026-05-21 17:07:58 +08:00
Song Ruo Jing 3ba8d08d02 fix(clk): raised axi/ahb clock freq up to 106mhz at max 2026-05-21 16:39:40 +08:00
Sudeep Mohanty fbddd41690 fix(esp_hw_support): use elif __riscv guard in spinlock.h
spinlock.h used #else to include riscv/rv_utils.h for all non-Xtensa
targets. On Linux host (neither __XTENSA__ nor __riscv defined), this
pulls in a non-existent header. Change to #elif __riscv, matching
esp_cpu.h's existing pattern.
2026-05-21 10:05:48 +02:00
Ondrej Kosta c7d6c41198 feat(clk_tree): support derived PLL clocks
Add a generic derived-PLL clock engine to esp_clk_tree_common that
handles acquire/release, mux selection, and divider programming for
target-defined derived clocks. Per-target descriptors (ESP32-P4,
ESP32-S31) plug into the engine via
esp_clk_tree_get_derived_clk_desc().
2026-05-21 15:59:42 +08:00
Island b970c5f674 Merge branch 'ble_dev/esp32h21_chip_20260513' into 'master'
Ble dev/esp32h21 chip 20260513

Closes BLERP-2798, IDF-11626, IDF-11652, IDF-11653, IDF-11655, IDF-14811, IDF-14812, IDF-14813, IDF-14814, and IDF-14815

See merge request espressif/esp-idf!48499
2026-05-21 14:00:09 +08:00
Armando (Dou Yiwen) a6c0ea2289 Merge branch 'feat/sdmmc_s31' into 'master'
sdmmc: s31 support

Closes IDF-14705 and IDF-14706

See merge request espressif/esp-idf!47232
2026-05-21 04:59:49 +00:00
He Binglin e3fb6a0047 Merge branch 'feat/esp_idf_h21_keep_apm_func' into 'master'
feat(esp_hw_support): keep esp32h21 apm_func_ctrl value after sleep

See merge request espressif/esp-idf!48733
2026-05-21 12:05:18 +08:00
Li Shuai 7b541be9d5 add comment for sleep_retention_module_detach interface 2026-05-21 11:46:16 +08:00
Li Shuai f01e818c40 add comment for sleep_retention_module_attach interface 2026-05-21 11:46:16 +08:00
Li Shuai 2c33426d33 change(esp_hw_support): changes for suggestion 2026-05-21 11:46:16 +08:00
Li Shuai e28ee420ac fix(ci): some digital peripherals support sleep retention attach and detach 2026-05-21 11:46:16 +08:00
Li Shuai d1aaeb25e7 fix(ci): error: dereference of NULL 'args' 2026-05-21 11:46:16 +08:00
Li Shuai ba0c441716 change(esp_hw_support): bypass regdma process when retention entries link final default only 2026-05-21 11:46:16 +08:00
cjin e7921ed7dc feat(sleep): added attach attribute to system and modem clock retention 2026-05-21 11:46:16 +08:00
Li Shuai ec1705c362 change(esp_system): support system minimum digital peripherals retention runtime attach and detach 2026-05-21 11:46:16 +08:00
Li Shuai 0d9587952d change(esp_wifi): support wifi module retention runtime attach and detach 2026-05-21 11:46:16 +08:00
Li Shuai 3bef3296c9 fix(esp_hw_support): fix regdma link dump to print module number 2026-05-21 11:46:16 +08:00
Li Shuai 710a04f649 change(esp_hw_support): attribute assert check in module retention allocate and free 2026-05-21 11:46:16 +08:00
Li Shuai 648916ce41 change(esp_hw_support): add reference bitmap for multiple module attach/detach 2026-05-21 11:46:16 +08:00
Li Shuai aa56e1af2e feat(esp_hw_support): support sleep retention module runtime attach and detach 2026-05-21 11:46:16 +08:00
Li Shuai c4a8b106ce change(esp_hw_support): duplicate module sleep retention entries context to support module attach and detach 2026-05-21 11:46:16 +08:00
armando 6d12e30433 feat(ldo): support s31 psram sdmmc power domain
Move S31 PSRAM/SDMMC power setup onto the common LDO path so shared users can control the domain consistently.
2026-05-21 09:09:14 +08:00
Wu Zheng Hui 91e66a8d19 Merge branch 'feat/support_io_edge_wakeup' into 'master'
feat(esp_hw_support): support rtc io edge wakeup sleep

Closes FCS-1880 and IDF-11812

See merge request espressif/esp-idf!48410
2026-05-20 19:37:35 +08:00
ShenWeilong cf813a4a1e feat(ble): Added ble support for esp32h21 2026-05-20 19:24:08 +08:00
hebinglin 8545a91284 feat(esp_hw_support): keep esp32h21 apm_func_ctrl value after sleep 2026-05-20 15:06:58 +08:00
wuzhenghui 2f845ec76d feat(esp_hw_support): update edge wakeup CI test cases 2026-05-20 11:04:05 +08:00
wuzhenghui b7ec505923 feat(esp_driver_gpio): support rtc_io edge wakeup deepsleep 2026-05-20 11:04:00 +08:00
wuzhenghui 15e4028e2d fix(esp_hw_support): fix psram data corrupt after lightsleep if halfsleep is enabled 2026-05-19 19:26:29 +08:00
Konstantin Kondrashov b853ad7091 fix(pmu_sleep): Wait eFuse memory update after sleep for ESP32H4 2026-05-19 14:11:34 +03:00
Frantisek Hrbata d43470cf93 Merge branch 'fix/cmakev2-bootloader-spiram-source-guards' into 'master'
fix(esp_hw_support): guard SPIRAM uses with !BOOTLOADER_BUILD

See merge request espressif/esp-idf!48447
2026-05-19 11:32:53 +02:00
Shu Chen 51ac8546d5 Merge branch 'feat/add_target_esp32h21' into 'master'
Feat/add target esp32h21

See merge request espressif/esp-idf!48531
2026-05-19 02:39:37 +00:00
zhuanghang 26df946075 feat(802.15.4): supported 802.15.4 for esp32h21 2026-05-18 15:15:32 +08:00
He Binglin 49d8998189 Merge branch 'bugfix/esp_idf_s2_rtc_wdt_mistakenly_enabled' into 'master'
Bugfix/esp idf s2 rtc wdt mistakenly enabled

See merge request espressif/esp-idf!48582
2026-05-18 14:42:17 +08:00
hebinglin 482eb947c7 fix(esp_hw_support): fix rtc wdt mistakenly enabled during lslp in esp32s2 2026-05-15 17:31:51 +08:00
morris b264544bd9 Merge branch 'feat/support_gdma_sleep_retention_on_s31' into 'master'
feat(gdma): support gdma sleep retention on s31

Closes IDF-14760 and IDF-15640

See merge request espressif/esp-idf!46959
2026-05-15 14:44:08 +08:00
gaoxu 03c8862a9f feat(adc): support ADC single ended oneshot and continuous mode on ESP32-S31 2026-05-14 16:31:29 +08:00
Alexey Gerenkov edb75262a1 Merge branch 'feature/update-esp-clang-to-esp-21.1.3_20260304' into 'master'
feat(tools): update esp-clang version to esp-21.1.3_20260408

Closes IDF-14965, LLVM-501, and LLVM-531

See merge request espressif/esp-idf!46361
2026-05-13 22:54:10 +08:00
Michael (XIAO Xufeng) 636f56f6ce Merge branch 'fix/s3_xip_opt_os_startup' into 'master'
fix(mspi): fixed possible boot failure in some builds when psram is enabled

Closes IDF-15634 and IDF-15637

See merge request espressif/esp-idf!48258
2026-05-13 18:55:35 +08:00
Chen Jichang cc3edfa727 feat(gdma): support gdma sleep retention on s31 2026-05-13 18:09:17 +08:00
Gao Xu 69136606ab Merge branch 'feat/s31_rng_basic_support' into 'master'
Feat/s31 rng support

Closes IDF-14632, WIFIBUG-1875, and TZ-2554

See merge request espressif/esp-idf!47217
2026-05-13 17:47:59 +08:00
Xiao Xufeng a671c83b0b fix(mspi): fixed possible boot failure in some builds when psram is enabled
A typical scenario is: when XIP on PSRAM enabled, compiler optimization level is Os. Under certain binary layout, boot hangs and backtrace points to `esp_sleep_config_gpio_isolate`.

The root cause is that, during PSRAM initialization, it calls esp_gpio_reserve, which happens to place before the reported function. However, after call, there is no barrier before the clock adjustment in `mspi_timing_enter_low_speed_mode`. The clock gets changed when the cache is still fetching data, resulting in the corrupted data in the end of the cache line.

This commits add spi_flash_disable_cache as a barrier to make sure the cache transactions is finished before the clock switch.
2026-05-13 16:46:20 +08:00
morris 7ff718a988 Merge branch 'bugfix/timer_group_sleep_retention_esp32s31' into 'master'
fix(drivers): fixed the gptimer/MCPWM sleep retention driver support on esp32s31

Closes IDFGH-17654, IDF-15651, IDF-15647, IDF-15641, IDF-14746, IDF-15644, IDF-15646, and IDF-15649

See merge request espressif/esp-idf!48394
2026-05-13 15:56:22 +08:00
gaoxu 07aaba7c7b refactor(rng): move rng read data function to rng_ll.h and update docs of RNG source 2026-05-13 15:09:55 +08:00
morris 3d452de7a3 fix(drivers): sleep retention failure on esp32s31 2026-05-13 11:12:08 +08:00
Marius VikhammerandCursor 8f6ea2a1ba test(ci): re-enable ESP32-H4 in core system test apps
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-13 09:00:12 +08:00
Frantisek Hrbata aecc2d200b fix(esp_hw_support): guard SPIRAM-dependent code with !BOOTLOADER_BUILD
The bootloader subproject's full Kconfig discovery resolves CONFIG_SPIRAM=y
when the parent app has it enabled, even though esp_psram is not linked
into the bootloader (the CMake gate is
'if(NOT non_os_build) if(CONFIG_SPIRAM) idf_component_optional_requires(PRIVATE esp_psram)').
Shared sources in esp_hw_support that #include esp_psram private headers
or call esp_psram functions guarded only by '#if CONFIG_SPIRAM' then fail
to compile in the bootloader with
"fatal error: esp_private/esp_psram_extram.h: No such file or directory".

Mirror the CMake gate in source guards: every '#if CONFIG_SPIRAM' block in
a bootloader-compiled source that touches esp_psram becomes
'#if !BOOTLOADER_BUILD && CONFIG_SPIRAM'. The leaked CONFIG_SPIRAM value
in the bootloader's sdkconfig.h is then harmless because every dependent
block evaluates to false.

Sites updated:
- esp_memory_utils.c: include of esp_psram_extram.h and all
  esp_psram_check_ptr_addr() call sites
- port/esp32{c5,c61,p4,s31}/cpu_region_protect.c: include of
  esp_psram_extram.h (inner SPIRAM_FETCH/RODATA/PRE_CONFIGURE blocks are
  already inside outer !BOOTLOADER_BUILD guards)
- port/esp32{p4,s31}/pmu_sleep.c: include of esp_psram_impl.h and
  esp_psram_impl_{enter,exit}_halfsleep_mode() call sites

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2026-05-12 12:19:24 +02:00
C.S.M 036fcf8e37 Merge branch 'feat/bod_bringup_s31' into 'master'
feat(bod): Add bod support on esp32s31

Closes IDF-14658

See merge request espressif/esp-idf!48310
2026-05-12 15:29:19 +08:00
Marius Vikhammer 03f87411a2 ci(hw_support): add depends_components for hw-support test-apps 2026-05-12 14:12:49 +08:00
C.S.M 2b7992213c feat(bod): Add bod support on esp32s31 2026-05-12 12:30:35 +08:00