esp32: disable DPORT access protection when doing esp_restart

DPORT access protection can not work when the other CPU is stalled.
Writes to DPORT registers in esp_restart caused the program to hang due
to access protection, and the reset happened due to RTC_WDT, not SW_RST.
This change adds esp_dport_access_int_deinit function and calls it from
esp_restart once the other core is stalled.
This commit is contained in:
Ivan Grokhotkov
2017-06-14 18:00:26 +08:00
parent 75658ee29b
commit a72b1abc51
3 changed files with 14 additions and 1 deletions

View File

@@ -22,6 +22,7 @@ extern "C" {
void esp_dport_access_stall_other_cpu_start(void);
void esp_dport_access_stall_other_cpu_end(void);
void esp_dport_access_int_init(void);
void esp_dport_access_int_deinit(void);
#if defined(BOOTLOADER_BUILD) || defined(CONFIG_FREERTOS_UNICORE) || !defined(ESP_PLATFORM)
#define DPORT_STALL_OTHER_CPU_START()