esp_netif: Enable use of the ESP-IDF with a non-LWIP (and non-BSD-style) IP stack.

Note: besides the esp-netif component, this commit also disables
net_sockets.c from mbedtls, which is one of the base components and uses BSD API (not specifically lwIP). This might be refactored to use CONFIG_SUPPORT_BSD_API instead of CONFIG_ESP_NETIF_TCPIP_LWIP
in the future.
It also disables smartconfig_ack.c and wifi_init.c from esp_wifi
component for referencing some lwIP config options (smartconfig_ack.c changes might be also
updated to check CONFIG_SUPPORT_BSD_API)

Merges https://github.com/espressif/esp-idf/pull/5856
This commit is contained in:
cnlohr
2020-09-18 15:10:55 +02:00
committed by David Cermak
parent 65c94dfb4c
commit 507c08251e
9 changed files with 50 additions and 7 deletions
+8 -2
View File
@@ -17,14 +17,17 @@
* it will use UDP to send 'ACK' to cellphone.
*/
#include <string.h>
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "lwip/sockets.h"
#include "esp_netif.h"
#include "esp_log.h"
#include "esp_wifi.h"
#include "esp_event.h"
#if CONFIG_ESP_NETIF_TCPIP_LWIP
#include <string.h>
#include "lwip/sockets.h"
#include "esp_smartconfig.h"
#include "smartconfig_ack.h"
@@ -208,3 +211,6 @@ void sc_send_ack_stop(void)
{
s_sc_ack_send = false;
}
#endif
+7
View File
@@ -149,6 +149,8 @@ static void esp_wifi_config_info(void)
#ifdef CONFIG_ESP32_WIFI_RX_BA_WIN
ESP_LOGI(TAG, "rx ba win: %d", CONFIG_ESP32_WIFI_RX_BA_WIN);
#endif
#ifdef CONFIG_ESP_NETIF_TCPIP_LWIP
ESP_LOGI(TAG, "tcpip mbox: %d", CONFIG_LWIP_TCPIP_RECVMBOX_SIZE);
ESP_LOGI(TAG, "udp mbox: %d", CONFIG_LWIP_UDP_RECVMBOX_SIZE);
ESP_LOGI(TAG, "tcp mbox: %d", CONFIG_LWIP_TCP_RECVMBOX_SIZE);
@@ -171,6 +173,10 @@ static void esp_wifi_config_info(void)
#ifdef CONFIG_LWIP_IRAM_OPTIMIZATION
ESP_LOGI(TAG, "LWIP IRAM OP enabled");
#endif
#else
ESP_LOGI(TAG, "LWIP disabled");
#endif
}
esp_err_t esp_wifi_init(const wifi_init_config_t *config)
@@ -241,3 +247,4 @@ void wifi_apb80m_release(void)
esp_pm_lock_release(s_wifi_modem_sleep_lock);
}
#endif //CONFIG_PM_ENABLE