]> granicus.if.org Git - esp-idf/commit
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)
commitb018a3ce8ee53303f7293e925dc99c14ec3a8420
tree85d52587b7f67320bfa31c4a4cad4e703b0bdc68
parentd3a0580bef823c0ca042b6043f494efb4db57572
parentb24ac487cb49148ec17f2ab077fe72439de0f8e1
Merge branch 'bugfix/deep_sleep' into 'master'

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