Commit Graph
100 Commits
Author SHA1 Message Date
wuzhenghui b20d8c1afb fix(esp_system): fix ext 32k io revoking breaks sleep io holding 2025-10-10 20:20:50 +08:00
wuzhenghui ee7f15d5ea change(esp_hw_support): remove DCDC-to-LDO power switch support in ESP32P4 lightsleep 2025-09-29 14:15:38 +08:00
wuzhenghui 072bca4296 change(esp_hw_support): control DCDC switch by PMU FSM while control DCDC_EN by software 2025-09-29 14:11:06 +08:00
wuzhenghui 7635a54b1e feat(esp_hw_support): add new API to get all wakeup sources 2025-08-26 21:53:01 +08:00
wuzhenghui 9298596ea7 fix(esp_hw_support): test ESP_SLEEP_RTC_USE_RC_FAST_MODE sleep submode after reset 2025-08-20 17:33:35 +08:00
wuzhenghui 1e979793b4 fix(esp_hw_support): fix ESP_SLEEP_RTC_USE_RC_FAST_MODE sub_mode lost after cpu/sys reset
Closes https://github.com/espressif/esp-idf/issues/16243
2025-08-20 17:33:10 +08:00
wuzhenghui f1066f5f34 change(esp_hw_support): warning in esp_sleep_pd_config instead of assert
Closes https://github.com/espressif/esp-idf/issues/16872#event-18649904083
2025-08-08 14:32:00 +08:00
wuzhenghui 881b02598c change(esp_hw_support): always do hardware clock enable in modem module enabling 2025-08-08 11:53:41 +08:00
wuzhenghui 40ba25aecd fix(esp_hw_support): fix MODEM_ADC_COMMON_FE destroyed by modem powerdown lightsleep 2025-08-08 11:53:30 +08:00
wuzhenghui 1de92b2e70 fix(esp_hw_support): enable ESP_SLEEP_RTC_FAST_USE_XTAL_MODE only once in RTC_FAST selection 2025-07-25 16:51:58 +08:00
wuzhenghui 2a815e9037 fix(esp_hw_support): fix assert when changing 8MD256 RTC slow clock source during OTA 2025-07-25 16:51:49 +08:00
wuzhenghui ea314e9dd9 feat(esp_hw_support): add core1 enter deepsleep test case 2025-07-14 11:49:56 +08:00
wuzhenghui d8e73e94f2 fix(esp_hw_support): fix esp32 APP_CPU accessing RTCFAST memory in sleep code
Closes https://github.com/espressif/esp-idf/issues/16243
2025-07-14 11:49:52 +08:00
wuzhenghui 37d25de531 fix(esp_system): force enable uart0 sclk in esp_restart 2025-07-03 19:16:56 +08:00
wuzhenghui 28aa20045e feat(esp_hw_support): enable wakeup tests for more chips 2025-06-23 09:57:42 +08:00
wuzhenghui 5bc5a1474c fix(hal): fix pmu_ll_ext1_clear_wakeup_status API 2025-06-23 09:54:07 +08:00
wuzhenghui 2519605acb change(bt): increase BTDM_MODEM_WAKE_UP_DELAY 2025-06-13 20:37:35 +08:00
wuzhenghui 626123bbeb change(esp_timer): make esp_timer timming drift always be negative 2025-06-13 20:37:30 +08:00
wuzhenghui 5b64757042 fix(esp_hw_support): config lact in critical 2025-06-13 12:06:18 +08:00
wuzhenghui 3fa79684cd ci(esp_timer): add UT case for esp_timer period alarm with DFS 2025-05-22 15:18:22 +08:00
wuzhenghui b5da8a52c6 feat(esp_hw_support): compensate the error introduced to LACT during APB frequency switching 2025-05-22 15:18:21 +08:00
wuzhenghui db6aedef25 fix(esp_hw_support): update systimer step immediately when XTAL changes on esp32s2 2025-05-22 15:18:21 +08:00
wuzhenghui 78e9c47580 fix(esp_hw_support): update LACT clock prescale immediately when APB changes on esp32 2025-05-22 15:18:16 +08:00
wuzhenghui e27321ab51 fix(esp_hw_support): fix esp32p4 may get stuck when entering deepsleep 2025-05-20 15:52:52 +08:00
wuzhenghui 1811757ad9 fix(esp_hw_support): Fix deepsleep leakage after initializing USB HS phy 2025-05-15 16:05:05 +08:00
wuzhenghui daaba0f36c fix(esp_hw_support): always disable USJ pad in sleep to supress leakage 2025-05-13 20:11:18 +08:00
wuzhenghui 33aca83c63 change(ci): remove esp32c5 from readme since esp32c5 skipped CI build 2025-04-25 17:13:27 +08:00
wuzhenghui dbd4934205 fix(esp_hw_support): specify optimize options to avoid dirtying L2 mem after L1D$ writeback 2025-04-25 17:13:27 +08:00
wuzhenghui 8cfe912053 fix(esp_hw_support): fix wrong APB clock freq on retenion 2025-04-25 17:13:26 +08:00
wuzhenghui 192ffcb894 feat(esp_hw_support): count pau backup time into sleep rejection judgment 2025-04-25 17:13:26 +08:00
wuzhenghui 41e6e25e2d feat(esp_hw_support): remeasure sleep_time_overhead_out if min_freq_mhz changed 2025-04-25 17:13:26 +08:00
wuzhenghui 81860c55d6 feat(esp_hw_support): use non-lock regi2c fast-up cpll/mpll enable process after sleep wakeup 2025-04-25 17:13:22 +08:00
wuzhenghui c29cd7333b fix(esp_hw_support): fix usj pad config bad retention
Closes https://github.com/espressif/esp-idf/issues/15797
2025-04-25 15:52:10 +08:00
wuzhenghui 41dd6ef81a feat(esp_hw_support): optimize esp32p4 GPIO retention link 2025-04-25 15:26:05 +08:00
wuzhenghui d9fdab14d0 fix(esp_hw_support): iomux slp_sel is not avaliable to isolate mspi pin leakage on esp32p4 2025-04-25 15:26:02 +08:00
wuzhenghui e22c4a146d change(esp_hw_support): allow sar power keep on during lightsleep
Closes https://github.com/espressif/esp-idf/issues/12426
2025-04-16 15:51:48 +08:00
wuzhenghui d2755374e0 fix(esp_hw_support): fix esp32p4 xtal_xpd depends on TOP power domain 2025-04-16 15:37:11 +08:00
wuzhenghui 76d021ad11 fix(esp_hw_support): fixed gpio sleep switching filling junk data to the console UART FIFO 2025-04-16 15:23:27 +08:00
wuzhenghui 7643f77225 feat(esp_hw_support): enable auto clock gating for multi peripherals 2025-04-16 15:08:51 +08:00
wuzhenghui ba88b91e28 fix(esp_hw_support): fix unused OSC source deinit breaks XTAL32K configuration 2025-04-16 14:56:49 +08:00
wuzhenghui 54c4606111 fix(esp_hw_support): fix current leakage if ext32k slow clock source not exists 2025-04-16 14:56:12 +08:00
wuzhenghui ddd19eee94 fix(esp_hw_support): fix min sleep time calculation missmatch in powerdown flash decision 2025-04-03 11:51:57 +08:00
wuzhenghui 6de3fde3c2 fix(esp_system): fix possible cache_error by another core accessing flash in esp_restart 2025-03-10 11:40:10 +08:00
wuzhenghui 7f88cf3ee9 change(esp_hw_support): only do mpll disable in lightsleep process 2025-03-08 14:06:12 +08:00
wuzhenghui e549dca8ae change(doc): added more usage notes & warings about PM_POWER_DOWN_PERIPHERAL_IN_LIGHT_SLEEP 2025-02-28 16:43:02 +08:00
wuzhenghui 6e2b2a0e54 fix(esp_hw_support): fix lightsleep destroys deepsleep rtc parameters 2025-02-26 16:51:46 +08:00
wuzhenghui 8e6ec50bcc fix(esp_hw_support): fix esp32s2/esp32s3 RTC IOMUX clock management 2025-02-21 09:50:42 +08:00
wuzhenghui b654a78646 change(esp_hw_support): wrapper sleep dcdc/ldo ops with ll 2025-02-19 14:32:22 +08:00
wuzhenghui 8233c250de feat(esp_hw_support): add branch prediction config retention 2025-02-19 14:32:19 +08:00
wuzhenghui a63e9c5aef fix(esp_hw_support): fix DCDC switch bad software powerdown 2025-02-19 14:32:15 +08:00
wuzhenghui 4542c463c6 change(esp_hw_support): not use ROM Cache invalidate in sleep process to avoid dirtying the L1 Cache 2025-02-19 14:32:12 +08:00
wuzhenghui ea05eba7f5 feat(esp_hw_support): do mstatus restore on each core 2025-02-19 14:32:08 +08:00
wuzhenghui 228e74e06c feat(esp_hw_support): do esp32p4 l1 cache invalidate by regdma 2025-02-19 14:32:04 +08:00
wuzhenghui f3cc52d234 feat(esp_hw_support): do esp32p4 l1&l2 cache regs retention by regdma 2025-02-19 14:32:00 +08:00
wuzhenghui 95fb085fe3 fix(esp_hw_support): add timer wakeup sleep duration check
Closes https://github.com/espressif/esp-idf/issues/15255
2025-02-18 19:21:57 +08:00
wuzhenghui 1e11f287e1 change(esp_hw_support): disable CPU wait-for-event mode on cpu start 2025-02-18 19:21:09 +08:00
wuzhenghui 003a7f6bcb fix(esp_hw_support): fix lp/hp clock wait time calculation after wait pll ready 2025-02-17 16:53:28 +08:00
wuzhenghui 67a4de4e77 change(esp_hw_support): switch to sleep_flags earlier to identify sleep state 2025-02-17 16:53:28 +08:00
wuzhenghui 87c4227e44 change(esp_hw_support): wait pll calibration done in regdma link instead of wait fixed value 2025-02-17 16:53:27 +08:00
wuzhenghui cfcd8990f6 fix(esp_hw_support): fix branch predictor access flash after cache disabled 2025-01-22 19:24:48 +08:00
wuzhenghui 9b7ce542f2 fix(esp_hw_support): fix p4 OTG phy bad suspend cause high power consumption on sleep 2025-01-14 14:22:39 +08:00
wuzhenghui 667011cd46 fix(esp_hw_support): fix tsens power enable failed after modem state wakeup 2025-01-10 10:21:39 +08:00
wuzhenghui 0609f9111e fix(esp_hw_support): fix mspi clock freq changed after lightsleep 2024-12-26 19:25:48 +08:00
wuzhenghui c7c70a8ec6 fix(esp_hw_support): fix esp32p4 JTAG pad deepsleep current leakage 2024-12-26 16:03:42 +08:00
wuzhenghui e49faab8d4 fix(esp_pm): enable RTC_PERIPH domain once in esp_pm_trace_init 2024-12-26 14:09:52 +08:00
wuzhenghui 7df7db7284 fix(esp_hw_support): fix FLASH leakage workaround kconfig dependcy 2024-12-26 11:35:04 +08:00
wuzhenghui afa697bd74 fix(esp_driver_gptimer): do gptimer retention by timer unit rather than timer group 2024-12-02 19:07:50 +08:00
wuzhenghui 4db067f8dc fix(esp_hw_support): remove p4 wdt retention on entry2 2024-12-02 19:05:04 +08:00
wuzhenghui 6f13d341c6 fix(esp_hw_support): fix retention link dump helper functions 2024-12-02 19:04:06 +08:00
wuzhenghui 2c35c09742 fix(esp_pm): fix deadlock in pm_mode switching 2024-11-15 11:25:58 +08:00
wuzhenghui 78362aff04 fix(esp_pm): fix missed ccompare update when another core is already in do_switch 2024-11-15 11:25:58 +08:00
wuzhenghui a2d26ab56f fix(esp_system): deselect all modem modules clk source selection before clk init 2024-11-15 11:00:54 +08:00
wuzhenghui 88c345aca8 fix(esp_hw_support): disable sar power when esp32p4 going to deepsleep 2024-11-13 11:44:46 +08:00
wuzhenghui 054706c115 fix(esp_system): writeback L1 Dcache before disable L2 if PSRAM used 2024-11-11 14:02:35 +08:00
wuzhenghui 59230175df fix(esp_hw_support): skip some wakeup steps if sleep is rejected
1. Skip esp_timer time compensation to avoid introducing errors into rtc_timer
    2. Ignore sleep_time_overhead_out measurements when sleep is rejected
2024-11-08 16:08:32 +08:00
wuzhenghui 651e5adbda fix(esp_hw_support): only support power down flash after revison v1.0 on esp32p4 2024-11-04 14:08:29 +08:00
wuzhenghui 2558760224 fix(esp_hw_support): fix writeback cache to psram after vo2 powerdown 2024-11-04 14:08:28 +08:00
wuzhenghui 280f6cb4e9 fix(esp_hw_support): disable unused clock sources after rtc clock switching complete 2024-10-28 20:16:01 +08:00
wuzhenghui cf5bdf5e9f fix(esp_hw_support): enable all supported slow clock at pmu_init 2024-10-28 20:15:55 +08:00
Wu Zheng Hui 3867689baf Merge branch 'fix/fix_mmu_retention_workaround_cache_safe' into 'master'
fix(esp_hw_support): fix mmu retention code cache safety

Closes PM-283

See merge request espressif/esp-idf!34331
2024-10-25 12:05:52 +08:00
Wu Zheng Hui de3a5d4d93 Merge branch 'feat/support_esp32p4_flash_psram_sleep_pd' into 'master'
feat(esp_hw_support): support power down PSRAM or Flash during sleep for esp32p4 rev1.0

Closes PM-204 and IDF-11241

See merge request espressif/esp-idf!34340
2024-10-25 10:39:06 +08:00
wuzhenghui a1f9d5bcea feat(esp_hw_support): support power down PSRAM or Flash during sleep for esp32p4 v1.0 2024-10-23 19:10:42 +08:00
wuzhenghui 71ddc5a79f fix(esp_hw_support): fix mmu retention code cache safety 2024-10-22 22:10:13 +08:00
wuzhenghui 6520c61cff change(esp_hw_support): improve gpio deepsleep wakeup configuration code 2024-09-29 16:56:42 +08:00
wuzhenghui 9ffd8aa017 fix(esp_hw_support): fix coverity defects in sleep code 2024-09-29 16:56:42 +08:00
Wu Zheng Hui 041a937803 Merge branch 'fix/fix_esp32p4_freq_switching_timing' into 'master'
fix(esp_hw_support): fix esp32p4 CPU frequency switching timing

Closes IDFCI-2280 and IDFCI-2281

See merge request espressif/esp-idf!33823
2024-09-27 19:13:12 +08:00
wuzhenghui e1a341455a fix(esp_hw_support): fix esp32p4 CPU frequency switching timing 2024-09-26 14:57:03 +08:00
wuzhenghui 04b2afed44 change(esp_hw_support): switch lp_cpu power mode with clock src to save lp_cpu working power 2024-09-26 11:23:06 +08:00
wuzhenghui ef4c02dda2 revert(esp_hw_support): stall another core during cpu/mem/apb freq switching
This reverts commit c2bb64fbe8.
2024-09-25 20:19:15 +08:00
Wu Zheng Hui 49d080e354 Merge branch 'fix/fix_bad_submode_setting_in_rtc_slow_selection' into 'master'
fix(esp_hw_support): fix bad submode setting in rtc slow selection

Closes IDFGH-13745

See merge request espressif/esp-idf!33754
2024-09-24 20:03:03 +08:00
wuzhenghui 5971155ac4 feat(esp_hw_support): add case to test slow clock switching 2024-09-24 12:08:51 +08:00
wuzhenghui baa4d51656 fix(esp_hw_support): fix bad submode setting logic in rtc_slow selection 2024-09-24 11:24:03 +08:00
Wu Zheng Hui 21ee174957 Merge branch 'fix/allows_to_forcibly_disable_sleep_submodes' into 'master'
fix(esp_hw_support): allows to forcefully disable sleep submode

Closes IDFCI-2380 and PM-228

See merge request espressif/esp-idf!33481
2024-09-13 17:52:37 +08:00
wuzhenghui 0cd6532d36 docs(sleep_mode): update outdated sleep mode configure API in docs 2024-09-12 15:09:31 +08:00
wuzhenghui 37fa09f1dc fix(esp_hw_support): allows to forcefully disable submodes at mode initialization 2024-09-12 15:09:25 +08:00
Wu Zheng Hui 6abe40e590 Merge branch 'feature/optimize_esp32p4_active_power_eco1' into 'master'
feat(system): Optimize esp32p4 active state  power consumption

Closes PM-103 and IDF-7688

See merge request espressif/esp-idf!32950
2024-09-11 23:15:29 +08:00
Wu Zheng Hui f3c4d57f13 Merge branch 'fix/fix_clock_retention_link_context' into 'master'
fix(esp_hw_support): add clock retention contents for esp32c6 & esp32h2

Closes IDF-9629

See merge request espressif/esp-idf!33411
2024-09-11 21:12:23 +08:00
Wu Zheng Hui eab98765ad Merge branch 'feature/introduce_internal_sleep_sub_mode_configure_api' into 'master'
feat(esp_hw_support): introduce internal sleep sub mode configure api

Closes PM-216

See merge request espressif/esp-idf!30687
2024-09-11 17:01:59 +08:00
wuzhenghui 21f79616bd change(esp_driver_spi): increase SPI_PER_TRANS_POLLING peformance tolerance 2024-09-11 10:53:45 +08:00
wuzhenghui 13e42707a0 feat(esp_hw_support): add clk tree source gate management api 2024-09-11 10:53:01 +08:00