Merge branch 'bugfix/misc_v3_1_backports' into 'release/v3.1'

Multiple v3.1 backports

See merge request idf/esp-idf!3378
This commit is contained in:
Angus Gratton
2018-10-10 15:01:13 +08:00
12 changed files with 71 additions and 10 deletions

View File

@@ -29,6 +29,7 @@
#include "soc/io_mux_reg.h"
#include "soc/rtc_cntl_reg.h"
#include "soc/timer_group_reg.h"
#include "soc/efuse_reg.h"
#include "driver/rtc_io.h"
@@ -163,6 +164,11 @@ void IRAM_ATTR call_start_cpu0()
ESP_EARLY_LOGI(TAG, "Pro cpu up.");
#if !CONFIG_FREERTOS_UNICORE
if (REG_GET_BIT(EFUSE_BLK0_RDATA3_REG, EFUSE_RD_CHIP_VER_DIS_APP_CPU)) {
ESP_EARLY_LOGE(TAG, "Running on single core chip, but application is built with dual core support.");
ESP_EARLY_LOGE(TAG, "Please enable CONFIG_FREERTOS_UNICORE option in menuconfig.");
abort();
}
ESP_EARLY_LOGI(TAG, "Starting app cpu, entry point is %p", call_start_cpu1);
//Flush and enable icache for APP CPU
Cache_Flush(1);

View File

@@ -607,11 +607,15 @@ static uint32_t get_power_down_flags()
// RTC_SLOW_MEM is Auto, keep it powered up as well.
// These labels are defined in the linker script:
extern int _rtc_data_start, _rtc_data_end, _rtc_bss_start, _rtc_bss_end;
extern int _rtc_data_start, _rtc_data_end,
_rtc_bss_start, _rtc_bss_end,
_rtc_noinit_start, _rtc_noinit_end;
if ((s_config.pd_options[ESP_PD_DOMAIN_RTC_SLOW_MEM] == ESP_PD_OPTION_AUTO) &&
(&_rtc_data_end > &_rtc_data_start || &_rtc_bss_end > &_rtc_bss_start ||
(s_config.wakeup_triggers & RTC_ULP_TRIG_EN))) {
(&_rtc_data_end > &_rtc_data_start ||
&_rtc_bss_end > &_rtc_bss_start ||
&_rtc_noinit_end > &_rtc_noinit_start ||
(s_config.wakeup_triggers & RTC_ULP_TRIG_EN))) {
s_config.pd_options[ESP_PD_DOMAIN_RTC_SLOW_MEM] = ESP_PD_OPTION_ON;
}