diff --git a/components/lwip/Kconfig b/components/lwip/Kconfig index e10947cdbd..1ad7a8b037 100644 --- a/components/lwip/Kconfig +++ b/components/lwip/Kconfig @@ -877,6 +877,13 @@ menu "LWIP" bool "Enable LWIP Debug" default n + config LWIP_DEBUG_ESP_LOG + bool "Route LWIP debugs through ESP_LOG interface" + depends on LWIP_DEBUG + default n + help + Enabling this option routes all enabled LWIP debugs through ESP_LOGD. + config LWIP_NETIF_DEBUG bool "Enable netif debug messages" depends on LWIP_DEBUG diff --git a/components/lwip/port/esp32/include/arch/cc.h b/components/lwip/port/esp32/include/arch/cc.h index 78935f3b5f..b0d6adca09 100644 --- a/components/lwip/port/esp32/include/arch/cc.h +++ b/components/lwip/port/esp32/include/arch/cc.h @@ -74,7 +74,15 @@ typedef int sys_prot_t; #include +#ifdef CONFIG_LWIP_DEBUG_ESP_LOG +// lwip debugs routed to ESP_LOGD +#include "esp_log.h" +#define LWIP_ESP_LOG_FUNC(format, ...) ESP_LOG_LEVEL(ESP_LOG_DEBUG, "lwip", format, ##__VA_ARGS__) +#define LWIP_PLATFORM_DIAG(x) LWIP_ESP_LOG_FUNC x +#else +// lwip debugs routed to printf #define LWIP_PLATFORM_DIAG(x) do {printf x;} while(0) +#endif #ifdef NDEBUG