Merge branch 'bugfix/apptrace_init_sequence' into 'master'

Changed initialization sequence of application tracing component on APP CPU so i…

See merge request !1256
This commit is contained in:
Ivan Grokhotkov
2017-09-15 15:02:42 +08:00

View File

@@ -302,17 +302,13 @@ void start_cpu0_default(void)
esp_set_time_from_rtc(); esp_set_time_from_rtc();
#if CONFIG_ESP32_APPTRACE_ENABLE #if CONFIG_ESP32_APPTRACE_ENABLE
err = esp_apptrace_init(); err = esp_apptrace_init();
if (err != ESP_OK) { assert(err == ESP_OK && "Failed to init apptrace module on PRO CPU!");
ESP_EARLY_LOGE(TAG, "Failed to init apptrace module on CPU0 (%d)!", err);
}
#endif #endif
#if CONFIG_SYSVIEW_ENABLE #if CONFIG_SYSVIEW_ENABLE
SEGGER_SYSVIEW_Conf(); SEGGER_SYSVIEW_Conf();
#endif #endif
err = esp_pthread_init(); err = esp_pthread_init();
if (err != ESP_OK) { assert(err == ESP_OK && "Failed to init pthread module!");
ESP_EARLY_LOGE(TAG, "Failed to init pthread module (%d)!", err);
}
do_global_ctors(); do_global_ctors();
#if CONFIG_INT_WDT #if CONFIG_INT_WDT
@@ -347,19 +343,17 @@ void start_cpu0_default(void)
#if !CONFIG_FREERTOS_UNICORE #if !CONFIG_FREERTOS_UNICORE
void start_cpu1_default(void) void start_cpu1_default(void)
{ {
// Wait for FreeRTOS initialization to finish on PRO CPU
while (port_xSchedulerRunning[0] == 0) {
;
}
#if CONFIG_ESP32_TRAX_TWOBANKS #if CONFIG_ESP32_TRAX_TWOBANKS
trax_start_trace(TRAX_DOWNCOUNT_WORDS); trax_start_trace(TRAX_DOWNCOUNT_WORDS);
#endif #endif
#if CONFIG_ESP32_APPTRACE_ENABLE #if CONFIG_ESP32_APPTRACE_ENABLE
esp_err_t err = esp_apptrace_init(); esp_err_t err = esp_apptrace_init();
if (err != ESP_OK) { assert(err == ESP_OK && "Failed to init apptrace module on APP CPU!");
ESP_EARLY_LOGE(TAG, "Failed to init apptrace module on CPU1 (%d)!", err);
}
#endif #endif
// Wait for FreeRTOS initialization to finish on PRO CPU
while (port_xSchedulerRunning[0] == 0) {
;
}
//Take care putting stuff here: if asked, FreeRTOS will happily tell you the scheduler //Take care putting stuff here: if asked, FreeRTOS will happily tell you the scheduler
//has started, but it isn't active *on this CPU* yet. //has started, but it isn't active *on this CPU* yet.
esp_cache_err_int_init(); esp_cache_err_int_init();