mirror of
https://github.com/espressif/esp-idf.git
synced 2025-07-30 18:57:19 +02:00
change(esp_system): trigger digital system reset in brownout isr
This commit is contained in:
@ -33,6 +33,8 @@ PROVIDE ( esp_rom_md5_init = 0x4005da7c );
|
|||||||
PROVIDE ( esp_rom_md5_update = 0x4005da9c );
|
PROVIDE ( esp_rom_md5_update = 0x4005da9c );
|
||||||
PROVIDE ( esp_rom_md5_final = 0x4005db1c );
|
PROVIDE ( esp_rom_md5_final = 0x4005db1c );
|
||||||
|
|
||||||
|
PROVIDE ( esp_rom_software_reset_system = software_reset );
|
||||||
|
|
||||||
PROVIDE ( esp_rom_printf = ets_printf );
|
PROVIDE ( esp_rom_printf = ets_printf );
|
||||||
PROVIDE ( esp_rom_delay_us = ets_delay_us );
|
PROVIDE ( esp_rom_delay_us = ets_delay_us );
|
||||||
PROVIDE ( esp_rom_install_uart_printf = ets_install_uart_printf );
|
PROVIDE ( esp_rom_install_uart_printf = ets_install_uart_printf );
|
||||||
|
@ -35,6 +35,8 @@ PROVIDE ( esp_rom_mbedtls_md5_starts_ret = mbedtls_md5_starts_ret );
|
|||||||
PROVIDE ( esp_rom_mbedtls_md5_update_ret = mbedtls_md5_update_ret );
|
PROVIDE ( esp_rom_mbedtls_md5_update_ret = mbedtls_md5_update_ret );
|
||||||
PROVIDE ( esp_rom_mbedtls_md5_finish_ret = mbedtls_md5_finish_ret );
|
PROVIDE ( esp_rom_mbedtls_md5_finish_ret = mbedtls_md5_finish_ret );
|
||||||
|
|
||||||
|
PROVIDE ( esp_rom_software_reset_system = software_reset );
|
||||||
|
|
||||||
PROVIDE ( esp_rom_printf = ets_printf );
|
PROVIDE ( esp_rom_printf = ets_printf );
|
||||||
PROVIDE ( esp_rom_install_uart_printf = ets_install_uart_printf );
|
PROVIDE ( esp_rom_install_uart_printf = ets_install_uart_printf );
|
||||||
PROVIDE ( esp_rom_delay_us = ets_delay_us );
|
PROVIDE ( esp_rom_delay_us = ets_delay_us );
|
||||||
|
@ -32,6 +32,8 @@ PROVIDE ( esp_rom_md5_init = MD5Init );
|
|||||||
PROVIDE ( esp_rom_md5_update = MD5Update );
|
PROVIDE ( esp_rom_md5_update = MD5Update );
|
||||||
PROVIDE ( esp_rom_md5_final = MD5Final );
|
PROVIDE ( esp_rom_md5_final = MD5Final );
|
||||||
|
|
||||||
|
PROVIDE ( esp_rom_software_reset_system = software_reset );
|
||||||
|
|
||||||
PROVIDE ( esp_rom_printf = ets_printf );
|
PROVIDE ( esp_rom_printf = ets_printf );
|
||||||
PROVIDE ( esp_rom_delay_us = ets_delay_us );
|
PROVIDE ( esp_rom_delay_us = ets_delay_us );
|
||||||
PROVIDE ( esp_rom_get_reset_reason = rtc_get_reset_reason );
|
PROVIDE ( esp_rom_get_reset_reason = rtc_get_reset_reason );
|
||||||
|
@ -38,6 +38,8 @@ PROVIDE ( esp_rom_md5_init = MD5Init );
|
|||||||
PROVIDE ( esp_rom_md5_update = MD5Update );
|
PROVIDE ( esp_rom_md5_update = MD5Update );
|
||||||
PROVIDE ( esp_rom_md5_final = MD5Final );
|
PROVIDE ( esp_rom_md5_final = MD5Final );
|
||||||
|
|
||||||
|
PROVIDE ( esp_rom_software_reset_system = software_reset );
|
||||||
|
|
||||||
PROVIDE ( esp_rom_printf = ets_printf );
|
PROVIDE ( esp_rom_printf = ets_printf );
|
||||||
PROVIDE ( esp_rom_delay_us = ets_delay_us );
|
PROVIDE ( esp_rom_delay_us = ets_delay_us );
|
||||||
PROVIDE ( esp_rom_get_reset_reason = rtc_get_reset_reason );
|
PROVIDE ( esp_rom_get_reset_reason = rtc_get_reset_reason );
|
||||||
|
@ -38,6 +38,8 @@ PROVIDE ( esp_rom_md5_init = MD5Init );
|
|||||||
PROVIDE ( esp_rom_md5_update = MD5Update );
|
PROVIDE ( esp_rom_md5_update = MD5Update );
|
||||||
PROVIDE ( esp_rom_md5_final = MD5Final );
|
PROVIDE ( esp_rom_md5_final = MD5Final );
|
||||||
|
|
||||||
|
PROVIDE ( esp_rom_software_reset_system = software_reset );
|
||||||
|
|
||||||
PROVIDE ( esp_rom_printf = ets_printf );
|
PROVIDE ( esp_rom_printf = ets_printf );
|
||||||
PROVIDE ( esp_rom_delay_us = ets_delay_us );
|
PROVIDE ( esp_rom_delay_us = ets_delay_us );
|
||||||
PROVIDE ( esp_rom_get_reset_reason = rtc_get_reset_reason );
|
PROVIDE ( esp_rom_get_reset_reason = rtc_get_reset_reason );
|
||||||
|
@ -34,6 +34,8 @@ PROVIDE ( esp_rom_md5_init = 0x4000526c );
|
|||||||
PROVIDE ( esp_rom_md5_update = 0x4000528c );
|
PROVIDE ( esp_rom_md5_update = 0x4000528c );
|
||||||
PROVIDE ( esp_rom_md5_final = 0x4000530c );
|
PROVIDE ( esp_rom_md5_final = 0x4000530c );
|
||||||
|
|
||||||
|
PROVIDE ( esp_rom_software_reset_system = software_reset );
|
||||||
|
|
||||||
PROVIDE ( esp_rom_printf = ets_printf );
|
PROVIDE ( esp_rom_printf = ets_printf );
|
||||||
PROVIDE ( esp_rom_delay_us = ets_delay_us );
|
PROVIDE ( esp_rom_delay_us = ets_delay_us );
|
||||||
PROVIDE ( esp_rom_install_uart_printf = ets_install_uart_printf );
|
PROVIDE ( esp_rom_install_uart_printf = ets_install_uart_printf );
|
||||||
|
@ -33,6 +33,8 @@ PROVIDE ( esp_rom_md5_init = MD5Init );
|
|||||||
PROVIDE ( esp_rom_md5_update = MD5Update );
|
PROVIDE ( esp_rom_md5_update = MD5Update );
|
||||||
PROVIDE ( esp_rom_md5_final = MD5Final );
|
PROVIDE ( esp_rom_md5_final = MD5Final );
|
||||||
|
|
||||||
|
PROVIDE ( esp_rom_software_reset_system = software_reset );
|
||||||
|
|
||||||
PROVIDE ( esp_rom_printf = ets_printf );
|
PROVIDE ( esp_rom_printf = ets_printf );
|
||||||
PROVIDE ( esp_rom_delay_us = ets_delay_us );
|
PROVIDE ( esp_rom_delay_us = ets_delay_us );
|
||||||
PROVIDE ( esp_rom_install_uart_printf = ets_install_uart_printf );
|
PROVIDE ( esp_rom_install_uart_printf = ets_install_uart_printf );
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* SPDX-FileCopyrightText: 2010-2022 Espressif Systems (Shanghai) CO LTD
|
* SPDX-FileCopyrightText: 2010-2024 Espressif Systems (Shanghai) CO LTD
|
||||||
*
|
*
|
||||||
* SPDX-License-Identifier: Apache-2.0
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
*/
|
*/
|
||||||
@ -13,6 +13,14 @@
|
|||||||
extern "C" {
|
extern "C" {
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Software Reset digital core include RTC.
|
||||||
|
*
|
||||||
|
* It is not recommended to use this function in esp-idf, use
|
||||||
|
* esp_restart() instead.
|
||||||
|
*/
|
||||||
|
void esp_rom_software_reset_system(void);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Print formated string to console device
|
* @brief Print formated string to console device
|
||||||
* @note float and long long data are not supported!
|
* @note float and long long data are not supported!
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* SPDX-FileCopyrightText: 2015-2022 Espressif Systems (Shanghai) CO LTD
|
* SPDX-FileCopyrightText: 2015-2024 Espressif Systems (Shanghai) CO LTD
|
||||||
*
|
*
|
||||||
* SPDX-License-Identifier: Apache-2.0
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
*/
|
*/
|
||||||
@ -20,6 +20,7 @@
|
|||||||
|
|
||||||
#include "soc/rtc_periph.h"
|
#include "soc/rtc_periph.h"
|
||||||
#include "esp_attr.h"
|
#include "esp_attr.h"
|
||||||
|
#include "esp_rom_sys.h"
|
||||||
#include "bootloader_flash.h"
|
#include "bootloader_flash.h"
|
||||||
#include "esp_intr_alloc.h"
|
#include "esp_intr_alloc.h"
|
||||||
|
|
||||||
@ -59,7 +60,10 @@ IRAM_ATTR static void rtc_brownout_isr_handler(void *arg)
|
|||||||
esp_rom_printf("\r\nBrownout detector was triggered\r\n\r\n");
|
esp_rom_printf("\r\nBrownout detector was triggered\r\n\r\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
esp_restart_noos();
|
esp_rom_software_reset_system();
|
||||||
|
while (true) {
|
||||||
|
;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
#endif // CONFIG_ESP_SYSTEM_BROWNOUT_INTR
|
#endif // CONFIG_ESP_SYSTEM_BROWNOUT_INTR
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user