diff --git a/cpu/esp32/Makefile.include b/cpu/esp32/Makefile.include index 91c3b44ad1..bef6be9770 100644 --- a/cpu/esp32/Makefile.include +++ b/cpu/esp32/Makefile.include @@ -129,6 +129,12 @@ ifneq (,$(filter esp_wifi_any esp_eth,$(USEMODULE))) CFLAGS += -DSCHED_PRIO_LEVELS=32 endif +ifneq (,$(filter lwip,$(USEMODULE))) + # The thread for handling the WiFi hardware has the priority. The priority + # of the lwIP TCP/IP thread should be lower than this priority. + CFLAGS += -DTCPIP_THREAD_PRIO=2 +endif + CFLAGS += -DSDK_NOT_USED -DCONFIG_FREERTOS_UNICORE=1 -DESP_PLATFORM CFLAGS += -DLOG_TAG_IN_BRACKETS CFLAGS += -Wno-unused-parameter -Wformat=0 diff --git a/pkg/lwip/include/lwipopts.h b/pkg/lwip/include/lwipopts.h index abfd68a03b..7b42705f9d 100644 --- a/pkg/lwip/include/lwipopts.h +++ b/pkg/lwip/include/lwipopts.h @@ -141,15 +141,8 @@ extern "C" { #define MEMP_MEM_MALLOC (1) #define NETIF_MAX_HWADDR_LEN (GNRC_NETIF_HDR_L2ADDR_MAX_LEN) +#ifndef TCPIP_THREAD_STACKSIZE #define TCPIP_THREAD_STACKSIZE (THREAD_STACKSIZE_DEFAULT) - -#if defined(CPU_ESP32) && !defined(DOXYGEN) -/** - * In ESP32, the thread that is dealing with hardware interrupts of the WiFi - * interface has a priority of 1. This thread should have a higher priority - * than lwIP's TCP/IP thread. - */ -#define TCPIP_THREAD_PRIO (2) #endif #define MEM_ALIGNMENT (4)