Commit Graph
100 Commits
Author SHA1 Message Date
wuzhenghui 7b100e98b7 change(doc): added more usage notes & warings about PM_POWER_DOWN_PERIPHERAL_IN_LIGHT_SLEEP 2025-02-28 16:47:40 +08:00
wuzhenghui b2c8dcacb0 fix(esp_hw_support): fix lightsleep destroys deepsleep rtc parameters 2025-02-26 16:57:41 +08:00
wuzhenghui aff8ad355b fix(esp_hw_support): fix esp32s2/esp32s3 RTC IOMUX clock management 2025-02-21 10:18:27 +08:00
wuzhenghui 6ed9e39ffa fix(esp_driver_gpio): manage lp_io module clock by driver
Closes https://github.com/espressif/esp-idf/issues/13683
2025-02-20 19:46:22 +08:00
wuzhenghui 5435b614df fix(esp_hw_support): fix lp/hp clock wait time calculation 2025-02-17 20:49:15 +08:00
wuzhenghui cb169282bb change(esp_hw_support): wait pll calibration done in regdma link instead of wait fixed value 2025-02-17 20:47:55 +08:00
wuzhenghui 5e81eb6cf7 fix(esp_hw_support): add timer wakeup sleep duration check
Closes https://github.com/espressif/esp-idf/issues/15255
2025-02-17 19:57:11 +08:00
wuzhenghui aaf7c6a9ce fix(esp_hw_support): fix modem power enable failed after modem state wakeup 2025-01-09 11:12:51 +08:00
wuzhenghui 8557a2c529 fix(esp_pm): enable RTC_PERIPH domain once in esp_pm_trace_init 2024-12-26 14:11:01 +08:00
wuzhenghui c9af36610d fix(esp_hw_support): fix FLASH leakage workaround kconfig dependcy 2024-12-26 11:40:58 +08:00
wuzhenghui 0841034ab5 fix(esp_pm): fix deadlock in pm_mode switching 2024-11-18 19:24:27 +08:00
wuzhenghui 0fd250216c fix(esp_pm): fix missed ccompare update when another core is already in do_switch 2024-11-18 16:50:11 +08:00
wuzhenghui 6e1c4f8971 fix(esp_system): deselect all modem modules clk source selection before clk init 2024-11-15 13:46:28 +08:00
wuzhenghui de107cf4f2 fix(esp_pm): move clock module out of TOP_DOMAIN_PERIPHERALS_BM 2024-11-13 16:44:45 +08:00
wuzhenghui 8cdca030e3 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-11 10:21:30 +08:00
wuzhenghui b8e796cb67 fix(esp_hw_support): disable unused clock sources after rtc clock switching complete 2024-10-28 19:57:56 +08:00
wuzhenghui 9085e0737f fix(esp_hw_support): enable all supported slow clock at pmu_init 2024-10-28 12:09:12 +08:00
wuzhenghui 6a35be4e47 change(esp_hw_support): switch hp_sys default power mode with clock src selection 2024-10-11 15:47:48 +08:00
wuzhenghui f617e55e5e fix(esp_hw_support): add clock retention contents 2024-09-18 17:11:24 +08:00
wuzhenghui 69baf86cf4 change(esp_hw_support): collect retention link priority definition 2024-08-26 11:40:07 +08:00
wuzhenghui b752b6c5e9 fix(esp_pm): configure timer wakeup source with auto light-sleep congiguration 2024-08-06 11:04:58 +08:00
wuzhenghui 4ddeee6260 fix(esp_hw_support): wait eFuse controller idle after sleep wakeup 2024-07-08 14:14:57 +08:00
wuzhenghui 851c176d1b change(esp_hw_support): update xtal_freq after assume to avoid mass print in DFS 2024-06-24 13:38:10 +08:00
wuzhenghui c239c68373 change(esp_system): trigger digital system reset in brownout isr 2024-06-24 12:03:03 +08:00
wuzhenghui a5e75a4cb3 fix(hal): fix PMU LL half word and byte access 2024-06-07 14:16:15 +08:00
wuzhenghui 027ede811e fix(hal): fix LP timer LL half word access 2024-06-07 14:15:47 +08:00
wuzhenghui 1090b496a1 fix(esp_hw_support/sleep): stop TG0/TG1 watchdog if XTAL not power down in lightsleep 2024-06-04 21:30:28 +08:00
wuzhenghui 92e3fd4e44 change(esp_hw_support/sleep): improve esp32c3 systimer stall bug workaround 2024-06-04 21:30:28 +08:00
wuzhenghui 464fe67ec7 docs(lowpower): updating low-power statistics in Wi-Fi scenarios 2024-05-30 22:04:24 +08:00
wuzhenghui b2187bc619 docs(gpio): add description for gpio_force_hold_all & gpio_force_unhold_all
Closes https://github.com/espressif/esp-idf/issues/13186
2024-05-13 16:27:49 +08:00
wuzhenghui 757573b551 docs(esp_pm): Adding notes on configuring GPIOs when using PD_TOP sleep
Closes https://github.com/espressif/esp-idf/issues/13143
2024-05-13 16:27:49 +08:00
wuzhenghui a3c20bde5d fix(esp_system): increase 26Mhz esp32c2 slow clock calibration timeout watchdog threshold 2024-04-30 11:48:03 +08:00
wuzhenghui 8f896f07c5 fix(esp_hw_support): fix pmu power domain initialize order 2024-04-10 10:10:13 +08:00
wuzhenghui a9ff81a603 fix(esp_hw_support): move deepsleep phy callback before PLL disable 2024-04-07 20:36:51 +08:00
wuzhenghui fe6f4ce916 fix(esp_pm): update CPU frequency immediately after updating pm_config
Closes https://github.com/espressif/esp-idf/issues/13492
2024-04-07 14:45:40 +08:00
wuzhenghui df6a32f305 fix(esp_hw_support): fix cache safe check function 2024-02-26 17:42:14 +08:00
wuzhenghui eeed231304 ci: enable hardware crypto module for powersave tests 2024-02-18 15:57:19 +08:00
wuzhenghui 2cd8335818 feat(esp_hw_support): support gdma register context sleep retention 2024-02-18 15:57:15 +08:00
wuzhenghui 3f75f037c0 fix(esp_pm): safely check ccompare validity in DFS update_ccompare 2024-01-19 11:12:22 +08:00
wuzhenghui 6d238cdba2 feat(ulp): add api to get lp_cpu wakeup cause and clear wakeup source at startup
Closes https://github.com/espressif/esp-idf/issues/12651
2023-12-27 19:12:16 +08:00
wuzhenghui fcb9cf8b93 change(esp_hw_support/sleep): rename ESP_SLEEP_DEEP_SLEEP_WAKEUP_DELAY
1. Rename ESP_SLEEP_DEEP_SLEEP_WAKEUP_DELAY to ESP_SLEEP_WAIT_FLASH_READY_EXTRA_DELAY
2. Set ESP_SLEEP_WAIT_FLASH_READY_EXTRA_DELAY visible for all targets
2023-12-27 15:35:00 +08:00
wuzhenghui 83b6c79f93 fix(esp_hw_support/sleep): wait flash ready after non-pd_top lightsleep for esp32c6 2023-12-27 15:34:55 +08:00
wuzhenghui 613c17bc2f fix(esp_hw_support): fix esp32h2 system link restore override cpu clk configuration 2023-12-11 11:24:00 +08:00
wuzhenghui debcb50fd2 fix(esp_hw_support): re-initialize icg map in modem_clock_module_enable 2023-12-08 14:18:45 +08:00
wuzhenghui 7b3c08e37a fix(esp_hw_support/sleep): fix rtc_time_us_to_slowclk div zero in deepsleep process
Closes https://github.com/espressif/esp-idf/issues/12695
2023-12-08 13:59:52 +08:00
wuzhenghui d07bd19ba6 fix(esp_system): fix uart clock disabled in driver cause esp_restart stuck 2023-12-06 10:36:48 +08:00
wuzhenghui 600986cf49 fix(riscv): supports 1 byte and larger than 64byte range watchpoint setting 2023-11-16 20:23:57 +08:00
wuzhenghui 4379d26f65 change(soc): rename SOC_CPU_WATCHPOINT_SIZE to SOC_CPU_WATCHPOINT_MAX_REGION_SIZE 2023-11-16 20:23:57 +08:00
wuzhenghui b7f1aa5292 fix(esp_hw_support): fix lightsleep current leakage on usb-phy controlled pad 2023-11-16 17:18:43 +08:00
wuzhenghui 79dd7a350e ci(ulp_test): fix fake sleep of the maincore in ulp pytest cases 2023-11-16 11:47:20 +08:00
wuzhenghui adc8351458 fix(esp_hw_support): clear all type ULP wakeup intr status at ulp wakeup source enable 2023-11-16 11:47:20 +08:00
wuzhenghui 4175c60a21 fix(esp_hw_support): move fe_32m to fe/adc common clock 2023-11-16 02:58:16 +00:00
wuzhenghui c570105f36 fix(esp_pm): fix psram access faild after pd_cpu wakeup 2023-11-16 02:55:06 +00:00
wuzhenghui 841d75b3a3 change(esp_pm): improve POWER_DOWN_TAGMEM_IN_LIGHT_SLEEP description
Rename PM_POWER_DOWN_TAGMEM_IN_LIGHT_SLEEP to PM_RESTORE_CACHE_TAGMEM_AFTER_LIGHT_SLEEP
and improve the description for it
2023-11-16 02:55:06 +00:00
wuzhenghui 3207599b6d fix(esp_system): increase esp32h2 slow clock calibration timeout watchdog threshold 2023-11-03 19:08:28 +08:00
wuzhenghui d6cda1b6e1 ci(esp_hw_support): add test case for gpio output internal clock feature ci 2023-10-20 14:55:10 +08:00
wuzhenghui 7195bf19df feat(esp_hw_support): support one-to-many signal-gpio mapping output 2023-10-20 14:55:06 +08:00
wuzhenghui 6a436286dc feat(esp_hw_support): add api to gpio driver to support output internal clock on GPIO 2023-10-20 14:35:26 +08:00
wuzhenghui 1f10c84a4f change(hal): rewrite gpio_ll_set_iomux_pin_ctrl api 2023-10-19 22:24:08 +08:00
wuzhenghui 97e001d603 fix(esp_hw_support): fix pm tests failure caused by non-iram safe test code 2023-10-17 20:56:43 +08:00
wuzhenghui c667f5a864 feat: support dump last time sleep context 2023-10-09 10:42:10 +08:00
wuzhenghui c8083b07bf feat(modem_clock): separate management of modem_adc_common_fe clock and modem_private_fe 2023-09-28 17:41:42 +00:00
wuzhenghui 5926116644 change(heap): fix and clean memory caps defination in memory_layout
1. move startup_stack attr from soc_memory_type_desc_t to soc_memory_region_t and
   remove unused aliased_iram field
2. all of the last level of RAM is retention dma accessible on esp32c3
3. remove esp32c2 and later chips retention dma accessible memory caps
4. allow allocate memory from RTC_RAM with MALLOC_CAP_EXEC cap
2023-09-28 07:53:20 +00:00
wuzhenghui 7a0684d03f fix(sleep): fix pma cfg csr regs bad retention 2023-09-22 11:47:45 +08:00
wuzhenghui 34f89091b2 fix(sleep): fix modem reject the deepsleep request 2023-09-21 15:11:55 +08:00
Wu Zheng Hui 2319f2a59e Merge branch 'bugfix/suppress_compiler_warning_if_silent_reboot_is_enabled' into 'master'
fix(esp_system): suppress compiler warning if ESP_SYSTEM_PANIC_SILENT_REBOOT is enabled

See merge request espressif/esp-idf!25909
2023-09-13 10:45:31 +08:00
wuzhenghui 6fea0260a3 fix(esp_system): suppress compiler warning if ESP_SYSTEM_PANIC_SILENT_REBOOT is enabled 2023-09-12 16:30:42 +08:00
wuzhenghui eeab989d09 fix(esp_rom): fix esp32c6, esp32h2 hp_regi2c ops data conflict with phy ops 2023-08-22 11:00:00 +08:00
wuzhenghui dae4b3f046 ci(wifi): add wifi powersave pytest case 2023-08-10 16:26:28 +08:00
wuzhenghui e148390b6d feat(esp_wifi): support get AP info from stdin in wifi powersave example 2023-08-10 16:26:25 +08:00
wuzhenghui a425d8816a feat(esp_hw_support): manage modem_etm clock in modem_clock for bt/154 indepently 2023-08-09 20:19:50 +08:00
wuzhenghui e9c6083729 fix(light_sleep): shouldn't backup uart fifo reg in pd_top light sleep 2023-08-08 16:45:17 +08:00
wuzhenghui 8b5052f213 fix(light_sleep): save vddsdio_config before lightsleep 2023-08-04 11:58:07 +08:00
wuzhenghui 0b0e8ab80b fix(light_sleep): suspend/resume cache correspondingly after light sleep 2023-08-04 11:56:55 +08:00
wuzhenghui c34cdd05e9 fix(esp_hw_support): manage i2c_ana_mst clock witch modem clock driver 2023-08-04 10:39:43 +08:00
Wu Zheng Hui 016cb6a19a Merge branch 'bugfix/fix_cache_data_mem_corrupt_after_sleep' into 'master'
fix(lightsleep): Suspend cache before goto sleep to avoid cache load wrong data

Closes IDFCI-1760

See merge request espressif/esp-idf!25084
2023-08-02 11:02:01 +08:00
wuzhenghui 26618ad536 fix(lightsleep): suspend cache before goto sleep
There is a possibility that the cache is still accessing the
SPI flashwhen sleep isolating SPI IO, so it is necessary to
wait for the cache to be free before requesting sleep.
2023-08-01 16:29:04 +08:00
wuzhenghui 842ff10777 fix(soc): fix wrong freq definition for 26Mhz version esp32c2 soc 2023-07-15 01:54:48 +08:00
Wu Zheng Hui deae388e3c Merge branch 'bugfix/fix_sleep_cache_spi_safe_issues' into 'master'
Power Management: fix cache spi flash related issues in sleep process

Closes WIFI-6009 and IDF-7572

See merge request espressif/esp-idf!24270
2023-07-15 00:37:31 +08:00
wuzhenghui 797efb1dd3 ci: add pd_vddsdio in lightsleep UT tests
- Add pd_vddsdio in lightsleep UT tests to ensure proper functionality
2023-07-14 21:21:23 +08:00
wuzhenghui a5c992c8af fix(esp_pm): fix PM_SLP_IRAM_OPT/PM_RTOS_IDLE_OPT feature
- Fix flash accessed code to resolve issues with PM_SLP_IRAM_OPT/PM_RTOS_IDLE_OPT enabled
2023-07-14 21:21:19 +08:00
wuzhenghui 4e9cc65763 change(uart): change sleep code to be cache safe
- Set uart ll with FORCE_INLINE_ATTR
- Add no_flash API periph_ll_uart_enabled api
2023-07-14 20:12:59 +08:00
wuzhenghui 6c14e1de9f fix: put vddsdio configure api always in iram if pd_flash is enabled
- Put vddsdio configure api always in iram if pd_flash is enabled to ensure access flash at flash unavailable time
2023-07-14 20:12:59 +08:00
wuzhenghui 9f993705a6 fix: wait spi bus idle before hold CS pin
- Wait for spi bus idle before holding CS pin to prevent hold selected state during sleep
2023-07-14 20:12:59 +08:00
wuzhenghui b9550a1609 feat: support cache safe assertion check
- Add support for cache safe assertion check to ensure that code expected to be in RAM is in IRAM
2023-07-14 20:12:59 +08:00
wuzhenghui 2b600df4ee fix(esp_pm): Constrains the minimum frequency of APB_MAX when the modem is working 2023-07-14 20:10:16 +08:00
Wu Zheng Hui e9b6472753 Merge branch 'bugfix/enable_i2c_master_clock_in_bbpll_configure' into 'master'
fix(rtc_clk): fix i2c master clock missing in bbpll configure

Closes WIFI-6147

See merge request espressif/esp-idf!24765
2023-07-14 00:40:21 +08:00
wuzhenghui 14ea226351 fix(rtc_clk): fix i2c master clock missing in bbpll configure 2023-07-13 14:07:35 +08:00
Wu Zheng Hui 4c713227ae Merge branch 'bugfix/fix_idf_monitor_parsing_pc_with_wrong_rom_elf' into 'master'
bugfix: fix idf passing wrong chip revision to idf_monitor

See merge request espressif/esp-idf!24609
2023-07-11 17:14:10 +08:00
Wu Zheng Hui 94613a5904 Merge branch 'bugfix/fix_deepsleep_wakestub_example_ci_failure_master' into 'master'
ci: fix deepsleep wakestub example ci failure

See merge request espressif/esp-idf!24466
2023-07-07 11:38:14 +08:00
wuzhenghui 05d15a2eed sleep: enrich top_domain_pd_allowed function description 2023-07-05 11:16:44 +00:00
wuzhenghui 6713bb9951 ci: increase timeout threshold to solve deepsleep wakestub example ci failure 2023-07-05 11:16:44 +00:00
wuzhenghui 78c959b13e fix: fix idf passing wrong chip revision to idf_monitor 2023-07-05 17:30:12 +08:00
Wu Zheng Hui 173d0951ee Merge branch 'feature/improve_pd_vddsido_help_doc' into 'master'
Power Management: improve ESP_SLEEP_PSRAM/FLASH_LEAKAGE_WORKAROUND help doc

Closes IDFGH-10297

See merge request espressif/esp-idf!24301
2023-06-26 23:01:31 +08:00
wuzhenghui 95c79e7ec5 Kconfig: improve ESP_SLEEP_PSRAM/FLASH_LEAKAGE_WORKAROUND help doc
Closes https://github.com/espressif/esp-idf/issues/11558
2023-06-26 11:51:56 +08:00
Wu Zheng Hui c41abacb3a Merge branch 'feature/enable_sleep_reject_for_deep_sleep' into 'master'
sleep: enable sleep reject when entering deepsleep

Closes WIFI-6010

See merge request espressif/esp-idf!24127
2023-06-25 00:02:32 +08:00
wuzhenghui 6fe405bffc ci: fix failed ci test jobs 2023-06-21 15:24:50 +08:00
wuzhenghui 679ae47271 sleep: enable sleep reject when entering deep sleep and return err if sleep request is rejected 2023-06-21 11:27:40 +08:00
Wu Zheng Hui 392e6aa867 Merge branch 'bugfix/increase_pm_dump_time_field_length' into 'master'
Power Management: increase pm_dump time field width

Closes IDFGH-10457

See merge request espressif/esp-idf!24330
2023-06-21 10:58:41 +08:00
wuzhenghui ef8e8c1719 bugfix: increase pm_dump time field width
Closes https://github.com/espressif/esp-idf/issues/11704
2023-06-20 20:17:50 +08:00