Merge branch 'bugfix/efuse_logs_v4.1' into 'release/v4.1'
esp32: Reduce using ESP_EARLY_LOGx and move some code after the stdout initialization in startup code (v4.1) See merge request espressif/esp-idf!9206
This commit is contained in:
commit
9e55345c43
4 changed files with 19 additions and 16 deletions
|
@ -36,7 +36,7 @@ void esp_flash_encryption_init_checks()
|
||||||
uint8_t flash_crypt_cnt_wr_dis = 0;
|
uint8_t flash_crypt_cnt_wr_dis = 0;
|
||||||
esp_efuse_read_field_blob(ESP_EFUSE_WR_DIS_FLASH_CRYPT_CNT, &flash_crypt_cnt_wr_dis, 1);
|
esp_efuse_read_field_blob(ESP_EFUSE_WR_DIS_FLASH_CRYPT_CNT, &flash_crypt_cnt_wr_dis, 1);
|
||||||
if (!flash_crypt_cnt_wr_dis) {
|
if (!flash_crypt_cnt_wr_dis) {
|
||||||
ESP_EARLY_LOGE(TAG, "Flash encryption & Secure Boot together requires FLASH_CRYPT_CNT efuse to be write protected. Fixing now...");
|
ESP_LOGE(TAG, "Flash encryption & Secure Boot together requires FLASH_CRYPT_CNT efuse to be write protected. Fixing now...");
|
||||||
esp_flash_write_protect_crypt_cnt();
|
esp_flash_write_protect_crypt_cnt();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -48,13 +48,13 @@ void esp_flash_encryption_init_checks()
|
||||||
mode = esp_get_flash_encryption_mode();
|
mode = esp_get_flash_encryption_mode();
|
||||||
if (mode == ESP_FLASH_ENC_MODE_DEVELOPMENT) {
|
if (mode == ESP_FLASH_ENC_MODE_DEVELOPMENT) {
|
||||||
#ifdef CONFIG_SECURE_FLASH_ENCRYPTION_MODE_RELEASE
|
#ifdef CONFIG_SECURE_FLASH_ENCRYPTION_MODE_RELEASE
|
||||||
ESP_EARLY_LOGE(TAG, "Flash encryption settings error: app is configured for RELEASE but efuses are set for DEVELOPMENT");
|
ESP_LOGE(TAG, "Flash encryption settings error: app is configured for RELEASE but efuses are set for DEVELOPMENT");
|
||||||
ESP_EARLY_LOGE(TAG, "Mismatch found in security options in bootloader menuconfig and efuse settings. Device is not secure.");
|
ESP_LOGE(TAG, "Mismatch found in security options in bootloader menuconfig and efuse settings. Device is not secure.");
|
||||||
#else
|
#else
|
||||||
ESP_EARLY_LOGW(TAG, "Flash encryption mode is DEVELOPMENT (not secure)");
|
ESP_LOGW(TAG, "Flash encryption mode is DEVELOPMENT (not secure)");
|
||||||
#endif
|
#endif
|
||||||
} else if (mode == ESP_FLASH_ENC_MODE_RELEASE) {
|
} else if (mode == ESP_FLASH_ENC_MODE_RELEASE) {
|
||||||
ESP_EARLY_LOGI(TAG, "Flash encryption mode is RELEASE");
|
ESP_LOGI(TAG, "Flash encryption mode is RELEASE");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -74,7 +74,7 @@ void esp_efuse_disable_basic_rom_console(void)
|
||||||
esp_efuse_read_field_blob(ESP_EFUSE_CONSOLE_DEBUG_DISABLE, &console_debug_disable, 1);
|
esp_efuse_read_field_blob(ESP_EFUSE_CONSOLE_DEBUG_DISABLE, &console_debug_disable, 1);
|
||||||
if (console_debug_disable == 0) {
|
if (console_debug_disable == 0) {
|
||||||
esp_efuse_write_field_cnt(ESP_EFUSE_CONSOLE_DEBUG_DISABLE, 1);
|
esp_efuse_write_field_cnt(ESP_EFUSE_CONSOLE_DEBUG_DISABLE, 1);
|
||||||
ESP_EARLY_LOGI(TAG, "Disable BASIC ROM Console fallback via efuse...");
|
ESP_LOGI(TAG, "Disable BASIC ROM Console fallback via efuse...");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -208,10 +208,6 @@ void IRAM_ATTR call_start_cpu0(void)
|
||||||
}
|
}
|
||||||
ESP_EARLY_LOGI(TAG, "Starting app cpu, entry point is %p", call_start_cpu1);
|
ESP_EARLY_LOGI(TAG, "Starting app cpu, entry point is %p", call_start_cpu1);
|
||||||
|
|
||||||
#ifdef CONFIG_SECURE_FLASH_ENC_ENABLED
|
|
||||||
esp_flash_encryption_init_checks();
|
|
||||||
#endif
|
|
||||||
|
|
||||||
//Flush and enable icache for APP CPU
|
//Flush and enable icache for APP CPU
|
||||||
Cache_Flush(1);
|
Cache_Flush(1);
|
||||||
Cache_Read_Enable(1);
|
Cache_Read_Enable(1);
|
||||||
|
@ -352,9 +348,6 @@ void start_cpu0_default(void)
|
||||||
|
|
||||||
#if CONFIG_ESP32_BROWNOUT_DET
|
#if CONFIG_ESP32_BROWNOUT_DET
|
||||||
esp_brownout_init();
|
esp_brownout_init();
|
||||||
#endif
|
|
||||||
#if CONFIG_ESP32_DISABLE_BASIC_ROM_CONSOLE
|
|
||||||
esp_efuse_disable_basic_rom_console();
|
|
||||||
#endif
|
#endif
|
||||||
rtc_gpio_force_hold_dis_all();
|
rtc_gpio_force_hold_dis_all();
|
||||||
esp_vfs_dev_uart_register();
|
esp_vfs_dev_uart_register();
|
||||||
|
@ -368,6 +361,14 @@ void start_cpu0_default(void)
|
||||||
_GLOBAL_REENT->_stdin = (FILE*) &__sf_fake_stdin;
|
_GLOBAL_REENT->_stdin = (FILE*) &__sf_fake_stdin;
|
||||||
_GLOBAL_REENT->_stdout = (FILE*) &__sf_fake_stdout;
|
_GLOBAL_REENT->_stdout = (FILE*) &__sf_fake_stdout;
|
||||||
_GLOBAL_REENT->_stderr = (FILE*) &__sf_fake_stderr;
|
_GLOBAL_REENT->_stderr = (FILE*) &__sf_fake_stderr;
|
||||||
|
#endif
|
||||||
|
// After setting _GLOBAL_REENT, ESP_LOGIx can be used instead of ESP_EARLY_LOGx.
|
||||||
|
|
||||||
|
#ifdef CONFIG_SECURE_FLASH_ENC_ENABLED
|
||||||
|
esp_flash_encryption_init_checks();
|
||||||
|
#endif
|
||||||
|
#if CONFIG_ESP32_DISABLE_BASIC_ROM_CONSOLE
|
||||||
|
esp_efuse_disable_basic_rom_console();
|
||||||
#endif
|
#endif
|
||||||
esp_timer_init();
|
esp_timer_init();
|
||||||
esp_set_time_from_rtc();
|
esp_set_time_from_rtc();
|
||||||
|
|
|
@ -276,9 +276,6 @@ void start_cpu0_default(void)
|
||||||
|
|
||||||
#if CONFIG_ESP32S2_BROWNOUT_DET
|
#if CONFIG_ESP32S2_BROWNOUT_DET
|
||||||
esp_brownout_init();
|
esp_brownout_init();
|
||||||
#endif
|
|
||||||
#if CONFIG_ESP32S2_DISABLE_BASIC_ROM_CONSOLE
|
|
||||||
esp_efuse_disable_basic_rom_console();
|
|
||||||
#endif
|
#endif
|
||||||
rtc_gpio_force_hold_dis_all();
|
rtc_gpio_force_hold_dis_all();
|
||||||
esp_vfs_dev_uart_register();
|
esp_vfs_dev_uart_register();
|
||||||
|
@ -292,6 +289,11 @@ void start_cpu0_default(void)
|
||||||
_GLOBAL_REENT->_stdin = (FILE*) &__sf_fake_stdin;
|
_GLOBAL_REENT->_stdin = (FILE*) &__sf_fake_stdin;
|
||||||
_GLOBAL_REENT->_stdout = (FILE*) &__sf_fake_stdout;
|
_GLOBAL_REENT->_stdout = (FILE*) &__sf_fake_stdout;
|
||||||
_GLOBAL_REENT->_stderr = (FILE*) &__sf_fake_stderr;
|
_GLOBAL_REENT->_stderr = (FILE*) &__sf_fake_stderr;
|
||||||
|
#endif
|
||||||
|
// After setting _GLOBAL_REENT, ESP_LOGIx can be used instead of ESP_EARLY_LOGx.
|
||||||
|
|
||||||
|
#if CONFIG_ESP32S2_DISABLE_BASIC_ROM_CONSOLE
|
||||||
|
esp_efuse_disable_basic_rom_console();
|
||||||
#endif
|
#endif
|
||||||
esp_timer_init();
|
esp_timer_init();
|
||||||
esp_set_time_from_rtc();
|
esp_set_time_from_rtc();
|
||||||
|
|
Loading…
Reference in a new issue