diff --git a/components/espcoredump/Kconfig b/components/espcoredump/Kconfig index 623fc059ac..88fe1db45b 100644 --- a/components/espcoredump/Kconfig +++ b/components/espcoredump/Kconfig @@ -63,6 +63,14 @@ menu "Core dump" help Enables/disable core dump module. + config ESP_COREDUMP_LOGS + bool "Enable coredump logs for debugging" + depends on ESP_COREDUMP_ENABLE + default y + help + Enable/disable coredump logs. Logs strings from espcoredump component are + placed in DRAM. Disabling these helps to save ~5KB of internal memory. + config ESP_COREDUMP_MAX_TASKS_NUM int "Maximum number of tasks" depends on ESP_COREDUMP_ENABLE diff --git a/components/espcoredump/include_core_dump/esp_core_dump_types.h b/components/espcoredump/include_core_dump/esp_core_dump_types.h index 94949467dc..869e47c5ea 100644 --- a/components/espcoredump/include_core_dump/esp_core_dump_types.h +++ b/components/espcoredump/include_core_dump/esp_core_dump_types.h @@ -1,5 +1,5 @@ /* - * SPDX-FileCopyrightText: 2015-2022 Espressif Systems (Shanghai) CO LTD + * SPDX-FileCopyrightText: 2015-2023 Espressif Systems (Shanghai) CO LTD * * SPDX-License-Identifier: Apache-2.0 */ @@ -18,7 +18,12 @@ extern "C" { #include "esp_private/panic_internal.h" #include "core_dump_checksum.h" +#if CONFIG_ESP_COREDUMP_LOGS #define ESP_COREDUMP_LOG( level, format, ... ) if (LOG_LOCAL_LEVEL >= level) { esp_rom_printf(DRAM_STR(format), esp_log_early_timestamp(), (const char *)TAG, ##__VA_ARGS__); } +#else +#define ESP_COREDUMP_LOG( level, format, ... ) // dummy define doing nothing +#endif + #define ESP_COREDUMP_LOGE( format, ... ) ESP_COREDUMP_LOG(ESP_LOG_ERROR, LOG_FORMAT(E, format), ##__VA_ARGS__) #define ESP_COREDUMP_LOGW( format, ... ) ESP_COREDUMP_LOG(ESP_LOG_WARN, LOG_FORMAT(W, format), ##__VA_ARGS__) #define ESP_COREDUMP_LOGI( format, ... ) ESP_COREDUMP_LOG(ESP_LOG_INFO, LOG_FORMAT(I, format), ##__VA_ARGS__)