mirror of
https://github.com/espressif/esp-idf.git
synced 2024-10-05 20:47:46 -04:00
Merge branch 'bugfix/fix_esp32s2_sleep_related_issue_backport_missing' into 'release/v4.3'
fix: fix esp32s2 abnormal light sleep current See merge request espressif/esp-idf!25336
This commit is contained in:
commit
061caf9569
@ -117,6 +117,11 @@ menu "ESP System Settings"
|
|||||||
pull-up, you do not need to select this option, otherwise, you
|
pull-up, you do not need to select this option, otherwise, you
|
||||||
should enable this option.
|
should enable this option.
|
||||||
|
|
||||||
|
config ESP_SYSTEM_SLEEP_RTC_BUS_ISO_WORKAROUND
|
||||||
|
bool
|
||||||
|
default y if IDF_TARGET_ESP32 || IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3
|
||||||
|
|
||||||
|
|
||||||
menu "RTC Clock Config"
|
menu "RTC Clock Config"
|
||||||
# This is used for configure the RTC clock.
|
# This is used for configure the RTC clock.
|
||||||
config RTC_CLOCK_BBPLL_POWER_ON_WITH_USB
|
config RTC_CLOCK_BBPLL_POWER_ON_WITH_USB
|
||||||
|
@ -651,7 +651,7 @@ static uint32_t IRAM_ATTR esp_sleep_start(uint32_t pd_flags)
|
|||||||
if (!s_ultra_low_enabled) {
|
if (!s_ultra_low_enabled) {
|
||||||
sleep_flags |= RTC_SLEEP_NO_ULTRA_LOW;
|
sleep_flags |= RTC_SLEEP_NO_ULTRA_LOW;
|
||||||
}
|
}
|
||||||
if (rtc_dig_8m_enabled()) {
|
if (periph_using_8m) {
|
||||||
sleep_flags |= RTC_SLEEP_DIG_USE_8M;
|
sleep_flags |= RTC_SLEEP_DIG_USE_8M;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -831,6 +831,10 @@ esp_err_t esp_light_sleep_start(void)
|
|||||||
// Decide which power domains can be powered down
|
// Decide which power domains can be powered down
|
||||||
uint32_t pd_flags = get_power_down_flags();
|
uint32_t pd_flags = get_power_down_flags();
|
||||||
|
|
||||||
|
#ifdef CONFIG_ESP_SYSTEM_SLEEP_RTC_BUS_ISO_WORKAROUND
|
||||||
|
pd_flags &= ~RTC_SLEEP_PD_RTC_PERIPH;
|
||||||
|
#endif
|
||||||
|
|
||||||
// Re-calibrate the RTC Timer clock
|
// Re-calibrate the RTC Timer clock
|
||||||
#if defined(CONFIG_ESP32_RTC_CLK_SRC_EXT_CRYS) || defined(CONFIG_ESP32S2_RTC_CLK_SRC_EXT_CRYS) || defined(CONFIG_ESP32C3_RTC_CLK_SRC_EXT_CRYS)
|
#if defined(CONFIG_ESP32_RTC_CLK_SRC_EXT_CRYS) || defined(CONFIG_ESP32S2_RTC_CLK_SRC_EXT_CRYS) || defined(CONFIG_ESP32C3_RTC_CLK_SRC_EXT_CRYS)
|
||||||
if (rtc_clk_slow_freq_get() == RTC_SLOW_FREQ_32K_XTAL) {
|
if (rtc_clk_slow_freq_get() == RTC_SLOW_FREQ_32K_XTAL) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user