Просмотр исходного кода

sleep: deep sleep does not need cpu and wifi/bt mac retention

Li Shuai 4 лет назад
Родитель
Сommit
c99cb930c3
1 измененных файлов с 4 добавлено и 3 удалено
  1. 4 3
      components/esp_hw_support/sleep_modes.c

+ 4 - 3
components/esp_hw_support/sleep_modes.c

@@ -391,7 +391,9 @@ static uint32_t IRAM_ATTR esp_sleep_start(uint32_t pd_flags)
     }
 #endif
 
-    misc_modules_sleep_prepare();
+    if (!deep_sleep) {
+        misc_modules_sleep_prepare();
+    }
 
 #if CONFIG_IDF_TARGET_ESP32S2 || CONFIG_IDF_TARGET_ESP32S3
     if (deep_sleep) {
@@ -484,10 +486,9 @@ static uint32_t IRAM_ATTR esp_sleep_start(uint32_t pd_flags)
 
     if (!deep_sleep) {
         s_config.ccount_ticks_record = cpu_ll_get_cycle_count();
+        misc_modules_wake_prepare();
     }
 
-    misc_modules_wake_prepare();
-
     // re-enable UART output
     resume_uarts();