kopia lustrzana https://github.com/micropython/micropython
ports/esp32: Print support information on panic.
Signed-off-by: Daniël van de Giessen <daniel@dvdgiessen.nl>
rodzic
d11ca092f7
commit
79b4b3aa2f
|
@ -59,5 +59,8 @@ include($ENV{IDF_PATH}/tools/cmake/project.cmake)
|
|||
# Set the location of the main component for the project (one per target).
|
||||
list(APPEND EXTRA_COMPONENT_DIRS main_${IDF_TARGET})
|
||||
|
||||
# Enable the panic handler wrapper
|
||||
idf_build_set_property(LINK_OPTIONS "-Wl,--wrap=esp_panic_handler" APPEND)
|
||||
|
||||
# Define the project.
|
||||
project(micropython)
|
||||
|
|
|
@ -53,6 +53,7 @@ list(APPEND MICROPY_SOURCE_DRIVERS
|
|||
)
|
||||
|
||||
list(APPEND MICROPY_SOURCE_PORT
|
||||
panichandler.c
|
||||
adc.c
|
||||
main.c
|
||||
ppp_set_auth.c
|
||||
|
|
|
@ -0,0 +1,42 @@
|
|||
#include "genhdr/mpversion.h"
|
||||
#include "py/mpconfig.h"
|
||||
|
||||
#ifdef MICROPY_BUILD_TYPE
|
||||
#define MICROPY_BUILD_TYPE_PAREN " (" MICROPY_BUILD_TYPE ")"
|
||||
#else
|
||||
#define MICROPY_BUILD_TYPE_PAREN
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_ESP_PANIC_HANDLER_IRAM
|
||||
#define MICROPY_WRAP_PANICHANDLER_FUN(f) IRAM_ATTR f
|
||||
#define MICROPY_WRAP_PANICHANDLER_STR(s) DRAM_STR(s)
|
||||
#else
|
||||
#define MICROPY_WRAP_PANICHANDLER_FUN(f) f
|
||||
#define MICROPY_WRAP_PANICHANDLER_STR(s) (s)
|
||||
#endif
|
||||
|
||||
void __real_esp_panic_handler(void *);
|
||||
void esp_panic_handler_reconfigure_wdts(uint32_t timeout_ms);
|
||||
void panic_print_str(const char *str);
|
||||
|
||||
void MICROPY_WRAP_PANICHANDLER_FUN(__wrap_esp_panic_handler)(void *info) {
|
||||
esp_panic_handler_reconfigure_wdts(1000);
|
||||
|
||||
const static char *msg = MICROPY_WRAP_PANICHANDLER_STR(
|
||||
"\r\n"
|
||||
"A fatal error occurred. The crash dump printed below may be used to help\r\n"
|
||||
"determine what caused it. If you are not already running the most recent\r\n"
|
||||
"version of MicroPython, consider upgrading. New versions often fix bugs.\r\n"
|
||||
"\r\n"
|
||||
"To learn more about how to debug and/or report this crash visit the wiki\r\n"
|
||||
"page at: https://github.com/micropython/micropython/wiki/ESP32-debugging\r\n"
|
||||
"\r\n"
|
||||
"MPY version : " MICROPY_GIT_TAG " on " MICROPY_BUILD_DATE MICROPY_BUILD_TYPE_PAREN "\r\n"
|
||||
"IDF version : " IDF_VER "\r\n"
|
||||
"Machine : " MICROPY_HW_BOARD_NAME " with " MICROPY_HW_MCU_NAME "\r\n"
|
||||
"\r\n"
|
||||
);
|
||||
panic_print_str(msg);
|
||||
|
||||
__real_esp_panic_handler(info);
|
||||
}
|
Ładowanie…
Reference in New Issue