esp32: Fix not the right time spent in a deep sleep

Before entering the deep sleep, the RTC and FRC counters are synchronized. Updating the boot_time.
Added a unit test for this case.
Fixed warnings for MULTIPLE_STAGES

Closes https://github.com/espressif/esp-idf/issues/1840
This commit is contained in:
Konstantin Kondrashov
2018-06-04 12:39:18 +05:00
parent d441dd32ea
commit 7e2a3da643
6 changed files with 75 additions and 3 deletions

View File

@@ -203,7 +203,7 @@ void IRAM_ATTR esp_deep_sleep_start()
{
// record current RTC time
s_config.rtc_ticks_at_sleep_start = rtc_time_get();
esp_sync_counters_rtc_and_frc();
// Configure wake stub
if (esp_get_deep_sleep_wake_stub() == NULL) {
esp_set_deep_sleep_wake_stub(esp_wake_deep_sleep);