Commit Graph
100 Commits
Author SHA1 Message Date
wuzhenghuiandCursor 4166ee869d 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-09 17:13:29 +08:00
wuzhenghui 230e6e0019 fix(esp_hw_support): wait DS/ECDSA idle before restore its PCR on wakeup 2026-09-09 17:13:29 +08:00
wuzhenghui 6cc27c14f1 fix(doc): fix uart output handling doc format 2026-09-09 17:11:59 +08:00
wuzhenghuiandCursor d77e5e3093 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-09 17:11:23 +08:00
wuzhenghui 9c75a9d004 feat(esp_hw_support): use dynamic memory allocation for retention module instances 2026-09-04 18:03:59 +08:00
wuzhenghui b45e51fc65 change(esp_hw_support): optimize pmu_sleep RAM cost 2026-09-04 18:01:12 +08:00
wuzhenghui 6be25041e0 change(esp_hw_support): optimize sleep_phy retention static RAM cost 2026-09-04 18:00:47 +08:00
wuzhenghui 64f8bdd2e1 change(esp_hw_support): optimize retention driver RAM cost 2026-09-04 18:00:35 +08:00
wuzhenghui 4ffb72cbc1 fix(esp_hw_support): fix ESP32-S31 CPU/DFS clk_tree refcount and keep clock source during DFS 2026-09-03 19:36:37 +08:00
wuzhenghui 6b219dbe4b feat(example): enable powersave CI test by soc cap 2026-09-03 19:04:24 +08:00
wuzhenghui 175cf9a521 feat(bootloader): use CPLL/4 as flash default 80M clock source 2026-09-02 19:20:15 +08:00
wuzhenghui d25d49d307 feat(esp_security): make esp32s31 on-demand crypto clock management optional 2026-09-02 19:20:15 +08:00
wuzhenghui 0f5ec4d261 feat(esp_security): support s31 security clock management 2026-09-02 19:20:15 +08:00
wuzhenghui 5f23a5646e change(hal): rename PLL_F80M to REF_80M for esp32s31 peripherals clock defination 2026-09-02 19:20:14 +08:00
wuzhenghui 3641d243e0 feat(esp_hw_support): disable all unused pll source in rtc_clk_init to save power 2026-09-02 19:20:14 +08:00
wuzhenghui 0b7f047e9e fix(driver): fix drivers clock management 2026-09-02 19:20:14 +08:00
wuzhenghui f9428ecc1e feat(esp_hw_support): support esp32s31 clock tree management 2026-09-02 19:20:13 +08:00
wuzhenghui aaccbdd47c fix(spi_flash): integrate branch prediction control during cache operations 2026-09-01 02:42:19 +00:00
wuzhenghui b4cd651f0a feat(esp_system): support XTAL as RTC fast clock source 2026-08-20 10:42:14 +08:00
wuzhenghui 82da5959cd fix(esp_hw_support): fix esp32s31 stuck in phy_disable if mdoem module is not initialized 2026-08-20 10:35:07 +08:00
wuzhenghui 4c56aa2cc8 change(esp_hw_support): update XTAL sleep FPU parameters 2026-08-20 10:34:41 +08:00
wuzhenghui 9133f3cb92 fix(esp_hw_support): fix esp32p4 PVT clock lost 2026-08-19 11:47:09 +08:00
wuzhenghui 708f34bd16 fix(esp_system): support rom secure boot fast wake feature for esp32s31 2026-07-28 21:46:24 +08:00
wuzhenghui af1b5948be fix(esp_driver_usb): set errno if usj not connect in vfs read/write 2026-07-27 15:29:32 +08:00
wuzhenghui da64c0053a fix(esp_driver_tsens): bind lp_periph domain sleep pd with tsens power 2026-07-27 11:40:04 +08:00
wuzhenghui d0867194d4 feat(esp_hw_support): fix esp32p4 PVT retention link 2026-07-17 16:25:25 +08:00
wuzhenghui 981208a9ad fix(esp_hw_support): disable esp32 livelock workaround before stall another core 2026-07-15 16:10:51 +08:00
wuzhenghui b388afd2f3 fix(esp_hw_support): update memory pointer checks for SPM support 2026-07-10 14:19:47 +08:00
wuzhenghui 38421b8db7 change(heap): reserve DMA pool with low priority MALLOC_CAP_DEFAULT caps 2026-07-09 17:30:46 +08:00
wuzhenghui c5ffc85029 feat(soc): update PMU & PAU register description 2026-07-06 21:20:58 +08:00
wuzhenghui 7c23080017 fix(esp_hw_support): fix esp32s31 mpll initialization 2026-07-06 21:17:34 +08:00
wuzhenghui 3f2d963d47 fix(esp_hw_support): fix esp32s31 sleeping cache writeback logic 2026-07-03 19:13:25 +08:00
wuzhenghui d5d3cddf23 feat(esp_hw_support): support PMU clock ICG management for esp32s31 2026-06-30 14:23:54 +08:00
wuzhenghui ef788b807a fix(esp_hw_support): use same lock for lightsleep/deepsleep process 2026-06-22 11:27:12 +08:00
wuzhenghui 3ad4cfebd6 refactor(esp_hw_support): move system_periph_retention from soc to esp_hw_support 2026-06-17 12:17:19 +08:00
wuzhenghui c6fb28b866 fix(esp_pm): malloc pm_lock in internal mem 2026-06-16 17:54:30 +08:00
wuzhenghui 50db869d9d ci: rename eco tags to revision 2026-06-15 10:31:07 +08:00
wuzhenghui 9c17817c98 fix(esp_hw_support): pd hp_alive domain in deepsleep 2026-06-15 10:31:07 +08:00
wuzhenghui 58d89e8bc0 feat(esp_security): suppoer s31 security clock management 2026-06-15 10:31:07 +08:00
wuzhenghui 964511ca30 feat(soc): disable esp32s31 WFE feature at startup 2026-06-15 10:31:06 +08:00
wuzhenghui ce0fcbaa9a feat(esp_system): support esp32s31 esp_perip_clk_init 2026-06-15 10:31:06 +08:00
wuzhenghui 691dc44d6f feat(hal): disable P4 TG WDT clock by default 2026-06-15 10:31:06 +08:00
wuzhenghui 01fff26fee fix(esp_hw_support): fix possible dead lock in deepsleep process 2026-06-02 17:48:02 +08:00
wuzhenghui f34f07ba07 fix(esp_system): update cache livelock workaround bind to interrupt WDT configuration 2026-06-02 17:31:11 +08:00
wuzhenghui 93cbc81ecf change(sleep_gpio): streamline GPIO sleep configuration logic 2026-05-29 14:12:09 +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
wuzhenghui 7c10126309 feat(esp_hw_support): isolate all digital io to suppress pad leakage on TOP pd sleep 2026-05-07 08:39:56 +08:00
wuzhenghui 8d3732c053 feat(esp_hw_support): support esp32s31 system & peripherals retention 2026-05-07 08:39:56 +08:00
wuzhenghui a07e2c8d85 feat(esp_hw_support): support esp32s31 CPU/FPU retention 2026-05-07 08:39:56 +08:00
wuzhenghui 68bd919fda feat(esp_hw_support): support esp32s31 DFS 2026-05-07 08:39:52 +08:00
wuzhenghui f1f3f204fe feat(esp_hw_support): support esp32s31 lightsleep/deepsleep example 2026-05-06 20:15:01 +08:00
wuzhenghui 54fed4c1c3 feat(esp_hw_support): update esp32s31 PMU support 2026-05-06 20:15:01 +08:00
wuzhenghui 7a8eacabd2 fix(esp_hw_support): increase test rounds for in esp_random() test 2026-05-06 11:48:09 +08:00
wuzhenghui dc29bf9e72 feat(esp_hw_support): add support for SOC_CLOCK_SOURCE_CG in modem clock management 2026-04-17 15:13:51 +08:00
wuzhenghui ab664da95d feat(esp_hw_support): add support for SOC_CLOCK_SOURCE_CG and WIFI_BB_80X1 clock in modem clock management 2026-04-16 17:50:43 +08:00
Wu Zheng Hui a4b5982e73 Merge branch 'feat/support_s31_clock_output' into 'master'
feat(esp_hw_support): support esp32s31 esp_clock_output

Closes IDF-14733

See merge request espressif/esp-idf!47271
2026-04-14 21:24:29 +08:00
Wu Zheng Hui ec5f956516 Merge branch 'doc/fix_sleep_mode_doc' into 'master'
docs(system): update GPIO wakeup section for clarity on EXT0 and EXT1 support

See merge request espressif/esp-idf!47362
2026-04-14 16:38:34 +08:00
wuzhenghui b913f147ba feat(esp_hw_support): support esp32s31 esp_clock_output 2026-04-14 12:19:07 +08:00
wuzhenghui 4b874b58af docs(system): update GPIO wakeup section for clarity on EXT0 and EXT1 support 2026-04-08 16:59:03 +08:00
wuzhenghui 38dbf908a6 feat(example): implement power management example for ESP chips 2026-04-07 10:29:45 +08:00
wuzhenghui 1ec2dacb03 feat(example): test power_save pd_top config for esp32c5 & esp32c61 2026-04-07 10:29:45 +08:00
wuzhenghui f4eca3c42f feat(example): implement power management example for ESP chips 2026-04-07 10:29:45 +08:00
Wu Zheng Hui a2c01a31b7 Merge branch 'feat/support_esp32s31_modem_clock' into 'master'
feat(esp_hw_support): support esp32s31 modem clock

See merge request espressif/esp-idf!47049
2026-04-02 14:59:52 +08:00
wuzhenghui 24cffa49c3 feat(esp_hw_support): support esp32s31 modem clock 2026-03-31 21:31:01 +08:00
Wu Zheng Hui fa9f68cda1 Merge branch 'fix/remove_rwdt_workaround_for_p4_rev3.2' into 'master'
change(esp_rom): remove wdt_hal_config_stage API workaround for P4 ECO7

Closes PM-687

See merge request espressif/esp-idf!47094
2026-03-30 14:35:32 +08:00
wuzhenghui 83d88e73a4 change(esp_rom): wdt_hal_config_stage fixed in rom_version: esp32p4-eco7-20260109 2026-03-30 09:53:32 +08:00
Wu Zheng Hui 1dbf5247d1 Merge branch 'feat/support_gpio_source_for_more_chips' into 'master'
feat(esp_hw_support): support GPIO wakeup deepsleep on esp32/esp32s2/esp32s3

Closes PM-666

See merge request espressif/esp-idf!45773
2026-03-26 11:28:45 +08:00
wuzhenghui 61dc18139a feat(esp_hw_support): add esp32/esp32s2/esp32s3 deepsleep gpio wakeup test case 2026-03-25 10:49:48 +08:00
wuzhenghui dc794e75b7 refactor(esp_hw_support): reorganize sleep preparation steps to make the log complete 2026-03-25 10:49:47 +08:00
wuzhenghui b6fcdb1f48 feat(esp_hw_support): support GPIO wakeup deepsleep on esp32/esp32s2/esp32s3
and expand gpio_wakeup_mask/gpio_trigger_mode to 64bit
2026-03-25 10:49:47 +08:00
wuzhenghui a441be19a7 feat(esp_hw_support): add esp_sleep_rtcio_channel_to_gpio_num for channel to IO num conversion 2026-03-25 10:49:47 +08:00
wuzhenghui 708f3ec52d change(esp_hw_support): move esp_deep_sleep_wakeup_io_reset to sleep_gpio.c 2026-03-25 10:49:47 +08:00
Wu Zheng Hui 8220859330 Merge branch 'fix/fix_esp32_int_wdt_workaround_break_sleep_process' into 'master'
fix(esp_system): disable esp32 cache livelock int_wdt workaround in ipc_isr_stall

Closes IDFCI-7791

See merge request espressif/esp-idf!45645
2026-03-18 19:07:17 +08:00
wuzhenghui ce6f23e11e feat(doc): add docs for sleep console UART handling strategies 2026-03-18 11:29:55 +08:00
wuzhenghui d45606bf1d fix(esp_hw_support): disable esp32eco3 livelock workaround to sleep process 2026-03-18 11:29:55 +08:00
wuzhenghui 6f1bea6a5d refactor(esp_system): ind_wdt.c refactor & code clean
1. introduce reconfigure_ticks function for wdt configuration
 2. move esp32eco3 cache livelock workaround code out from int_wdt.c
2026-03-18 11:29:51 +08:00
Wu Zheng Hui 7e3fe7023f Merge branch 'feat/add_retention_test_back' into 'master'
feat: add sleep retention UT test back

Closes IDFCI-8836

See merge request espressif/esp-idf!46621
2026-03-18 10:10:56 +08:00
wuzhenghui 2bcc29510a fix(esp_hw_support): move timers suspend/resume to misc modules prepare 2026-03-16 20:37:08 +08:00