11/*
2- * SPDX-FileCopyrightText: 2022-2023 Espressif Systems (Shanghai) CO LTD
2+ * SPDX-FileCopyrightText: 2022-2025 Espressif Systems (Shanghai) CO LTD
33 *
44 * SPDX-License-Identifier: Apache-2.0
55 */
@@ -97,11 +97,14 @@ static void port_action_start(void *handler_args, esp_event_base_t base, int32_t
9797{
9898 esp_netif_br_glue_t * netif_glue = handler_args ;
9999
100+ #if CONFIG_ESP_WIFI_ENABLED
100101 if (base == WIFI_EVENT ) {
101102 ESP_LOGD (TAG , "wifi_action_start: %p, %p, %" PRId32 ", %p" , netif_glue , base , event_id , event_data );
102103 start_br_if_stopped (netif_glue );
103104 esp_netif_bridge_add_port (netif_glue -> base .netif , netif_glue -> wifi_esp_netif );
104- } else if (base == ETH_EVENT ) {
105+ } else
106+ #endif /* CONFIG_ESP_WIFI_ENABLED */
107+ if (base == ETH_EVENT ) {
105108 esp_eth_handle_t eth_handle = * (esp_eth_handle_t * )event_data ;
106109 ESP_LOGD (TAG , "eth_action_start: %p, %p, %" PRId32 ", %p, %p" , netif_glue , base , event_id , event_data , * (esp_eth_handle_t * )event_data );
107110 for (int i = 0 ; i < netif_glue -> port_cnt ; i ++ ) {
@@ -119,10 +122,13 @@ static void port_action_stop(void *handler_args, esp_event_base_t base, int32_t
119122
120123 // if one of the bridge's ports is stopped, we need to stop the bridge too, since port's lwip_netif is removed and so it would become
121124 // an invalid reference in the bridge's internal structure (there is no way how to remove single port from bridge in current LwIP)
125+ #if CONFIG_ESP_WIFI_ENABLED
122126 if (base == WIFI_EVENT ) {
123127 ESP_LOGD (TAG , "wifi_action_stop: %p, %p, %" PRId32 ", %p" , netif_glue , base , event_id , event_data );
124128 stop_br_if_started (netif_glue );
125- } else if (base == ETH_EVENT ) {
129+ } else
130+ #endif /* CONFIG_ESP_WIFI_ENABLED */
131+ if (base == ETH_EVENT ) {
126132 esp_eth_handle_t eth_handle = * (esp_eth_handle_t * )event_data ;
127133 ESP_LOGD (TAG , "eth_action_stop: %p, %p, %" PRId32 ", %p, %p" , netif_glue , base , event_id , event_data , * (esp_eth_handle_t * )event_data );
128134 for (int i = 0 ; i < netif_glue -> port_cnt ; i ++ ) {
@@ -142,11 +148,13 @@ static void port_action_connected(void *handler_args, esp_event_base_t base, int
142148 ESP_LOGD (TAG , "action_connected, no action bridge is up" );
143149 return ;
144150 }
145-
151+ #if CONFIG_ESP_WIFI_ENABLED
146152 if (base == WIFI_EVENT ) {
147153 ESP_LOGD (TAG , "wifi_action_connected: %p, %p, %" PRId32 ", %p" , netif_glue , base , event_id , event_data );
148154 esp_netif_action_connected (netif_glue -> base .netif , 0 , 0 , NULL );
149- } else if (base == ETH_EVENT ) {
155+ } else
156+ #endif /* CONFIG_ESP_WIFI_ENABLED */
157+ if (base == ETH_EVENT ) {
150158 esp_eth_handle_t eth_handle = * (esp_eth_handle_t * )event_data ;
151159 ESP_LOGD (TAG , "eth_action_connected: %p, %p, %" PRId32 ", %p, %p" , netif_glue , base , event_id , event_data , * (esp_eth_handle_t * )event_data );
152160 for (int i = 0 ; i < netif_glue -> port_cnt ; i ++ ) {
@@ -253,6 +261,7 @@ static esp_err_t esp_netif_br_glue_set_instance_handlers(esp_netif_br_glue_handl
253261 return ret ;
254262}
255263
264+ #if CONFIG_ESP_WIFI_ENABLED
256265static esp_err_t esp_netif_br_glue_clear_instance_handlers_wifi (esp_netif_br_glue_handle_t esp_netif_br_glue )
257266{
258267 ESP_RETURN_ON_FALSE (esp_netif_br_glue , ESP_ERR_INVALID_ARG , TAG , "esp_netif_br_glue handle can't be null" );
@@ -313,6 +322,7 @@ static esp_err_t esp_netif_br_glue_set_instance_handlers_wifi(esp_netif_br_glue_
313322 esp_netif_br_glue_clear_instance_handlers_wifi (esp_netif_br_glue );
314323 return ret ;
315324}
325+ #endif /* CONFIG_ESP_WIFI_ENABLED */
316326
317327esp_err_t esp_netif_br_glue_add_port (esp_netif_br_glue_handle_t netif_br_glue , esp_netif_t * esp_netif_port )
318328{
@@ -334,6 +344,7 @@ esp_err_t esp_netif_br_glue_add_port(esp_netif_br_glue_handle_t netif_br_glue, e
334344
335345esp_err_t esp_netif_br_glue_add_wifi_port (esp_netif_br_glue_handle_t netif_br_glue , esp_netif_t * esp_netif_port )
336346{
347+ #if CONFIG_ESP_WIFI_ENABLED
337348 esp_err_t ret = ESP_OK ;
338349 ESP_GOTO_ON_FALSE (netif_br_glue -> wifi_esp_netif == NULL , ESP_ERR_INVALID_STATE , fail_ret , TAG , "WiFi interface already registered" );
339350 const char * if_desc = esp_netif_get_desc (esp_netif_port );
@@ -348,6 +359,9 @@ esp_err_t esp_netif_br_glue_add_wifi_port(esp_netif_br_glue_handle_t netif_br_gl
348359 netif_br_glue -> wifi_ctx_handlers = NULL ;
349360fail_ret :
350361 return ret ;
362+ #else
363+ return ESP_ERR_NOT_SUPPORTED ;
364+ #endif /* CONFIG_ESP_WIFI_ENABLED */
351365}
352366
353367esp_netif_br_glue_handle_t esp_netif_br_glue_new (void )
@@ -372,9 +386,11 @@ esp_err_t esp_netif_br_glue_del(esp_netif_br_glue_handle_t netif_br_glue)
372386{
373387 stop_br_if_started (netif_br_glue );
374388 esp_netif_br_glue_clear_instance_handlers (netif_br_glue );
389+ #if CONFIG_ESP_WIFI_ENABLED
375390 if (netif_br_glue -> wifi_esp_netif != NULL ) {
376391 esp_netif_br_glue_clear_instance_handlers_wifi (netif_br_glue );
377392 }
393+ #endif /* CONFIG_ESP_WIFI_ENABLED */
378394 free (netif_br_glue -> ports_esp_netifs );
379395 free (netif_br_glue );
380396 netif_br_glue = NULL ;
0 commit comments