wuzhenghui
4ccfe0182c
fix(esp_hw_support): fix regdma wait crypto module timeout in PU top sleep retention
2026-09-17 22:07:28 +08:00
wuzhenghui
66482b8109
fix(esp_hw_support): only bypass pll_160 clock management if PVT is enabled
2026-09-16 19:37:33 +08:00
wuzhenghui
66bc198b4c
change(esp_phy): check phy_state in dslp process before closing rf
2026-09-16 15:03:01 +08:00
wuzhenghui and Cursor
a14ab4d942
fix(esp_hw_support): disable BBPLL after sleep if clk_tree ref is zero
...
PLL_SOURCE retention may leave BBPLL on; sync HW in pmu_sleep_finish and keep is_power_on in IRAM.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 20:37:33 +08:00
wuzhenghui
81a97f38b0
fix(esp_hw_support): wait pll ready before modem clock retention for s31
2026-09-15 20:37:33 +08:00
wuzhenghui
b78696f176
fix(esp_hw_support): enable THREAD_SAFE_CLAIM with PM_EN to fix auto lslp always be rejected
2026-09-15 16:42:10 +08:00
wuzhenghui and Cursor
b72f7a91ce
fix(esp32s31): break clk_tree and RCC ABBA deadlock
...
Keep gated-clk refcnt under s_clk_tree_spinlock only, and call
esp_crypto_common_clk_enable outside PERIPH_RCC so crypto (RCC→clk_tree)
and modem (clk_tree→RCC) cannot deadlock on periph_spinlock
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-09 14:34:07 +08:00
wuzhenghui and Cursor
4bcc24ca6b
test(mbedtls): smoke-test crypto HW after PD_TOP lightsleep
...
Add a mbedtls_ut case that enters TOP PD light sleep then runs minimal
AES/SHA/MPI/ECC/ECDSA ops, catching crypto modules left unusable after wake.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-08 10:53:40 +08:00
wuzhenghui
061881f90c
fix(esp_hw_support): wait DS/ECDSA idle before restore its PCR on wakeup
2026-09-07 15:08:56 +08:00
wuzhenghui
781ecb1a72
fix(esp_hw_support): ungate security clock in retention since ds/ecdsa auto working after PU
2026-09-07 15:08:56 +08:00
wuzhenghui
f0f91578cd
fix(doc): fix uart output handling doc format
2026-09-07 10:56:27 +08:00
wuzhenghui and Cursor
a0803ddd01
fix(esp_hw_support): restore brownout after deep sleep rejection on ESP32-S2
...
ESP32-S2 disables the brownout detector before deep sleep; if sleep is
rejected, re-init it so BOD is not left disabled (PM-519).
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-04 20:18:44 +08:00
wuzhenghui
2a5ab24ec4
change(esp_security): select crypto clock source before enable on s31
2026-09-01 16:53:39 +08:00
wuzhenghui
5a4f4d0954
feat(example): enable powersave CI test by soc cap
2026-09-01 11:44:50 +08:00
wuzhenghui
a9dee592d6
feat(esp_hw_support): use dynamic memory allocation for retention module instances
2026-08-31 16:08:43 +08:00
wuzhenghui
3c2a0cb4f6
change(esp_hw_support): optimize pmu_sleep RAM cost
2026-08-31 15:26:22 +08:00
wuzhenghui
14e25a8abc
change(esp_hw_support): optimize sleep_phy retention static RAM cost
2026-08-31 15:26:22 +08:00
wuzhenghui
11c590c053
change(esp_hw_support): optimize retention driver RAM cost
2026-08-31 15:26:18 +08:00
wuzhenghui
ab48e180ac
fix(spi_flash): integrate branch prediction control during cache operations
2026-08-24 13:27:04 +08:00
wuzhenghui
a3b62bc3c4
fix(esp_hw_support): fix ESP32-S31 CPU/DFS clk_tree refcount and keep clock source during DFS
2026-08-20 16:00:52 +08:00
wuzhenghui
4b34a6b250
feat(bootloader): use CPLL/4 as flash default 80M clock source
2026-08-19 16:16:05 +08:00
wuzhenghui
5a144634d7
fix(esp_hw_support): fix esp32s31 stuck in phy_disable if mdoem module is not initialized
2026-08-14 12:22:51 +08:00
wuzhenghui
2c4ad9caad
fix(esp_hw_support): fix esp32p4 PVT clock lost
2026-08-14 11:24:56 +08:00
Wu Zheng Hui
234c68ba93
Merge branch 'feat/support_esp32s31_xtal_fosc_force_pu' into 'master'
...
feat: update XTAL sleep FPU parameters to save power
Closes PM-824 and IDF-15576
See merge request espressif/esp-idf!51100
2026-08-10 15:37:00 +08:00
wuzhenghui
f2b2bac778
fix(esp_system): support rom secure boot fast wake feature for esp32s31
2026-07-28 21:32:45 +08:00
wuzhenghui
228970b0c2
feat(esp_system): support XTAL as RTC fast clock source
2026-07-28 19:57:57 +08:00
wuzhenghui
4d1fa9db5a
change(esp_hw_support): update XTAL sleep FPU parameters
2026-07-27 14:25:26 +08:00
Wu Zheng Hui
61b2022e72
Merge branch 'fix/fix_deepsleep_deadlock_if_threadsafe_claim_is_not_enabled' into 'master'
...
fix(esp_hw_support): fix deepsleep deadlock if threadsafe claim is not enabled
Closes PM-820
See merge request espressif/esp-idf!51016
2026-07-24 20:18:14 +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
wuzhenghui
4336d78592
fix(esp_driver_tsens): bind lp_periph domain sleep pd with tsens power
2026-07-24 11:30:35 +08:00
wuzhenghui
7fd91c00dd
fix(esp_driver_usb): set errno if usj not connect in vfs read/write
2026-07-23 21:47:16 +08:00
wuzhenghui
09253d3f48
feat(esp_security): make esp32s31 on-demand crypto clock management optional
2026-07-22 16:32:46 +08:00
wuzhenghui
a04dc898db
feat(esp_security): support s31 security clock management
2026-07-22 16:32:45 +08:00
wuzhenghui
c7de92feda
change(hal): rename PLL_F80M to REF_80M for esp32s31 peripherals clock defination
2026-07-22 16:32:13 +08:00
wuzhenghui
90cb8a760d
feat(esp_hw_support): disable all unused pll source in rtc_clk_init to save power
2026-07-22 16:32:12 +08:00
wuzhenghui
7c75525edd
fix(driver): fix drivers clock management
2026-07-22 16:32:12 +08:00
wuzhenghui
11ccd4c304
feat(esp_hw_support): support esp32s31 clock tree management
2026-07-22 16:32:12 +08:00
wuzhenghui
b697c31f40
fix(esp_hw_support): fix deepsleep deadlock if threadsafe claim is not enabled
2026-07-22 15:26:31 +08:00
wuzhenghui
16a59e04fe
feat(esp_pm): implement tickless idle test for WAITI mode
2026-07-22 12:55:53 +08:00
wuzhenghui
0aa75e183b
feat(esp_pm): add tickless idle support in WAITI mode to reduce power consumption
2026-07-22 12:55:53 +08:00
wuzhenghui
306d54b6d5
feat(int_wdt): add pause and resume functions for cpu1 interrupt watchdog
2026-07-22 12:55:52 +08:00
wuzhenghui
412bce6544
fix(rtc_timer): disable target before setting wakeup time to avoid intermediate states
2026-07-22 12:55:52 +08:00
wuzhenghui
afbe171f48
fix(esp_hw_support): disable esp32 livelock workaround before stall another core
2026-07-15 16:20:57 +08:00
Wu Zheng Hui
cfc1bf3752
Merge branch 'fix/allow_task_and_coredump_mem_in_spm' into 'master'
...
fix(esp_hw_support): update memory pointer checks for SPM support
See merge request espressif/esp-idf!50615
2026-07-10 17:05:53 +08:00
wuzhenghui
1b842d163e
fix(esp_hw_support): update memory pointer checks for SPM support
2026-07-10 14:05:50 +08:00
Wu Zheng Hui
d26f5682cf
Merge branch 'change/change_regdma_malloc_caps' into 'master'
...
change(heap): reserve DMA pool with low priority MALLOC_CAP_DEFAULT cap
See merge request espressif/esp-idf!50255
2026-07-09 19:32:56 +08:00
wuzhenghui
b94c0f8498
feat(esp_hw_support): fix esp32p4 PVT retention link
2026-07-07 21:47:10 +08:00
wuzhenghui
a3fc0c4b58
change(heap): reserve DMA pool with low priority MALLOC_CAP_DEFAULT caps
2026-07-03 20:54:30 +08:00
wuzhenghui
18dac21544
fix(esp_hw_support): fix esp32s31 sleeping cache writeback logic
2026-07-03 19:13:05 +08:00
Wu Zheng Hui
d8b255280b
Merge branch 'fix/fix_mpll_enable_order' into 'master'
...
fix(esp_hw_support): fix esp32s31 mpll initialization
Closes IDF-15820
See merge request espressif/esp-idf!49927
2026-07-01 16:35:20 +08:00
wuzhenghui
97a91dea9d
feat(soc): update PMU & PAU register description
2026-07-01 14:41:01 +08:00
wuzhenghui
ba1df35672
fix(esp_hw_support): fix esp32s31 mpll initialization
2026-06-25 12:20:57 +08:00
Wu Zheng Hui
32a17773f4
Merge branch 'feat/make_thread_safe_optional' into 'master'
...
feat(freertos): make FREERTOS_PORT_THREAD_SAFE_CLAIM optional
See merge request espressif/esp-idf!49816
2026-06-22 19:34:12 +08:00
wuzhenghui
3a18ec3b7f
feat(freertos): make FREERTOS_PORT_THREAD_SAFE_CLAIM optinal
2026-06-22 10:15:32 +08:00
Wu Zheng Hui
7e4773ef38
Merge branch 'feat/support_esp32s31_icg_control' into 'master'
...
feat(esp_hw_support): support PMU clock ICG management for esp32s31
Closes PM-760
See merge request espressif/esp-idf!48863
2026-06-18 16:21:32 +08:00
Wu Zheng Hui
344edcd13f
Merge branch 'feat/skip_spinlock_in_sleep_process_thread_safe_area' into 'master'
...
feat:skip spinlock in sleep process thread safe context
Closes PM-779
See merge request espressif/esp-idf!49246
2026-06-18 15:57:32 +08:00
wuzhenghui
bbfde331f1
fix(esp_hw_support): fix s31 sleep CPU retention state atomic declaration
2026-06-18 09:41:41 +08:00
wuzhenghui
0c7caf79b5
feat(esp_hw_support): implement software CPU retention synchronization for SMP sleep modes
2026-06-18 09:41:41 +08:00
wuzhenghui
d4e3109c1b
feat(esp_hw_support): claim thread-safe in sleep process to avoid deadlock and fastup process
2026-06-18 09:41:41 +08:00
wuzhenghui
90f6eeb327
feat(freertos): introduce thread-safe context management functions
2026-06-18 09:41:39 +08:00
wuzhenghui
61be47b739
feat(esp_hw_support): support PMU clock ICG management for esp32s31
2026-06-17 11:34:37 +08:00
Wu Zheng Hui
ce9bbe5dc9
Merge branch 'fix/malloc_pm_lock_in_internal_mem' into 'master'
...
fix(esp_pm): malloc pm_lock in internal mem
Closes WIFIBUG-1874
See merge request espressif/esp-idf!49634
2026-06-16 11:51:15 +08:00
Wu Zheng Hui
dc17476c0a
Merge branch 'fix/move_system_retention_to_esp_hw_support' into 'master'
...
refactor(esp_hw_support): move system_periph_retention from soc to esp_hw_support
See merge request espressif/esp-idf!49661
2026-06-16 11:20:12 +08:00
wuzhenghui
f2d3448fa2
refactor(esp_hw_support): move system_periph_retention from soc to esp_hw_support
2026-06-15 17:09:58 +08:00
wuzhenghui
85c42f8e11
fix(esp_pm): malloc pm_lock in internal mem
2026-06-15 11:55:55 +08:00
Wu Zheng Hui
a82f41e369
Merge branch 'feat/optimize_esp32s31_active_power' into 'master'
...
feat: optimize esp32s31 active power
Closes IDF-15502
See merge request espressif/esp-idf!48833
2026-06-12 11:16:47 +08:00
wuzhenghui
63cd8caf7b
fix(esp_hw_support): pd hp_alive domain in deepsleep
2026-06-10 21:20:04 +08:00
wuzhenghui
69d548c8d1
feat(esp_security): suppoer s31 security clock management
2026-06-10 21:20:04 +08:00
wuzhenghui
322e4c265a
feat(soc): disable esp32s31 WFE feature at startup
2026-06-10 21:20:04 +08:00
wuzhenghui
9d824a9c33
feat(esp_system): support esp32s31 esp_perip_clk_init
2026-06-10 21:20:03 +08:00
wuzhenghui
889dfc400c
feat(hal): disable P4 TG WDT clock by default
2026-06-10 21:20:03 +08:00
Wu Zheng Hui
6495ce4fda
Merge branch 'fix/fix_rtc_spinlock_sleep_dead_lock' into 'master'
...
fix(esp_hw_support): fix possible dead lock in deepsleep process
See merge request espressif/esp-idf!49066
2026-06-02 10:33:51 +08:00
Wu Zheng Hui
ca4952594a
Merge branch 'fix/bind_int_wdt_to_cache_livelock_fix' into 'master'
...
fix(esp_system): bind int_wdt to cache livelock workaround
See merge request espressif/esp-idf!48990
2026-06-01 10:28:09 +08:00
wuzhenghui
50d6ef1481
fix(esp_hw_support): fix possible dead lock in deepsleep process
2026-05-29 21:19:42 +08:00
wuzhenghui
b88a809b8c
fix(esp_system): update cache livelock workaround bind to interrupt WDT configuration
2026-05-28 12:10:59 +08:00
Wu Zheng Hui
574b843868
Merge branch 'change/optimize_sleep_gpio_configure' into 'master'
...
change(sleep_gpio): streamline GPIO sleep configuration logic
See merge request espressif/esp-idf!48845
2026-05-26 17:14:06 +08:00
wuzhenghui
d19c0b1746
change(sleep_gpio): streamline GPIO sleep configuration logic
2026-05-26 12:20:59 +08:00
Wu Zheng Hui
2fcaddb700
Merge branch 'fix/fix_psram_data_corrupt_after_lightsleep' into 'master'
...
fix(esp_hw_support):fix psram data corrupt after lightsleep
Closes PM-941
See merge request espressif/esp-idf!48322
2026-05-22 15:11:41 +08:00
wuzhenghui
ecfdeef9d7
feat(esp_psram): wakeup PSRAM by CE# force control instead of dummy write
2026-05-22 14:30:46 +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
wuzhenghui
2f845ec76d
feat(esp_hw_support): update edge wakeup CI test cases
2026-05-20 11:04:05 +08:00
wuzhenghui
e491855cc6
feat(example): update gpio edge wakeup support in deepsleep example
2026-05-20 11:04:04 +08:00
wuzhenghui
0bd5331db7
feat(doc): update docs for sleep gpio edge wakeup
2026-05-20 11:04:03 +08:00
wuzhenghui
b7ec505923
feat(esp_driver_gpio): support rtc_io edge wakeup deepsleep
2026-05-20 11:04:00 +08:00
wuzhenghui
858ecf6f70
feat(esp_hw_support): check psram data is not corrupted after lightsleep
2026-05-19 21:01:21 +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
wuzhenghui
4876a7ad94
fix(esp_system): fix build err if int_wdt is not enabled on esp32
2026-05-19 11:32:42 +08:00
wuzhenghui
11a8a16639
fix(esp_system): remove intwdt config critical area for chips except esp32
2026-05-19 11:28:48 +08:00
wuzhenghui
c67d98fb10
change(soc): move _RTC_GPIO_EDGE_WAKEUP_SUPPORTED to soc_caps.h
2026-05-13 10:51:24 +08:00
wuzhenghui
ac8559fa13
feat(doc): update docs for vbat example
2026-05-08 14:24:38 +08:00
wuzhenghui
799669c7a4
feat(esp_hw_support): support main power control during VBAT powered deep sleep
2026-05-08 14:24:35 +08:00
wuzhenghui
5c2e3b768e
feat(esp_hw_support): support LP_Probe in debug probe driver & sig inversion
2026-05-08 10:21:38 +08:00
wuzhenghui
d0766f2a7f
fix(esp_hw_support): fix core1 branch predictor access ext mem after cache disabled by core0
2026-05-07 20:58:55 +08:00
wuzhenghui
3a40436e63
refactor(esp_hw_support): refactor cache ops to sleep_cache.c
2026-05-07 12:02:06 +08:00
wuzhenghui
820475f0e7
fix(esp_hw_support): 1v8 flash/psram dedicate ldo depends on pd_cur on
2026-05-07 12:02:06 +08:00
wuzhenghui
a37e430ad1
change(ci): disable esp32s31 multi_device test since lack of runner
2026-05-07 12:02:06 +08:00
wuzhenghui
cbba7795be
fix(soc): fix gpio output status retention for all targets
2026-05-07 12:02:05 +08:00
wuzhenghui
d3c5129050
fix(driver): fix retention unsupported mouldes TOP pd test
2026-05-07 12:02:05 +08:00
wuzhenghui
3f6957450f
feat(esp_hw_support): support psram PD_TOP retention
2026-05-07 12:02:01 +08:00
wuzhenghui
4df0db5201
change(esp_hw_support): GPIO wakeup source is not avaliable if HP periph is off on s31
2026-05-07 08:39:57 +08:00