]> granicus.if.org Git - esp-idf/commitdiff
Merge branch 'bugfix/deep_sleep' into 'master'
authorIvan Grokhotkov <ivan@espressif.com>
Thu, 12 Jan 2017 07:53:09 +0000 (15:53 +0800)
committerIvan Grokhotkov <ivan@espressif.com>
Thu, 12 Jan 2017 07:53:09 +0000 (15:53 +0800)
deep sleep related fixes

A few fixes for deep sleep behavior:

- Fix a regression that deep sleep stub crashed if `ESP32_DEEP_SLEEP_WAKEUP_DELAY` option was enabled — the stub called `ets_update_cpu_frequency`, which was recently redefined to be an IRAM function, rather than a ROM one. Fixed by restoring the ROM definition as `ets_update_cpu_frequency_rom`, and using that in the deep sleep stub.

- By default, don't power down RTC_SLOW_MEM if there is any data in .rtc.data or .rtc.bss sections. This provides better out-of-the box experience, as variables attributed to .rtc.data are actually preserved during deep sleep.

- Store boot time in RTC_STORE registers instead of using a variable with RTC_DATA_ATTR. This allows RTC_SLOW_MEM to be powered down in deep sleep if no variables with RTC_DATA_ATTR are present in the program.

Fixes https://github.com/espressif/esp-idf/issues/182

See merge request !409


Trivial merge