esp_wifi: support station only mode for code size down

This commit is contained in:
Zhang Jun Hao 2021-04-07 15:04:51 +08:00 committed by chenjianxing
parent 8037e2462f
commit a568b4fddf
21 changed files with 179 additions and 167 deletions

View File

@ -1,16 +1,8 @@
// Copyright 2015-2019 Espressif Systems (Shanghai) PTE LTD /*
// * SPDX-FileCopyrightText: 2015-2021 Espressif Systems (Shanghai) CO LTD
// Licensed under the Apache License, Version 2.0 (the "License"); *
// you may not use this file except in compliance with the License. * SPDX-License-Identifier: Apache-2.0
// You may obtain a copy of the License at */
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#include "esp_netif.h" #include "esp_netif.h"
#include "esp_wifi_default.h" #include "esp_wifi_default.h"
@ -31,7 +23,9 @@
// //
const esp_netif_inherent_config_t _g_esp_netif_inherent_sta_config = ESP_NETIF_INHERENT_DEFAULT_WIFI_STA(); const esp_netif_inherent_config_t _g_esp_netif_inherent_sta_config = ESP_NETIF_INHERENT_DEFAULT_WIFI_STA();
#ifdef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
const esp_netif_inherent_config_t _g_esp_netif_inherent_ap_config = ESP_NETIF_INHERENT_DEFAULT_WIFI_AP(); const esp_netif_inherent_config_t _g_esp_netif_inherent_ap_config = ESP_NETIF_INHERENT_DEFAULT_WIFI_AP();
#endif
const esp_netif_inherent_config_t _g_esp_netif_inherent_eth_config = ESP_NETIF_INHERENT_DEFAULT_ETH(); const esp_netif_inherent_config_t _g_esp_netif_inherent_eth_config = ESP_NETIF_INHERENT_DEFAULT_ETH();

View File

@ -1,16 +1,8 @@
// Copyright 2015-2016 Espressif Systems (Shanghai) PTE LTD /*
// * SPDX-FileCopyrightText: 2015-2021 Espressif Systems (Shanghai) CO LTD
// Licensed under the Apache License, Version 2.0 (the "License"); *
// you may not use this file except in compliance with the License. * SPDX-License-Identifier: Apache-2.0
// You may obtain a copy of the License at */
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#ifndef _ESP_NETIF_DEFAULTS_H #ifndef _ESP_NETIF_DEFAULTS_H
#define _ESP_NETIF_DEFAULTS_H #define _ESP_NETIF_DEFAULTS_H
@ -37,6 +29,7 @@ extern "C" {
.route_prio = 100 \ .route_prio = 100 \
} \ } \
#ifdef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
#define ESP_NETIF_INHERENT_DEFAULT_WIFI_AP() \ #define ESP_NETIF_INHERENT_DEFAULT_WIFI_AP() \
{ \ { \
.flags = (esp_netif_flags_t)(ESP_NETIF_DHCP_SERVER | ESP_NETIF_FLAG_AUTOUP), \ .flags = (esp_netif_flags_t)(ESP_NETIF_DHCP_SERVER | ESP_NETIF_FLAG_AUTOUP), \
@ -48,6 +41,7 @@ extern "C" {
.if_desc = "ap", \ .if_desc = "ap", \
.route_prio = 10 \ .route_prio = 10 \
}; };
#endif
#define ESP_NETIF_INHERENT_DEFAULT_ETH() \ #define ESP_NETIF_INHERENT_DEFAULT_ETH() \
{ \ { \
@ -108,6 +102,7 @@ extern "C" {
.stack = ESP_NETIF_NETSTACK_DEFAULT_ETH, \ .stack = ESP_NETIF_NETSTACK_DEFAULT_ETH, \
} }
#ifdef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
/** /**
* @brief Default configuration reference of WIFI AP * @brief Default configuration reference of WIFI AP
*/ */
@ -117,6 +112,7 @@ extern "C" {
.driver = NULL, \ .driver = NULL, \
.stack = ESP_NETIF_NETSTACK_DEFAULT_WIFI_AP, \ .stack = ESP_NETIF_NETSTACK_DEFAULT_WIFI_AP, \
} }
#endif
/** /**
* @brief Default configuration reference of WIFI STA * @brief Default configuration reference of WIFI STA
@ -154,10 +150,12 @@ extern "C" {
*/ */
#define ESP_NETIF_BASE_DEFAULT_WIFI_STA &_g_esp_netif_inherent_sta_config #define ESP_NETIF_BASE_DEFAULT_WIFI_STA &_g_esp_netif_inherent_sta_config
#ifdef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
/** /**
* @brief Default base config (esp-netif inherent) of WIFI AP * @brief Default base config (esp-netif inherent) of WIFI AP
*/ */
#define ESP_NETIF_BASE_DEFAULT_WIFI_AP &_g_esp_netif_inherent_ap_config #define ESP_NETIF_BASE_DEFAULT_WIFI_AP &_g_esp_netif_inherent_ap_config
#endif
/** /**
* @brief Default base config (esp-netif inherent) of ethernet interface * @brief Default base config (esp-netif inherent) of ethernet interface
@ -177,7 +175,9 @@ extern "C" {
#define ESP_NETIF_NETSTACK_DEFAULT_ETH _g_esp_netif_netstack_default_eth #define ESP_NETIF_NETSTACK_DEFAULT_ETH _g_esp_netif_netstack_default_eth
#define ESP_NETIF_NETSTACK_DEFAULT_WIFI_STA _g_esp_netif_netstack_default_wifi_sta #define ESP_NETIF_NETSTACK_DEFAULT_WIFI_STA _g_esp_netif_netstack_default_wifi_sta
#ifdef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
#define ESP_NETIF_NETSTACK_DEFAULT_WIFI_AP _g_esp_netif_netstack_default_wifi_ap #define ESP_NETIF_NETSTACK_DEFAULT_WIFI_AP _g_esp_netif_netstack_default_wifi_ap
#endif
#define ESP_NETIF_NETSTACK_DEFAULT_PPP _g_esp_netif_netstack_default_ppp #define ESP_NETIF_NETSTACK_DEFAULT_PPP _g_esp_netif_netstack_default_ppp
#define ESP_NETIF_NETSTACK_DEFAULT_SLIP _g_esp_netif_netstack_default_slip #define ESP_NETIF_NETSTACK_DEFAULT_SLIP _g_esp_netif_netstack_default_slip
#define ESP_NETIF_NETSTACK_DEFAULT_OPENTHREAD _g_esp_netif_netstack_default_openthread #define ESP_NETIF_NETSTACK_DEFAULT_OPENTHREAD _g_esp_netif_netstack_default_openthread
@ -190,7 +190,9 @@ extern "C" {
// //
extern const esp_netif_netstack_config_t *_g_esp_netif_netstack_default_eth; extern const esp_netif_netstack_config_t *_g_esp_netif_netstack_default_eth;
extern const esp_netif_netstack_config_t *_g_esp_netif_netstack_default_wifi_sta; extern const esp_netif_netstack_config_t *_g_esp_netif_netstack_default_wifi_sta;
#ifdef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
extern const esp_netif_netstack_config_t *_g_esp_netif_netstack_default_wifi_ap; extern const esp_netif_netstack_config_t *_g_esp_netif_netstack_default_wifi_ap;
#endif
extern const esp_netif_netstack_config_t *_g_esp_netif_netstack_default_ppp; extern const esp_netif_netstack_config_t *_g_esp_netif_netstack_default_ppp;
extern const esp_netif_netstack_config_t *_g_esp_netif_netstack_default_slip; extern const esp_netif_netstack_config_t *_g_esp_netif_netstack_default_slip;
@ -200,12 +202,16 @@ extern const esp_netif_netstack_config_t *_g_esp_netif_netstack_default_slip;
// common behavioural patterns for common interfaces such as STA, AP, ETH, PPP // common behavioural patterns for common interfaces such as STA, AP, ETH, PPP
// //
extern const esp_netif_inherent_config_t _g_esp_netif_inherent_sta_config; extern const esp_netif_inherent_config_t _g_esp_netif_inherent_sta_config;
#ifdef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
extern const esp_netif_inherent_config_t _g_esp_netif_inherent_ap_config; extern const esp_netif_inherent_config_t _g_esp_netif_inherent_ap_config;
#endif
extern const esp_netif_inherent_config_t _g_esp_netif_inherent_eth_config; extern const esp_netif_inherent_config_t _g_esp_netif_inherent_eth_config;
extern const esp_netif_inherent_config_t _g_esp_netif_inherent_ppp_config; extern const esp_netif_inherent_config_t _g_esp_netif_inherent_ppp_config;
extern const esp_netif_inherent_config_t _g_esp_netif_inherent_slip_config; extern const esp_netif_inherent_config_t _g_esp_netif_inherent_slip_config;
#ifdef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
extern const esp_netif_ip_info_t _g_esp_netif_soft_ap_ip; extern const esp_netif_ip_info_t _g_esp_netif_soft_ap_ip;
#endif
#if CONFIG_OPENTHREAD_ENABLED #if CONFIG_OPENTHREAD_ENABLED
/** /**

View File

@ -325,4 +325,10 @@ menu "Wi-Fi"
help help
Select this option to enable GMAC support. GMAC support is compulsory for WiFi 192 bit certification. Select this option to enable GMAC support. GMAC support is compulsory for WiFi 192 bit certification.
config ESP_WIFI_SOFTAP_SUPPORT
bool "WiFi SoftAP Support"
default y
help
WiFi module can be compiled without SoftAP to save code size.
endmenu # Wi-Fi endmenu # Wi-Fi

View File

@ -1,16 +1,8 @@
// Copyright 2018 Espressif Systems (Shanghai) PTE LTD /*
// * SPDX-FileCopyrightText: 2018-2021 Espressif Systems (Shanghai) CO LTD
// Licensed under the Apache License, Version 2.0 (the "License"); *
// you may not use this file except in compliance with the License. * SPDX-License-Identifier: Apache-2.0
// You may obtain a copy of the License at */
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#ifndef ESP_WIFI_OS_ADAPTER_H_ #ifndef ESP_WIFI_OS_ADAPTER_H_
#define ESP_WIFI_OS_ADAPTER_H_ #define ESP_WIFI_OS_ADAPTER_H_

View File

@ -1,16 +1,8 @@
// Copyright 2015-2016 Espressif Systems (Shanghai) PTE LTD /*
// * SPDX-FileCopyrightText: 2015-2021 Espressif Systems (Shanghai) CO LTD
// Licensed under the Apache License, Version 2.0 (the "License"); *
// you may not use this file except in compliance with the License. * SPDX-License-Identifier: Apache-2.0
// You may obtain a copy of the License at */
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/* Notes about WiFi Programming /* Notes about WiFi Programming
@ -275,7 +267,7 @@ esp_err_t esp_wifi_deinit(void);
* @brief Set the WiFi operating mode * @brief Set the WiFi operating mode
* *
* Set the WiFi operating mode as station, soft-AP or station+soft-AP, * Set the WiFi operating mode as station, soft-AP or station+soft-AP,
* The default mode is soft-AP mode. * The default mode is station mode.
* *
* @param mode WiFi operating mode * @param mode WiFi operating mode
* *

@ -1 +1 @@
Subproject commit 681c8bfeb739c2fcd579e404b1df8b19acc07497 Subproject commit 1053c13faecea52a57c8e1cee75fc8bae2e8756e

View File

@ -1,16 +1,9 @@
// Copyright 2019 Espressif Systems (Shanghai) PTE LTD /*
// * SPDX-FileCopyrightText: 2019-2021 Espressif Systems (Shanghai) CO LTD
// Licensed under the Apache License, Version 2.0 (the "License"); *
// you may not use this file except in compliance with the License. * SPDX-License-Identifier: Apache-2.0
// You may obtain a copy of the License at */
// #include "sdkconfig.h"
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#include "esp_wifi.h" #include "esp_wifi.h"
#include "esp_netif.h" #include "esp_netif.h"
#include "esp_log.h" #include "esp_log.h"
@ -110,6 +103,7 @@ static void wifi_default_action_sta_disconnected(void *arg, esp_event_base_t bas
} }
} }
#ifdef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
static void wifi_default_action_ap_start(void *arg, esp_event_base_t base, int32_t event_id, void *data) static void wifi_default_action_ap_start(void *arg, esp_event_base_t base, int32_t event_id, void *data)
{ {
if (s_wifi_netifs[WIFI_IF_AP] != NULL) { if (s_wifi_netifs[WIFI_IF_AP] != NULL) {
@ -123,6 +117,7 @@ static void wifi_default_action_ap_stop(void *arg, esp_event_base_t base, int32_
esp_netif_action_stop(s_wifi_netifs[WIFI_IF_AP], base, event_id, data); esp_netif_action_stop(s_wifi_netifs[WIFI_IF_AP], base, event_id, data);
} }
} }
#endif
static void wifi_default_action_sta_got_ip(void *arg, esp_event_base_t base, int32_t event_id, void *data) static void wifi_default_action_sta_got_ip(void *arg, esp_event_base_t base, int32_t event_id, void *data)
{ {
@ -145,8 +140,10 @@ esp_err_t _esp_wifi_clear_default_wifi_handlers(void)
esp_event_handler_unregister(WIFI_EVENT, WIFI_EVENT_STA_STOP, wifi_default_action_sta_stop); esp_event_handler_unregister(WIFI_EVENT, WIFI_EVENT_STA_STOP, wifi_default_action_sta_stop);
esp_event_handler_unregister(WIFI_EVENT, WIFI_EVENT_STA_CONNECTED, wifi_default_action_sta_connected); esp_event_handler_unregister(WIFI_EVENT, WIFI_EVENT_STA_CONNECTED, wifi_default_action_sta_connected);
esp_event_handler_unregister(WIFI_EVENT, WIFI_EVENT_STA_DISCONNECTED, wifi_default_action_sta_disconnected); esp_event_handler_unregister(WIFI_EVENT, WIFI_EVENT_STA_DISCONNECTED, wifi_default_action_sta_disconnected);
#ifdef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
esp_event_handler_unregister(WIFI_EVENT, WIFI_EVENT_AP_START, wifi_default_action_ap_start); esp_event_handler_unregister(WIFI_EVENT, WIFI_EVENT_AP_START, wifi_default_action_ap_start);
esp_event_handler_unregister(WIFI_EVENT, WIFI_EVENT_AP_STOP, wifi_default_action_ap_stop); esp_event_handler_unregister(WIFI_EVENT, WIFI_EVENT_AP_STOP, wifi_default_action_ap_stop);
#endif
esp_event_handler_unregister(IP_EVENT, IP_EVENT_STA_GOT_IP, wifi_default_action_sta_got_ip); esp_event_handler_unregister(IP_EVENT, IP_EVENT_STA_GOT_IP, wifi_default_action_sta_got_ip);
esp_unregister_shutdown_handler((shutdown_handler_t)esp_wifi_stop); esp_unregister_shutdown_handler((shutdown_handler_t)esp_wifi_stop);
wifi_default_handlers_set = false; wifi_default_handlers_set = false;
@ -162,6 +159,7 @@ esp_err_t _esp_wifi_set_default_wifi_handlers(void)
return ESP_OK; return ESP_OK;
} }
esp_err_t err; esp_err_t err;
err = esp_event_handler_register(WIFI_EVENT, WIFI_EVENT_STA_START, wifi_default_action_sta_start, NULL); err = esp_event_handler_register(WIFI_EVENT, WIFI_EVENT_STA_START, wifi_default_action_sta_start, NULL);
if (err != ESP_OK) { if (err != ESP_OK) {
goto fail; goto fail;
@ -182,6 +180,7 @@ esp_err_t _esp_wifi_set_default_wifi_handlers(void)
goto fail; goto fail;
} }
#ifdef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
err = esp_event_handler_register(WIFI_EVENT, WIFI_EVENT_AP_START, wifi_default_action_ap_start, NULL); err = esp_event_handler_register(WIFI_EVENT, WIFI_EVENT_AP_START, wifi_default_action_ap_start, NULL);
if (err != ESP_OK) { if (err != ESP_OK) {
goto fail; goto fail;
@ -191,6 +190,7 @@ esp_err_t _esp_wifi_set_default_wifi_handlers(void)
if (err != ESP_OK) { if (err != ESP_OK) {
goto fail; goto fail;
} }
#endif
err = esp_event_handler_register(IP_EVENT, IP_EVENT_STA_GOT_IP, wifi_default_action_sta_got_ip, NULL); err = esp_event_handler_register(IP_EVENT, IP_EVENT_STA_GOT_IP, wifi_default_action_sta_got_ip, NULL);
if (err != ESP_OK) { if (err != ESP_OK) {
@ -278,7 +278,11 @@ static esp_err_t create_and_attach(wifi_interface_t wifi_if, esp_netif_t* esp_ne
static inline esp_err_t esp_netif_attach_wifi(esp_netif_t *esp_netif, wifi_interface_t wifi_if) static inline esp_err_t esp_netif_attach_wifi(esp_netif_t *esp_netif, wifi_interface_t wifi_if)
{ {
if (esp_netif == NULL || (wifi_if != WIFI_IF_STA && wifi_if != WIFI_IF_AP)) { if (esp_netif == NULL || (wifi_if != WIFI_IF_STA
#ifdef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
&& wifi_if != WIFI_IF_AP
#endif
)) {
return ESP_ERR_INVALID_ARG; return ESP_ERR_INVALID_ARG;
} }
s_wifi_netifs[wifi_if] = esp_netif; s_wifi_netifs[wifi_if] = esp_netif;
@ -290,16 +294,19 @@ esp_err_t esp_netif_attach_wifi_station(esp_netif_t *esp_netif)
return esp_netif_attach_wifi(esp_netif, WIFI_IF_STA); return esp_netif_attach_wifi(esp_netif, WIFI_IF_STA);
} }
#ifdef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
esp_err_t esp_netif_attach_wifi_ap(esp_netif_t *esp_netif) esp_err_t esp_netif_attach_wifi_ap(esp_netif_t *esp_netif)
{ {
return esp_netif_attach_wifi(esp_netif, WIFI_IF_AP); return esp_netif_attach_wifi(esp_netif, WIFI_IF_AP);
} }
#endif
// //
// Default WiFi creation from user code // Default WiFi creation from user code
// //
#ifdef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
/** /**
* @brief User init default AP (official API) * @brief User init default AP (official API)
*/ */
@ -312,6 +319,7 @@ esp_netif_t* esp_netif_create_default_wifi_ap(void)
esp_wifi_set_default_wifi_ap_handlers(); esp_wifi_set_default_wifi_ap_handlers();
return netif; return netif;
} }
#endif
/** /**
* @brief User init default station (official API) * @brief User init default station (official API)
@ -347,9 +355,13 @@ esp_netif_t* esp_netif_create_wifi(wifi_interface_t wifi_if, esp_netif_inherent_
}; };
if (wifi_if == WIFI_IF_STA) { if (wifi_if == WIFI_IF_STA) {
cfg.stack = ESP_NETIF_NETSTACK_DEFAULT_WIFI_STA; cfg.stack = ESP_NETIF_NETSTACK_DEFAULT_WIFI_STA;
} else if (wifi_if == WIFI_IF_AP) { } else
#ifdef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
if (wifi_if == WIFI_IF_AP) {
cfg.stack = ESP_NETIF_NETSTACK_DEFAULT_WIFI_AP; cfg.stack = ESP_NETIF_NETSTACK_DEFAULT_WIFI_AP;
} else { } else
#endif
{
return NULL; return NULL;
} }
@ -359,6 +371,7 @@ esp_netif_t* esp_netif_create_wifi(wifi_interface_t wifi_if, esp_netif_inherent_
return netif; return netif;
} }
#ifdef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
/** /**
* @brief Creates mesh network interfaces based on default STA and AP, * @brief Creates mesh network interfaces based on default STA and AP,
* but without DHCP, this is to be enabled separately only on root node * but without DHCP, this is to be enabled separately only on root node
@ -404,3 +417,4 @@ esp_err_t esp_netif_create_default_wifi_mesh_netifs(esp_netif_t **p_netif_sta, e
} }
return ESP_OK; return ESP_OK;
} }
#endif // CONFIG_ESP_WIFI_SOFTAP_SUPPORT

View File

@ -303,3 +303,9 @@ void ieee80211_ftm_attach(void)
/* Do not remove, stub to overwrite weak link in Wi-Fi Lib */ /* Do not remove, stub to overwrite weak link in Wi-Fi Lib */
} }
#endif #endif
#ifndef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
void net80211_softap_funcs_init(void)
{
}
#endif

View File

@ -1,16 +1,8 @@
// Copyright 2019 Espressif Systems (Shanghai) PTE LTD /*
// * SPDX-FileCopyrightText: 2019-2021 Espressif Systems (Shanghai) CO LTD
// Licensed under the Apache License, Version 2.0 (the "License"); *
// you may not use this file except in compliance with the License. * SPDX-License-Identifier: Apache-2.0
// You may obtain a copy of the License at */
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#include "esp_wifi.h" #include "esp_wifi.h"
#include "esp_netif.h" #include "esp_netif.h"
#include "esp_log.h" #include "esp_log.h"
@ -47,10 +39,12 @@ static esp_err_t wifi_sta_receive(void *buffer, uint16_t len, void *eb)
return s_wifi_rxcbs[WIFI_IF_STA](s_wifi_netifs[WIFI_IF_STA], buffer, len, eb); return s_wifi_rxcbs[WIFI_IF_STA](s_wifi_netifs[WIFI_IF_STA], buffer, len, eb);
} }
#ifdef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
static esp_err_t wifi_ap_receive(void *buffer, uint16_t len, void *eb) static esp_err_t wifi_ap_receive(void *buffer, uint16_t len, void *eb)
{ {
return s_wifi_rxcbs[WIFI_IF_AP](s_wifi_netifs[WIFI_IF_AP], buffer, len, eb); return s_wifi_rxcbs[WIFI_IF_AP](s_wifi_netifs[WIFI_IF_AP], buffer, len, eb);
} }
#endif
static void wifi_free(void *h, void* buffer) static void wifi_free(void *h, void* buffer)
{ {
@ -113,8 +107,12 @@ esp_err_t esp_wifi_get_if_mac(wifi_netif_driver_t ifx, uint8_t mac[6])
bool esp_wifi_is_if_ready_when_started(wifi_netif_driver_t ifx) bool esp_wifi_is_if_ready_when_started(wifi_netif_driver_t ifx)
{ {
#ifdef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
// WiFi rxcb to be register wifi rxcb on start for AP only, station gets it registered on connect event // WiFi rxcb to be register wifi rxcb on start for AP only, station gets it registered on connect event
return (ifx->wifi_if == WIFI_IF_AP); return (ifx->wifi_if == WIFI_IF_AP);
#else
return false;
#endif
} }
esp_err_t esp_wifi_register_if_rxcb(wifi_netif_driver_t ifx, esp_netif_receive_t fn, void * arg) esp_err_t esp_wifi_register_if_rxcb(wifi_netif_driver_t ifx, esp_netif_receive_t fn, void * arg)
@ -130,13 +128,16 @@ esp_err_t esp_wifi_register_if_rxcb(wifi_netif_driver_t ifx, esp_netif_receive_t
switch (wifi_interface) switch (wifi_interface)
{ {
case WIFI_IF_STA: case WIFI_IF_STA:
rxcb = wifi_sta_receive; rxcb = wifi_sta_receive;
break; break;
#ifdef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
case WIFI_IF_AP: case WIFI_IF_AP:
rxcb = wifi_ap_receive; rxcb = wifi_ap_receive;
break; break;
#endif
default: default:
break; break;

View File

@ -1,16 +1,8 @@
// Copyright 2015-2019 Espressif Systems (Shanghai) PTE LTD /*
// * SPDX-FileCopyrightText: 2015-2021 Espressif Systems (Shanghai) CO LTD
// Licensed under the Apache License, Version 2.0 (the "License"); *
// you may not use this file except in compliance with the License. * SPDX-License-Identifier: Apache-2.0
// You may obtain a copy of the License at */
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#include "esp_netif.h" #include "esp_netif.h"
#include "esp_private/wifi.h" #include "esp_private/wifi.h"
@ -51,6 +43,7 @@ static const char* s_netif_keyif[TCPIP_ADAPTER_IF_MAX] = {
static bool s_tcpip_adapter_compat = false; static bool s_tcpip_adapter_compat = false;
#ifdef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
static void wifi_create_and_start_ap(void *esp_netif, esp_event_base_t base, int32_t event_id, void *data) static void wifi_create_and_start_ap(void *esp_netif, esp_event_base_t base, int32_t event_id, void *data)
{ {
if (s_esp_netifs[TCPIP_ADAPTER_IF_AP] == NULL) { if (s_esp_netifs[TCPIP_ADAPTER_IF_AP] == NULL) {
@ -62,6 +55,7 @@ static void wifi_create_and_start_ap(void *esp_netif, esp_event_base_t base, int
s_esp_netifs[TCPIP_ADAPTER_IF_AP] = ap_netif; s_esp_netifs[TCPIP_ADAPTER_IF_AP] = ap_netif;
} }
} }
#endif
static void wifi_create_and_start_sta(void *esp_netif, esp_event_base_t base, int32_t event_id, void *data) static void wifi_create_and_start_sta(void *esp_netif, esp_event_base_t base, int32_t event_id, void *data)
{ {
@ -85,10 +79,13 @@ static inline esp_netif_t * netif_from_if(tcpip_adapter_if_t interface)
if (interface == TCPIP_ADAPTER_IF_STA) { if (interface == TCPIP_ADAPTER_IF_STA) {
wifi_create_and_start_sta(NULL, 0, 0, NULL); wifi_create_and_start_sta(NULL, 0, 0, NULL);
s_esp_netifs[interface] = esp_netif_get_handle_from_ifkey("WIFI_STA_DEF"); s_esp_netifs[interface] = esp_netif_get_handle_from_ifkey("WIFI_STA_DEF");
} else if (interface == TCPIP_ADAPTER_IF_AP) { }
#ifdef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
else if (interface == TCPIP_ADAPTER_IF_AP) {
wifi_create_and_start_ap(NULL, 0, 0, NULL); wifi_create_and_start_ap(NULL, 0, 0, NULL);
s_esp_netifs[interface] = esp_netif_get_handle_from_ifkey("WIFI_AP_DEF"); s_esp_netifs[interface] = esp_netif_get_handle_from_ifkey("WIFI_AP_DEF");
} }
#endif
} }
} }
return s_esp_netifs[interface]; return s_esp_netifs[interface];
@ -147,10 +144,12 @@ esp_err_t tcpip_adapter_sta_input(void *buffer, uint16_t len, void *eb)
return esp_netif_receive(netif_from_if(TCPIP_ADAPTER_IF_STA), buffer, len, eb); return esp_netif_receive(netif_from_if(TCPIP_ADAPTER_IF_STA), buffer, len, eb);
} }
#ifdef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
esp_err_t tcpip_adapter_ap_input(void *buffer, uint16_t len, void *eb) esp_err_t tcpip_adapter_ap_input(void *buffer, uint16_t len, void *eb)
{ {
return esp_netif_receive(netif_from_if(TCPIP_ADAPTER_IF_AP), buffer, len, eb); return esp_netif_receive(netif_from_if(TCPIP_ADAPTER_IF_AP), buffer, len, eb);
} }
#endif
esp_err_t tcpip_adapter_set_default_wifi_handlers(void) esp_err_t tcpip_adapter_set_default_wifi_handlers(void)
{ {
@ -161,10 +160,12 @@ esp_err_t tcpip_adapter_set_default_wifi_handlers(void)
if (err != ESP_OK) { if (err != ESP_OK) {
return err; return err;
} }
#ifdef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
err = esp_event_handler_register(WIFI_EVENT, WIFI_EVENT_AP_START, wifi_create_and_start_ap, NULL); err = esp_event_handler_register(WIFI_EVENT, WIFI_EVENT_AP_START, wifi_create_and_start_ap, NULL);
if (err != ESP_OK) { if (err != ESP_OK) {
return err; return err;
} }
#endif
_esp_wifi_set_default_wifi_handlers(); _esp_wifi_set_default_wifi_handlers();
} }
return ESP_OK; return ESP_OK;
@ -319,11 +320,13 @@ esp_err_t tcpip_adapter_sta_start(uint8_t *mac, tcpip_adapter_ip_info_t *ip_info
mac, ip_info); mac, ip_info);
} }
#ifdef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
esp_err_t tcpip_adapter_ap_start(uint8_t *mac, tcpip_adapter_ip_info_t *ip_info) esp_err_t tcpip_adapter_ap_start(uint8_t *mac, tcpip_adapter_ip_info_t *ip_info)
{ {
return tcpip_adapter_compat_start_netif(netif_from_if(TCPIP_ADAPTER_IF_AP), return tcpip_adapter_compat_start_netif(netif_from_if(TCPIP_ADAPTER_IF_AP),
mac, ip_info); mac, ip_info);
} }
#endif
esp_err_t tcpip_adapter_stop(tcpip_adapter_if_t tcpip_if) esp_err_t tcpip_adapter_stop(tcpip_adapter_if_t tcpip_if)
{ {

View File

@ -2,12 +2,15 @@ set(srcs "src/wifi_config.c"
"src/wifi_scan.c" "src/wifi_scan.c"
"src/manager.c" "src/manager.c"
"src/handlers.c" "src/handlers.c"
"src/scheme_softap.c"
"src/scheme_console.c" "src/scheme_console.c"
"proto-c/wifi_config.pb-c.c" "proto-c/wifi_config.pb-c.c"
"proto-c/wifi_scan.pb-c.c" "proto-c/wifi_scan.pb-c.c"
"proto-c/wifi_constants.pb-c.c") "proto-c/wifi_constants.pb-c.c")
if(CONFIG_ESP_WIFI_SOFTAP_SUPPORT)
list(APPEND srcs "src/scheme_softap.c")
endif()
if(CONFIG_BT_ENABLED) if(CONFIG_BT_ENABLED)
if(CONFIG_BT_BLUEDROID_ENABLED OR CONFIG_BT_NIMBLE_ENABLED) if(CONFIG_BT_BLUEDROID_ENABLED OR CONFIG_BT_NIMBLE_ENABLED)
list(APPEND srcs list(APPEND srcs

View File

@ -7,3 +7,7 @@ ifndef CONFIG_BT_BLUEDROID_ENABLED
COMPONENT_OBJEXCLUDE := src/scheme_ble.o COMPONENT_OBJEXCLUDE := src/scheme_ble.o
endif endif
endif endif
ifeq ($(CONFIG_ESP_WIFI_SOFTAP_SUPPORT), y)
COMPONENT_OBJEXCLUDE += src/scheme_softap.o
endif

View File

@ -1,16 +1,9 @@
// Copyright 2019 Espressif Systems (Shanghai) PTE LTD /*
// * SPDX-FileCopyrightText: 2019-2021 Espressif Systems (Shanghai) CO LTD
// Licensed under the Apache License, Version 2.0 (the "License"); *
// you may not use this file except in compliance with the License. * SPDX-License-Identifier: Apache-2.0
// You may obtain a copy of the License at */
// #include "sdkconfig.h"
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#include <string.h> #include <string.h>
#include <esp_log.h> #include <esp_log.h>

View File

@ -52,13 +52,15 @@ set(srcs "port/os_xtensa.c"
"src/wps/wps_registrar.c" "src/wps/wps_registrar.c"
"src/wps/wps_validate.c") "src/wps/wps_validate.c")
set(esp_srcs "esp_supplicant/src/esp_hostap.c" set(esp_srcs "esp_supplicant/src/esp_wpa2.c"
"esp_supplicant/src/esp_wpa2.c"
"esp_supplicant/src/esp_wpa_main.c" "esp_supplicant/src/esp_wpa_main.c"
"esp_supplicant/src/esp_wpas_glue.c" "esp_supplicant/src/esp_wpas_glue.c"
"esp_supplicant/src/esp_wps.c" "esp_supplicant/src/esp_wps.c"
"esp_supplicant/src/esp_wpa3.c" "esp_supplicant/src/esp_wpa3.c"
"esp_supplicant/src/esp_dpp.c") "esp_supplicant/src/esp_dpp.c")
if(CONFIG_ESP_WIFI_SOFTAP_SUPPORT)
set(esp_srcs ${esp_srcs} "esp_supplicant/src/esp_hostap.c")
endif()
if(CONFIG_WPA_MBEDTLS_CRYPTO) if(CONFIG_WPA_MBEDTLS_CRYPTO)
set(tls_src "src/crypto/tls_mbedtls.c") set(tls_src "src/crypto/tls_mbedtls.c")

View File

@ -4,6 +4,10 @@ COMPONENT_PRIV_INCLUDEDIRS := src src/utils esp_supplicant/src
COMPONENT_SRCDIRS := port src/ap src/common src/crypto src/eap_peer src/rsn_supp src/tls src/utils src/wps esp_supplicant/src COMPONENT_SRCDIRS := port src/ap src/common src/crypto src/eap_peer src/rsn_supp src/tls src/utils src/wps esp_supplicant/src
COMPONENT_ADD_INCLUDEDIRS := include port/include esp_supplicant/include src/utils COMPONENT_ADD_INCLUDEDIRS := include port/include esp_supplicant/include src/utils
ifeq ($(CONFIG_ESP_WIFI_SOFTAP_SUPPORT), y)
COMPONENT_OBJEXCLUDE += src/esp_hostap.o
endif
ifeq ($(CONFIG_WPA_MBEDTLS_CRYPTO), y) ifeq ($(CONFIG_WPA_MBEDTLS_CRYPTO), y)
COMPONENT_OBJEXCLUDE += src/tls/asn1.o \ COMPONENT_OBJEXCLUDE += src/tls/asn1.o \
src/tls/bignum.o \ src/tls/bignum.o \

View File

@ -1,17 +1,10 @@
// Copyright 2019 Espressif Systems (Shanghai) PTE LTD /*
// * SPDX-FileCopyrightText: 2019-2021 Espressif Systems (Shanghai) CO LTD
// Licensed under the Apache License, Version 2.0 (the "License"); *
// you may not use this file except in compliance with the License. * SPDX-License-Identifier: Apache-2.0
// You may obtain a copy of the License at */
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#include "sdkconfig.h"
#include "utils/includes.h" #include "utils/includes.h"
#include "utils/common.h" #include "utils/common.h"

View File

@ -1,21 +1,24 @@
// Copyright 2019 Espressif Systems (Shanghai) PTE LTD /*
// * SPDX-FileCopyrightText: 2019-2021 Espressif Systems (Shanghai) CO LTD
// Licensed under the Apache License, Version 2.0 (the "License"); *
// you may not use this file except in compliance with the License. * SPDX-License-Identifier: Apache-2.0
// You may obtain a copy of the License at */
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#ifndef ESP_HOSTAP_H #ifndef ESP_HOSTAP_H
#define ESP_HOSTAP_H #define ESP_HOSTAP_H
#ifdef __cplusplus
extern "C" {
#endif
#include "sdkconfig.h"
#ifdef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
void *hostap_init(void); void *hostap_init(void);
bool hostap_deinit(void *data); bool hostap_deinit(void *data);
#endif
#ifdef __cplusplus
}
#endif
#endif /* ESP_HOSTAP_H */ #endif /* ESP_HOSTAP_H */

View File

@ -241,7 +241,7 @@ int esp_supplicant_init(void)
int ret = ESP_OK; int ret = ESP_OK;
struct wpa_funcs *wpa_cb; struct wpa_funcs *wpa_cb;
wpa_cb = (struct wpa_funcs *)os_malloc(sizeof(struct wpa_funcs)); wpa_cb = (struct wpa_funcs *)os_zalloc(sizeof(struct wpa_funcs));
if (!wpa_cb) { if (!wpa_cb) {
return ESP_ERR_NO_MEM; return ESP_ERR_NO_MEM;
} }
@ -253,6 +253,7 @@ int esp_supplicant_init(void)
wpa_cb->wpa_sta_disconnected_cb = wpa_sta_disconnected_cb; wpa_cb->wpa_sta_disconnected_cb = wpa_sta_disconnected_cb;
wpa_cb->wpa_sta_in_4way_handshake = wpa_sta_in_4way_handshake; wpa_cb->wpa_sta_in_4way_handshake = wpa_sta_in_4way_handshake;
#ifdef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
wpa_cb->wpa_ap_join = wpa_ap_join; wpa_cb->wpa_ap_join = wpa_ap_join;
wpa_cb->wpa_ap_remove = wpa_ap_remove; wpa_cb->wpa_ap_remove = wpa_ap_remove;
wpa_cb->wpa_ap_get_wpa_ie = wpa_ap_get_wpa_ie; wpa_cb->wpa_ap_get_wpa_ie = wpa_ap_get_wpa_ie;
@ -260,6 +261,7 @@ int esp_supplicant_init(void)
wpa_cb->wpa_ap_get_peer_spp_msg = wpa_ap_get_peer_spp_msg; wpa_cb->wpa_ap_get_peer_spp_msg = wpa_ap_get_peer_spp_msg;
wpa_cb->wpa_ap_init = hostap_init; wpa_cb->wpa_ap_init = hostap_init;
wpa_cb->wpa_ap_deinit = hostap_deinit; wpa_cb->wpa_ap_deinit = hostap_deinit;
#endif
wpa_cb->wpa_config_parse_string = wpa_config_parse_string; wpa_cb->wpa_config_parse_string = wpa_config_parse_string;
wpa_cb->wpa_parse_wpa_ie = wpa_parse_wpa_ie_wrapper; wpa_cb->wpa_parse_wpa_ie = wpa_parse_wpa_ie_wrapper;

View File

@ -1,16 +1,8 @@
// Copyright 2019 Espressif Systems (Shanghai) PTE LTD /*
// * SPDX-FileCopyrightText: 2019-2021 Espressif Systems (Shanghai) CO LTD
// Licensed under the Apache License, Version 2.0 (the "License"); *
// you may not use this file except in compliance with the License. * SPDX-License-Identifier: Apache-2.0
// You may obtain a copy of the License at */
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#include <string.h> #include <string.h>
@ -572,7 +564,11 @@ wps_parse_scan_result(struct wps_scan_ie *scan)
} }
esp_wifi_get_mode(&op_mode); esp_wifi_get_mode(&op_mode);
if ((op_mode == WIFI_MODE_STA || op_mode == WIFI_MODE_APSTA) && scan->wps) { if ((op_mode == WIFI_MODE_STA
#ifdef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
|| op_mode == WIFI_MODE_APSTA
#endif
) && scan->wps) {
struct wpabuf *buf = wpabuf_alloc_copy(scan->wps + 6, scan->wps[1] - 4); struct wpabuf *buf = wpabuf_alloc_copy(scan->wps + 6, scan->wps[1] - 4);
if (wps_is_selected_pbc_registrar(buf, scan->bssid) if (wps_is_selected_pbc_registrar(buf, scan->bssid)
@ -2003,7 +1999,11 @@ int wps_check_wifi_mode(void)
return ESP_FAIL; return ESP_FAIL;
} }
if (mode == WIFI_MODE_AP || mode == WIFI_MODE_NULL || sniffer == true) { if (
#ifdef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
mode == WIFI_MODE_AP ||
#endif
mode == WIFI_MODE_NULL || sniffer == true) {
wpa_printf(MSG_ERROR, "wps check wifi mode: wrong wifi mode=%d sniffer=%d", mode, sniffer); wpa_printf(MSG_ERROR, "wps check wifi mode: wrong wifi mode=%d sniffer=%d", mode, sniffer);
return ESP_ERR_WIFI_MODE; return ESP_ERR_WIFI_MODE;
} }
@ -2180,7 +2180,11 @@ wifi_set_wps_cb(wps_st_cb_t cb)
wifi_mode_t mode; wifi_mode_t mode;
esp_wifi_get_mode(&mode); esp_wifi_get_mode(&mode);
if (mode == WIFI_MODE_AP || mode == WIFI_MODE_NULL) { if (
#ifdef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
mode == WIFI_MODE_AP ||
#endif
mode == WIFI_MODE_NULL) {
return false; return false;
} }

View File

@ -315,6 +315,7 @@ Wi-Fi
@@@@@ @@@@@
- Disabling :ref:`CONFIG_ESP32_WIFI_ENABLE_WPA3_SAE` will save some Wi-Fi binary size if WPA3 support is not needed. (Note that WPA3 is mandatory for new Wi-Fi device certifications.) - Disabling :ref:`CONFIG_ESP32_WIFI_ENABLE_WPA3_SAE` will save some Wi-Fi binary size if WPA3 support is not needed. (Note that WPA3 is mandatory for new Wi-Fi device certifications.)
- Disabling :ref:`CONFIG_ESP_WIFI_SOFTAP_SUPPORT` will save some Wi-Fi binary size if soft-AP support is not needed.
.. only:: esp32 .. only:: esp32

View File

@ -844,11 +844,9 @@ components/esp_local_ctrl/src/esp_local_ctrl_handler.c
components/esp_local_ctrl/src/esp_local_ctrl_priv.h components/esp_local_ctrl/src/esp_local_ctrl_priv.h
components/esp_local_ctrl/src/esp_local_ctrl_transport_ble.c components/esp_local_ctrl/src/esp_local_ctrl_transport_ble.c
components/esp_local_ctrl/src/esp_local_ctrl_transport_httpd.c components/esp_local_ctrl/src/esp_local_ctrl_transport_httpd.c
components/esp_netif/esp_netif_defaults.c
components/esp_netif/esp_netif_handlers.c components/esp_netif/esp_netif_handlers.c
components/esp_netif/esp_netif_objects.c components/esp_netif/esp_netif_objects.c
components/esp_netif/include/esp_netif.h components/esp_netif/include/esp_netif.h
components/esp_netif/include/esp_netif_defaults.h
components/esp_netif/include/esp_netif_net_stack.h components/esp_netif/include/esp_netif_net_stack.h
components/esp_netif/include/esp_netif_ppp.h components/esp_netif/include/esp_netif_ppp.h
components/esp_netif/include/esp_netif_slip.h components/esp_netif/include/esp_netif_slip.h
@ -1179,10 +1177,8 @@ components/esp_wifi/include/esp_mesh_internal.h
components/esp_wifi/include/esp_now.h components/esp_wifi/include/esp_now.h
components/esp_wifi/include/esp_private/esp_wifi_private.h components/esp_wifi/include/esp_private/esp_wifi_private.h
components/esp_wifi/include/esp_private/esp_wifi_types_private.h components/esp_wifi/include/esp_private/esp_wifi_types_private.h
components/esp_wifi/include/esp_private/wifi_os_adapter.h
components/esp_wifi/include/esp_private/wifi_types.h components/esp_wifi/include/esp_private/wifi_types.h
components/esp_wifi/include/esp_smartconfig.h components/esp_wifi/include/esp_smartconfig.h
components/esp_wifi/include/esp_wifi.h
components/esp_wifi/include/esp_wifi_default.h components/esp_wifi/include/esp_wifi_default.h
components/esp_wifi/include/esp_wifi_netif.h components/esp_wifi/include/esp_wifi_netif.h
components/esp_wifi/include/smartconfig_ack.h components/esp_wifi/include/smartconfig_ack.h
@ -1190,8 +1186,6 @@ components/esp_wifi/src/lib_printf.c
components/esp_wifi/src/mesh_event.c components/esp_wifi/src/mesh_event.c
components/esp_wifi/src/smartconfig.c components/esp_wifi/src/smartconfig.c
components/esp_wifi/src/smartconfig_ack.c components/esp_wifi/src/smartconfig_ack.c
components/esp_wifi/src/wifi_default.c
components/esp_wifi/src/wifi_netif.c
components/esp_wifi/test/test_wifi.c components/esp_wifi/test/test_wifi.c
components/esp_wifi/test/test_wifi_init.c components/esp_wifi/test/test_wifi_init.c
components/espcoredump/corefile/__init__.py components/espcoredump/corefile/__init__.py
@ -2659,7 +2653,6 @@ components/tcp_transport/transport_ws.c
components/tcpip_adapter/include/tcpip_adapter.h components/tcpip_adapter/include/tcpip_adapter.h
components/tcpip_adapter/include/tcpip_adapter_compatible/tcpip_adapter_compat.h components/tcpip_adapter/include/tcpip_adapter_compatible/tcpip_adapter_compat.h
components/tcpip_adapter/include/tcpip_adapter_types.h components/tcpip_adapter/include/tcpip_adapter_types.h
components/tcpip_adapter/tcpip_adapter_compat.c
components/tinyusb/additions/include/tinyusb.h components/tinyusb/additions/include/tinyusb.h
components/tinyusb/additions/include/tinyusb_types.h components/tinyusb/additions/include/tinyusb_types.h
components/tinyusb/additions/include/tusb_cdc_acm.h components/tinyusb/additions/include/tusb_cdc_acm.h
@ -2783,7 +2776,6 @@ components/wifi_provisioning/python/wifi_scan_pb2.py
components/wifi_provisioning/src/handlers.c components/wifi_provisioning/src/handlers.c
components/wifi_provisioning/src/manager.c components/wifi_provisioning/src/manager.c
components/wifi_provisioning/src/scheme_console.c components/wifi_provisioning/src/scheme_console.c
components/wifi_provisioning/src/scheme_softap.c
components/wifi_provisioning/src/wifi_config.c components/wifi_provisioning/src/wifi_config.c
components/wifi_provisioning/src/wifi_provisioning_priv.h components/wifi_provisioning/src/wifi_provisioning_priv.h
components/wifi_provisioning/src/wifi_scan.c components/wifi_provisioning/src/wifi_scan.c
@ -2793,15 +2785,12 @@ components/wpa_supplicant/esp_supplicant/include/esp_wpa.h
components/wpa_supplicant/esp_supplicant/include/esp_wps.h components/wpa_supplicant/esp_supplicant/include/esp_wps.h
components/wpa_supplicant/esp_supplicant/src/esp_dpp.c components/wpa_supplicant/esp_supplicant/src/esp_dpp.c
components/wpa_supplicant/esp_supplicant/src/esp_dpp_i.h components/wpa_supplicant/esp_supplicant/src/esp_dpp_i.h
components/wpa_supplicant/esp_supplicant/src/esp_hostap.c
components/wpa_supplicant/esp_supplicant/src/esp_hostap.h
components/wpa_supplicant/esp_supplicant/src/esp_scan_i.h components/wpa_supplicant/esp_supplicant/src/esp_scan_i.h
components/wpa_supplicant/esp_supplicant/src/esp_wpa3.c components/wpa_supplicant/esp_supplicant/src/esp_wpa3.c
components/wpa_supplicant/esp_supplicant/src/esp_wpa3_i.h components/wpa_supplicant/esp_supplicant/src/esp_wpa3_i.h
components/wpa_supplicant/esp_supplicant/src/esp_wpa_err.h components/wpa_supplicant/esp_supplicant/src/esp_wpa_err.h
components/wpa_supplicant/esp_supplicant/src/esp_wpas_glue.c components/wpa_supplicant/esp_supplicant/src/esp_wpas_glue.c
components/wpa_supplicant/esp_supplicant/src/esp_wpas_glue.h components/wpa_supplicant/esp_supplicant/src/esp_wpas_glue.h
components/wpa_supplicant/esp_supplicant/src/esp_wps.c
components/wpa_supplicant/include/utils/wpa_debug.h components/wpa_supplicant/include/utils/wpa_debug.h
components/wpa_supplicant/include/utils/wpabuf.h components/wpa_supplicant/include/utils/wpabuf.h
components/wpa_supplicant/port/include/byteswap.h components/wpa_supplicant/port/include/byteswap.h