From 6501eff7f5f9720fef511710bc130725b6206f52 Mon Sep 17 00:00:00 2001 From: Sagar Bijwe Date: Thu, 2 Dec 2021 15:49:28 +0530 Subject: [PATCH] Remove legacy system event framework. --- components/esp_eth/test/test_emac.c | 6 + components/esp_event/CMakeLists.txt | 1 - components/esp_event/default_event_loop.c | 7 - components/esp_event/event_loop_legacy.c | 100 ------ components/esp_event/event_send.c | 190 ----------- components/esp_event/event_send_compat.inc | 317 ------------------ components/esp_event/include/esp_event.h | 4 - .../esp_event/include/esp_event_legacy.h | 253 -------------- components/esp_netif/esp_netif_handlers.c | 22 +- components/esp_netif/lwip/esp_netif_lwip.c | 12 +- .../esp_netif/lwip/esp_netif_lwip_ppp.c | 20 +- components/esp_wifi/include/esp_wifi.h | 4 +- .../esp_wifi/include/esp_wifi_default.h | 20 +- components/esp_wifi/lib | 2 +- components/mqtt/test/test_mqtt_connection.c | 1 + .../include/wifi_provisioning/manager.h | 38 +-- components/wifi_provisioning/src/manager.c | 8 - .../esp_supplicant/src/esp_wps.c | 16 +- docs/doxygen/Doxyfile | 1 - docs/en/api-reference/system/esp_event.rst | 2 - .../api-reference/system/esp_event_legacy.rst | 7 - .../api-reference/system/esp_event_legacy.rst | 1 - .../network/network_tests/main/net_suite.c | 6 + tools/ci/check_copyright_ignore.txt | 7 - 24 files changed, 55 insertions(+), 990 deletions(-) delete mode 100644 components/esp_event/event_loop_legacy.c delete mode 100644 components/esp_event/event_send.c delete mode 100644 components/esp_event/event_send_compat.inc delete mode 100644 components/esp_event/include/esp_event_legacy.h delete mode 100644 docs/en/api-reference/system/esp_event_legacy.rst delete mode 100644 docs/zh_CN/api-reference/system/esp_event_legacy.rst diff --git a/components/esp_eth/test/test_emac.c b/components/esp_eth/test/test_emac.c index 5fc632f67e..72364fb0ae 100644 --- a/components/esp_eth/test/test_emac.c +++ b/components/esp_eth/test/test_emac.c @@ -1,3 +1,8 @@ +/* + * SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD + * + * SPDX-License-Identifier: Unlicense OR CC0-1.0 + */ #include #include #include "freertos/FreeRTOS.h" @@ -6,6 +11,7 @@ #include "unity.h" #include "test_utils.h" #include "esp_event.h" +#include "esp_netif.h" #include "esp_eth.h" #include "esp_log.h" #include "esp_http_client.h" diff --git a/components/esp_event/CMakeLists.txt b/components/esp_event/CMakeLists.txt index c8cb9f92a6..eb934b102f 100644 --- a/components/esp_event/CMakeLists.txt +++ b/components/esp_event/CMakeLists.txt @@ -12,7 +12,6 @@ if(${target} STREQUAL "linux") list(APPEND priv_include_dirs "$ENV{IDF_PATH}/tools/mocks/esp_system/include") else() list(APPEND requires "esp_netif") - list(APPEND srcs "event_loop_legacy.c" "event_send.c") if(${target} STREQUAL "esp32") list(APPEND priv_requires esp_eth esp_timer) else() diff --git a/components/esp_event/default_event_loop.c b/components/esp_event/default_event_loop.c index b8943a2214..af07a57473 100644 --- a/components/esp_event/default_event_loop.c +++ b/components/esp_event/default_event_loop.c @@ -133,10 +133,3 @@ esp_err_t esp_event_loop_delete_default(void) return ESP_OK; } - -#if !CONFIG_IDF_TARGET_LINUX -/* Include the code to forward legacy system_event_t events to the this default - * event loop. - */ -#include "event_send_compat.inc" -#endif diff --git a/components/esp_event/event_loop_legacy.c b/components/esp_event/event_loop_legacy.c deleted file mode 100644 index be495cb3af..0000000000 --- a/components/esp_event/event_loop_legacy.c +++ /dev/null @@ -1,100 +0,0 @@ -// Copyright 2015-2018 Espressif Systems (Shanghai) PTE LTD -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// 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_err.h" -#include "esp_log.h" -#include "esp_event.h" -#include "esp_event_legacy.h" - -#include "sdkconfig.h" - -static const char* TAG = "event"; - -static system_event_cb_t s_event_handler_cb; -static void *s_event_ctx; -static bool s_initialized; - -ESP_EVENT_DEFINE_BASE(SYSTEM_EVENT); - -static void esp_event_post_to_user(void* arg, esp_event_base_t base, int32_t id, void* data) -{ - if (s_event_handler_cb) { - system_event_t* event = (system_event_t*) data; - (*s_event_handler_cb)(s_event_ctx, event); - } -} - -system_event_cb_t esp_event_loop_set_cb(system_event_cb_t cb, void *ctx) -{ - system_event_cb_t old_cb = s_event_handler_cb; - s_event_handler_cb = cb; - s_event_ctx = ctx; - return old_cb; -} - -esp_err_t esp_event_send_legacy(system_event_t *event) -{ - if (!s_initialized) { - ESP_LOGE(TAG, "system event loop not initialized via esp_event_loop_init"); - return ESP_ERR_INVALID_STATE; - } - - return esp_event_post(SYSTEM_EVENT, event->event_id, event, sizeof(*event), portMAX_DELAY); -} - -esp_err_t esp_event_loop_init(system_event_cb_t cb, void *ctx) -{ - if (s_initialized) { - ESP_LOGE(TAG, "system event loop already initialized"); - return ESP_ERR_INVALID_STATE; - } - - esp_err_t err = esp_event_loop_create_default(); - if (err != ESP_OK && err != ESP_ERR_INVALID_STATE) { - return err; - } - - err = esp_event_handler_register(SYSTEM_EVENT, ESP_EVENT_ANY_ID, esp_event_post_to_user, NULL); - if (err != ESP_OK) { - return err; - } - - s_initialized = true; - s_event_handler_cb = cb; - s_event_ctx = ctx; - return ESP_OK; -} - -esp_err_t esp_event_loop_deinit(void) -{ - if (!s_initialized) { - ESP_LOGE(TAG, "system event loop not initialized"); - return ESP_ERR_INVALID_STATE; - } - - esp_err_t err = esp_event_handler_unregister(SYSTEM_EVENT, ESP_EVENT_ANY_ID, esp_event_post_to_user); - if (err != ESP_OK) { - return err; - } - - err = esp_event_loop_delete_default(); - if (err != ESP_OK && err != ESP_ERR_INVALID_STATE) { - return err; - } - - s_initialized = false; - s_event_handler_cb = NULL; - s_event_ctx = NULL; - return ESP_OK; -} diff --git a/components/esp_event/event_send.c b/components/esp_event/event_send.c deleted file mode 100644 index 17b7ed5e66..0000000000 --- a/components/esp_event/event_send.c +++ /dev/null @@ -1,190 +0,0 @@ -// Copyright 2018 Espressif Systems (Shanghai) PTE LTD -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// 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 -#include "esp_log.h" -#include "esp_event.h" -#include "esp_event_legacy.h" - -#define TAG "event_send" - -esp_err_t esp_event_send_noop(system_event_t *event); -extern esp_err_t esp_event_send_legacy(system_event_t *event) __attribute__((weak, alias("esp_event_send_noop"))); -extern esp_err_t esp_event_send_to_default_loop(system_event_t *event) __attribute((weak, alias("esp_event_send_noop"))); - -esp_err_t esp_event_send_noop(system_event_t *event) -{ - return ESP_OK; -} - -#if CONFIG_ESP32_WIFI_ENABLED -static system_event_id_t esp_event_legacy_wifi_event_id(int32_t event_id) -{ - switch (event_id) { - case WIFI_EVENT_WIFI_READY: - return SYSTEM_EVENT_WIFI_READY; - - case WIFI_EVENT_SCAN_DONE: - return SYSTEM_EVENT_SCAN_DONE; - - case WIFI_EVENT_STA_START: - return SYSTEM_EVENT_STA_START; - - case WIFI_EVENT_STA_STOP: - return SYSTEM_EVENT_STA_STOP; - - case WIFI_EVENT_STA_CONNECTED: - return SYSTEM_EVENT_STA_CONNECTED; - - case WIFI_EVENT_STA_DISCONNECTED: - return SYSTEM_EVENT_STA_DISCONNECTED; - - case WIFI_EVENT_STA_AUTHMODE_CHANGE: - return SYSTEM_EVENT_STA_AUTHMODE_CHANGE; - - case WIFI_EVENT_STA_BSS_RSSI_LOW: - return SYSTEM_EVENT_STA_BSS_RSSI_LOW; - - case WIFI_EVENT_STA_WPS_ER_SUCCESS: - return SYSTEM_EVENT_STA_WPS_ER_SUCCESS; - - case WIFI_EVENT_STA_WPS_ER_FAILED: - return SYSTEM_EVENT_STA_WPS_ER_FAILED; - - case WIFI_EVENT_STA_WPS_ER_TIMEOUT: - return SYSTEM_EVENT_STA_WPS_ER_TIMEOUT; - - case WIFI_EVENT_STA_WPS_ER_PIN: - return SYSTEM_EVENT_STA_WPS_ER_PIN; - - case WIFI_EVENT_STA_WPS_ER_PBC_OVERLAP: - return SYSTEM_EVENT_STA_WPS_ER_PBC_OVERLAP; - - case WIFI_EVENT_AP_START: - return SYSTEM_EVENT_AP_START; - - case WIFI_EVENT_AP_STOP: - return SYSTEM_EVENT_AP_STOP; - - case WIFI_EVENT_AP_STACONNECTED: - return SYSTEM_EVENT_AP_STACONNECTED; - - case WIFI_EVENT_AP_STADISCONNECTED: - return SYSTEM_EVENT_AP_STADISCONNECTED; - - case WIFI_EVENT_AP_PROBEREQRECVED: - return SYSTEM_EVENT_AP_PROBEREQRECVED; - - case WIFI_EVENT_ACTION_TX_STATUS: - return SYSTEM_EVENT_ACTION_TX_STATUS; - - case WIFI_EVENT_ROC_DONE: - return SYSTEM_EVENT_ROC_DONE; - - case WIFI_EVENT_FTM_REPORT: - return SYSTEM_EVENT_FTM_REPORT; - - case WIFI_EVENT_STA_BEACON_TIMEOUT: - return SYSTEM_EVENT_STA_BEACON_TIMEOUT; - - default: - ESP_LOGE(TAG, "invalid wifi event id %d", event_id); - return SYSTEM_EVENT_MAX; - } -} -#endif // CONFIG_ESP32_WIFI_ENABLED - -static system_event_id_t esp_event_legacy_ip_event_id(int32_t event_id) -{ - switch (event_id) { - case IP_EVENT_STA_GOT_IP: - return SYSTEM_EVENT_STA_GOT_IP; - - case IP_EVENT_STA_LOST_IP: - return SYSTEM_EVENT_STA_LOST_IP; - - case IP_EVENT_AP_STAIPASSIGNED: - return SYSTEM_EVENT_AP_STAIPASSIGNED; - - case IP_EVENT_GOT_IP6: - return SYSTEM_EVENT_GOT_IP6; - - case IP_EVENT_ETH_GOT_IP: - return SYSTEM_EVENT_ETH_GOT_IP; - - case IP_EVENT_ETH_LOST_IP: - return SYSTEM_EVENT_ETH_LOST_IP; - - default: - ESP_LOGE(TAG, "invalid ip event id %d", event_id); - return SYSTEM_EVENT_MAX; - } -} - - -static system_event_id_t esp_event_legacy_event_id(esp_event_base_t event_base, int32_t event_id) -{ -#if CONFIG_ESP32_WIFI_ENABLED - if (event_base == WIFI_EVENT) { - return esp_event_legacy_wifi_event_id(event_id); - } -#endif - - if (event_base == IP_EVENT) { - return esp_event_legacy_ip_event_id(event_id); - } else { - ESP_LOGE(TAG, "invalid event base %s", event_base); - return SYSTEM_EVENT_MAX; - } -} - -esp_err_t esp_event_send(system_event_t *event) -{ - // send the event to the new style event loop - esp_err_t err = esp_event_send_to_default_loop(event); - if (err != ESP_OK) { - return err; - } - - // send the event to the legacy event loop - err = esp_event_send_legacy(event); - if (err != ESP_OK) { - return err; - } - - return ESP_OK; -} - -esp_err_t esp_event_send_internal(esp_event_base_t event_base, - int32_t event_id, - void* event_data, - size_t event_data_size, - TickType_t ticks_to_wait) -{ - system_event_t event; - - // send the event to the new style event loop - esp_err_t err = esp_event_post(event_base, event_id, event_data, event_data_size, ticks_to_wait); - if (err != ESP_OK) { - return err; - } - - event.event_id = esp_event_legacy_event_id(event_base, event_id); - - if (event_data) { - memcpy(&event.event_info, event_data, event_data_size); - } - - return esp_event_send_legacy(&event); -} diff --git a/components/esp_event/event_send_compat.inc b/components/esp_event/event_send_compat.inc deleted file mode 100644 index e0c37d0b5e..0000000000 --- a/components/esp_event/event_send_compat.inc +++ /dev/null @@ -1,317 +0,0 @@ -// Copyright 2018 Espressif Systems (Shanghai) PTE LTD -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// 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_event.h" -#include "esp_log.h" -#include "esp_event_legacy.h" -#include "esp_wifi_types.h" -#include "esp_netif.h" -#include "esp_mac.h" -#if CONFIG_ETH_ENABLED -#include "esp_eth.h" -#endif - -/** - * The purpose of this file is to provide an "esp_event_send_to_default_loop" - * function, which is used to forward legacy events (system_event_t) sent using - * esp_event_send, to the new default event loop (esp_event_post). - * - * For each of the events in system_event_id_t, we extract the event data from - * the corresponding system_event_info_t member, and forward that to - * esp_event_post function. - * - * Some macros are used to reduce the amount of boilerplate. - * - * Note that this function only needs to be included into the output file if - * the new default event loop is used. This function is in a separate file for - * readability reasons. In order to be linked if the contents of - * default_event_loop.c is linked, this file is #include-ed into default_event_loop.c. - */ - -#if LOG_LOCAL_LEVEL >= 4 /* ESP_LOG_DEBUG */ -#define WITH_EVENT_DEBUG -#endif - -#ifdef WITH_EVENT_DEBUG -static void esp_system_event_debug(const system_event_t* event); -#endif - -#define HANDLE_SYS_EVENT(base_, name_) \ - case SYSTEM_EVENT_ ## name_: \ - return esp_event_post(base_ ## _EVENT, base_ ## _EVENT_ ## name_, \ - NULL, 0, send_timeout) - -#define HANDLE_SYS_EVENT_ARG(base_, name_, member_) \ - case SYSTEM_EVENT_ ## name_: \ - return esp_event_post(base_ ## _EVENT, base_ ## _EVENT_ ## name_, \ - &event->event_info.member_, sizeof(event->event_info.member_), \ - send_timeout) - -esp_err_t esp_event_send_to_default_loop(system_event_t *event) -{ -#ifdef WITH_EVENT_DEBUG - esp_system_event_debug(event); -#endif // WITH_EVENT_DEBUG - - const TickType_t send_timeout = 0; - switch (event->event_id) { - /* Wi-Fi common events */ - HANDLE_SYS_EVENT(WIFI, WIFI_READY); - HANDLE_SYS_EVENT_ARG(WIFI, SCAN_DONE, scan_done); - HANDLE_SYS_EVENT(WIFI, STA_START); - HANDLE_SYS_EVENT(WIFI, STA_STOP); - HANDLE_SYS_EVENT_ARG(WIFI, FTM_REPORT, ftm_report); - - /* STA events */ - HANDLE_SYS_EVENT_ARG(WIFI, STA_CONNECTED, connected); - HANDLE_SYS_EVENT_ARG(WIFI, STA_DISCONNECTED, disconnected); - HANDLE_SYS_EVENT_ARG(WIFI, STA_AUTHMODE_CHANGE, auth_change); - - /* WPS events */ - HANDLE_SYS_EVENT(WIFI, STA_WPS_ER_SUCCESS); - HANDLE_SYS_EVENT(WIFI, STA_WPS_ER_TIMEOUT); - HANDLE_SYS_EVENT_ARG(WIFI, STA_WPS_ER_FAILED, sta_er_fail_reason); - HANDLE_SYS_EVENT_ARG(WIFI, STA_WPS_ER_PIN, sta_er_pin); - HANDLE_SYS_EVENT(WIFI, STA_WPS_ER_PBC_OVERLAP); - - /* AP events */ - HANDLE_SYS_EVENT(WIFI, AP_START); - HANDLE_SYS_EVENT(WIFI, AP_STOP); - HANDLE_SYS_EVENT_ARG(WIFI, AP_STACONNECTED, sta_connected); - HANDLE_SYS_EVENT_ARG(WIFI, AP_STADISCONNECTED, sta_disconnected); - HANDLE_SYS_EVENT_ARG(WIFI, AP_PROBEREQRECVED, ap_probereqrecved); -#if CONFIG_ETH_ENABLED - /* Ethernet events */ - /* Some extra defines to fit the old naming scheme... */ -#define ETH_EVENT_ETH_START ETHERNET_EVENT_START -#define ETH_EVENT_ETH_STOP ETHERNET_EVENT_STOP -#define ETH_EVENT_ETH_CONNECTED ETHERNET_EVENT_CONNECTED -#define ETH_EVENT_ETH_DISCONNECTED ETHERNET_EVENT_DISCONNECTED - - HANDLE_SYS_EVENT(ETH, ETH_START); - HANDLE_SYS_EVENT(ETH, ETH_STOP); - HANDLE_SYS_EVENT(ETH, ETH_CONNECTED); - HANDLE_SYS_EVENT(ETH, ETH_DISCONNECTED); -#endif - /* IP events */ - HANDLE_SYS_EVENT_ARG(IP, STA_GOT_IP, got_ip); - HANDLE_SYS_EVENT_ARG(IP, ETH_GOT_IP, got_ip); - HANDLE_SYS_EVENT(IP, STA_LOST_IP); - HANDLE_SYS_EVENT_ARG(IP, GOT_IP6, got_ip6); - HANDLE_SYS_EVENT_ARG(IP, AP_STAIPASSIGNED,ap_staipassigned); - default: - return ESP_ERR_NOT_SUPPORTED; - } -} - -#ifdef WITH_EVENT_DEBUG - -static const char* TAG = "system_event"; - -typedef struct { - int err; - const char *reason; -} wifi_reason_t; - -static const wifi_reason_t wifi_reason[] = -{ - {0, "other reason"}, - {WIFI_REASON_UNSPECIFIED, "unspecified"}, - {WIFI_REASON_AUTH_EXPIRE, "auth expire"}, - {WIFI_REASON_AUTH_LEAVE, "auth leave"}, - {WIFI_REASON_ASSOC_EXPIRE, "assoc expire"}, - {WIFI_REASON_ASSOC_TOOMANY, "assoc too many"}, - {WIFI_REASON_NOT_AUTHED, "not authed"}, - {WIFI_REASON_NOT_ASSOCED, "not assoced"}, - {WIFI_REASON_ASSOC_LEAVE, "assoc leave"}, - {WIFI_REASON_ASSOC_NOT_AUTHED, "assoc not authed"}, - {WIFI_REASON_BEACON_TIMEOUT, "beacon timeout"}, - {WIFI_REASON_NO_AP_FOUND, "no ap found"}, - {WIFI_REASON_AUTH_FAIL, "auth fail"}, - {WIFI_REASON_ASSOC_FAIL, "assoc fail"}, - {WIFI_REASON_HANDSHAKE_TIMEOUT, "hanshake timeout"}, - {WIFI_REASON_DISASSOC_PWRCAP_BAD, "bad Power Capability, disassoc"}, - {WIFI_REASON_DISASSOC_SUPCHAN_BAD, "bad Supported Channels, disassoc"}, - {WIFI_REASON_IE_INVALID, "invalid IE"}, - {WIFI_REASON_MIC_FAILURE, "MIC failure"}, - {WIFI_REASON_4WAY_HANDSHAKE_TIMEOUT, "4-way keying handshake timeout"}, - {WIFI_REASON_GROUP_KEY_UPDATE_TIMEOUT, "Group key handshake"}, - {WIFI_REASON_IE_IN_4WAY_DIFFERS, "IE in 4-way differs"}, - {WIFI_REASON_GROUP_CIPHER_INVALID, "invalid group cipher"}, - {WIFI_REASON_PAIRWISE_CIPHER_INVALID, "invalid pairwise cipher"}, - {WIFI_REASON_AKMP_INVALID, "invalid AKMP"}, - {WIFI_REASON_UNSUPP_RSN_IE_VERSION, "unsupported RSN IE version"}, - {WIFI_REASON_INVALID_RSN_IE_CAP, "invalid RSN IE capability"}, - {WIFI_REASON_802_1X_AUTH_FAILED, "802.1x auth failed"}, - {WIFI_REASON_CIPHER_SUITE_REJECTED, "cipher suite rejected"} -}; - -static const char* wifi_disconnect_reason_to_str(int err) -{ - for (int i=0; i< sizeof(wifi_reason)/sizeof(wifi_reason[0]); i++){ - if (err == wifi_reason[i].err){ - return wifi_reason[i].reason; - } - } - return wifi_reason[0].reason; -} - -static void esp_system_event_debug(const system_event_t* event) -{ - if (event == NULL) { - return; - } - - switch (event->event_id) { - case SYSTEM_EVENT_WIFI_READY: { - ESP_LOGD(TAG, "SYSTEM_EVENT_WIFI_READY"); - break; - } - case SYSTEM_EVENT_SCAN_DONE: { - const system_event_sta_scan_done_t *scan_done = &event->event_info.scan_done; - ESP_LOGD(TAG, "SYSTEM_EVENT_SCAN_DONE, status:%d, number:%d", scan_done->status, scan_done->number); - break; - } - case SYSTEM_EVENT_STA_START: { - ESP_LOGD(TAG, "SYSTEM_EVENT_STA_START"); - break; - } - case SYSTEM_EVENT_STA_STOP: { - ESP_LOGD(TAG, "SYSTEM_EVENT_STA_STOP"); - break; - } - case SYSTEM_EVENT_STA_CONNECTED: { - const system_event_sta_connected_t *connected = &event->event_info.connected; - ESP_LOGD(TAG, "SYSTEM_EVENT_STA_CONNECTED, ssid:%s, ssid_len:%d, bssid:" MACSTR ", channel:%d, authmode:%d", \ - connected->ssid, connected->ssid_len, MAC2STR(connected->bssid), connected->channel, connected->authmode); - break; - } - case SYSTEM_EVENT_STA_DISCONNECTED: { - const system_event_sta_disconnected_t *disconnected = &event->event_info.disconnected; - ESP_LOGD(TAG, "SYSTEM_EVENT_STA_DISCONNECTED, ssid:%s, ssid_len:%d, bssid:" MACSTR ", reason:%d (%s)", \ - disconnected->ssid, disconnected->ssid_len, MAC2STR(disconnected->bssid), disconnected->reason, - wifi_disconnect_reason_to_str(disconnected->reason)); - break; - } - case SYSTEM_EVENT_STA_AUTHMODE_CHANGE: { - const system_event_sta_authmode_change_t *auth_change = &event->event_info.auth_change; - ESP_LOGD(TAG, "SYSTEM_EVENT_STA_AUTHMODE_CHNAGE, old_mode:%d, new_mode:%d", auth_change->old_mode, auth_change->new_mode); - break; - } - case SYSTEM_EVENT_FTM_REPORT: { - ESP_LOGD(TAG, "SYSTEM_EVENT_FTM_REPORT"); - break; - } - case SYSTEM_EVENT_STA_GOT_IP: { - const system_event_sta_got_ip_t *got_ip = &event->event_info.got_ip; - ESP_LOGD(TAG, "SYSTEM_EVENT_STA_GOT_IP, ip:" IPSTR ", mask:" IPSTR ", gw:" IPSTR, - IP2STR(&got_ip->ip_info.ip), - IP2STR(&got_ip->ip_info.netmask), - IP2STR(&got_ip->ip_info.gw)); - break; - } - case SYSTEM_EVENT_STA_LOST_IP: { - ESP_LOGD(TAG, "SYSTEM_EVENT_STA_LOST_IP"); - break; - } - case SYSTEM_EVENT_STA_WPS_ER_SUCCESS: { - ESP_LOGD(TAG, "SYSTEM_EVENT_STA_WPS_ER_SUCCESS"); - break; - } - case SYSTEM_EVENT_STA_WPS_ER_FAILED: { - ESP_LOGD(TAG, "SYSTEM_EVENT_STA_WPS_ER_FAILED"); - break; - } - case SYSTEM_EVENT_STA_WPS_ER_TIMEOUT: { - ESP_LOGD(TAG, "SYSTEM_EVENT_STA_WPS_ER_TIMEOUT"); - break; - } - case SYSTEM_EVENT_STA_WPS_ER_PIN: { - ESP_LOGD(TAG, "SYSTEM_EVENT_STA_WPS_ER_PIN"); - break; - } - case SYSTEM_EVENT_STA_WPS_ER_PBC_OVERLAP: { - ESP_LOGD(TAG, "SYSTEM_EVENT_STA_WPS_ER_PBC_OVERLAP"); - break; - } - case SYSTEM_EVENT_AP_START: { - ESP_LOGD(TAG, "SYSTEM_EVENT_AP_START"); - break; - } - case SYSTEM_EVENT_AP_STOP: { - ESP_LOGD(TAG, "SYSTEM_EVENT_AP_STOP"); - break; - } - case SYSTEM_EVENT_AP_STACONNECTED: { - const system_event_ap_staconnected_t *staconnected = &event->event_info.sta_connected; - ESP_LOGD(TAG, "SYSTEM_EVENT_AP_STACONNECTED, mac:" MACSTR ", aid:%d", \ - MAC2STR(staconnected->mac), staconnected->aid); - break; - } - case SYSTEM_EVENT_AP_STADISCONNECTED: { - const system_event_ap_stadisconnected_t *stadisconnected = &event->event_info.sta_disconnected; - ESP_LOGD(TAG, "SYSTEM_EVENT_AP_STADISCONNECTED, mac:" MACSTR ", aid:%d", \ - MAC2STR(stadisconnected->mac), stadisconnected->aid); - break; - } - case SYSTEM_EVENT_AP_STAIPASSIGNED: { - ESP_LOGD(TAG, "SYSTEM_EVENT_AP_STAIPASSIGNED"); - break; - } - case SYSTEM_EVENT_AP_PROBEREQRECVED: { - const system_event_ap_probe_req_rx_t *ap_probereqrecved = &event->event_info.ap_probereqrecved; - ESP_LOGD(TAG, "SYSTEM_EVENT_AP_PROBEREQRECVED, rssi:%d, mac:" MACSTR, \ - ap_probereqrecved->rssi, \ - MAC2STR(ap_probereqrecved->mac)); - break; - } - case SYSTEM_EVENT_GOT_IP6: { - const esp_ip6_addr_t *addr = &event->event_info.got_ip6.ip6_info.ip; - ESP_LOGD(TAG, "SYSTEM_EVENT_AP_STA_GOT_IP6 address " IPV6STR, IPV62STR(*addr)); - break; - } -#if CONFIG_IDF_TARGET_ESP32 - case SYSTEM_EVENT_ETH_START: { - ESP_LOGD(TAG, "SYSTEM_EVENT_ETH_START"); - break; - } - case SYSTEM_EVENT_ETH_STOP: { - ESP_LOGD(TAG, "SYSTEM_EVENT_ETH_STOP"); - break; - } - case SYSTEM_EVENT_ETH_CONNECTED: { - ESP_LOGD(TAG, "SYSTEM_EVENT_ETH_CONNECETED"); - break; - } - case SYSTEM_EVENT_ETH_DISCONNECTED: { - ESP_LOGD(TAG, "SYSTEM_EVENT_ETH_DISCONNECETED"); - break; - } - case SYSTEM_EVENT_ETH_GOT_IP: { - const system_event_sta_got_ip_t *got_ip = &event->event_info.got_ip; - ESP_LOGD(TAG, "SYSTEM_EVENT_ETH_GOT_IP, ip:" IPSTR ", mask:" IPSTR ", gw:" IPSTR, - IP2STR(&got_ip->ip_info.ip), - IP2STR(&got_ip->ip_info.netmask), - IP2STR(&got_ip->ip_info.gw)); - break; - } -#endif - default: { - ESP_LOGW(TAG, "unexpected system event %d!", event->event_id); - break; - } - } -} - -#endif // WITH_EVENT_DEBUG diff --git a/components/esp_event/include/esp_event.h b/components/esp_event/include/esp_event.h index cd317d7eed..47e21ca966 100644 --- a/components/esp_event/include/esp_event.h +++ b/components/esp_event/include/esp_event.h @@ -15,10 +15,6 @@ #include "freertos/semphr.h" #include "esp_event_base.h" -// Legacy event loop not implemented on Linux target -#if !CONFIG_IDF_TARGET_LINUX -#include "esp_event_legacy.h" -#endif #ifdef __cplusplus extern "C" { diff --git a/components/esp_event/include/esp_event_legacy.h b/components/esp_event/include/esp_event_legacy.h deleted file mode 100644 index 1333d48fcb..0000000000 --- a/components/esp_event/include/esp_event_legacy.h +++ /dev/null @@ -1,253 +0,0 @@ -/* - * SPDX-FileCopyrightText: 2015-2021 Espressif Systems (Shanghai) CO LTD - * - * SPDX-License-Identifier: Apache-2.0 - */ - -#pragma once - -#include -#include - -#include "esp_err.h" -#include "esp_wifi_types.h" -#include "esp_netif.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/** System event types enumeration */ -typedef enum { - SYSTEM_EVENT_WIFI_READY = 0, /*!< ESP32 Wi-Fi ready */ - SYSTEM_EVENT_SCAN_DONE, /*!< ESP32 finish scanning AP */ - SYSTEM_EVENT_STA_START, /*!< ESP32 station start */ - SYSTEM_EVENT_STA_STOP, /*!< ESP32 station stop */ - SYSTEM_EVENT_STA_CONNECTED, /*!< ESP32 station connected to AP */ - SYSTEM_EVENT_STA_DISCONNECTED, /*!< ESP32 station disconnected from AP */ - SYSTEM_EVENT_STA_AUTHMODE_CHANGE, /*!< the auth mode of AP connected by ESP32 station changed */ - SYSTEM_EVENT_STA_GOT_IP, /*!< ESP32 station got IP from connected AP */ - SYSTEM_EVENT_STA_LOST_IP, /*!< ESP32 station lost IP and the IP is reset to 0 */ - SYSTEM_EVENT_STA_BSS_RSSI_LOW, /*!< ESP32 station connected BSS rssi goes below threshold */ - SYSTEM_EVENT_STA_WPS_ER_SUCCESS, /*!< ESP32 station wps succeeds in enrollee mode */ - SYSTEM_EVENT_STA_WPS_ER_FAILED, /*!< ESP32 station wps fails in enrollee mode */ - SYSTEM_EVENT_STA_WPS_ER_TIMEOUT, /*!< ESP32 station wps timeout in enrollee mode */ - SYSTEM_EVENT_STA_WPS_ER_PIN, /*!< ESP32 station wps pin code in enrollee mode */ - SYSTEM_EVENT_STA_WPS_ER_PBC_OVERLAP, /*!< ESP32 station wps overlap in enrollee mode */ - SYSTEM_EVENT_AP_START, /*!< ESP32 soft-AP start */ - SYSTEM_EVENT_AP_STOP, /*!< ESP32 soft-AP stop */ - SYSTEM_EVENT_AP_STACONNECTED, /*!< a station connected to ESP32 soft-AP */ - SYSTEM_EVENT_AP_STADISCONNECTED, /*!< a station disconnected from ESP32 soft-AP */ - SYSTEM_EVENT_AP_STAIPASSIGNED, /*!< ESP32 soft-AP assign an IP to a connected station */ - SYSTEM_EVENT_AP_PROBEREQRECVED, /*!< Receive probe request packet in soft-AP interface */ - SYSTEM_EVENT_ACTION_TX_STATUS, /*!< Receive status of Action frame transmitted */ - SYSTEM_EVENT_ROC_DONE, /*!< Indicates the completion of Remain-on-Channel operation status */ - SYSTEM_EVENT_STA_BEACON_TIMEOUT, /*!< ESP32 station beacon timeout */ - SYSTEM_EVENT_FTM_REPORT, /*!< Receive report of FTM procedure */ - SYSTEM_EVENT_GOT_IP6, /*!< ESP32 station or ap or ethernet interface v6IP addr is preferred */ - SYSTEM_EVENT_ETH_START, /*!< ESP32 ethernet start */ - SYSTEM_EVENT_ETH_STOP, /*!< ESP32 ethernet stop */ - SYSTEM_EVENT_ETH_CONNECTED, /*!< ESP32 ethernet phy link up */ - SYSTEM_EVENT_ETH_DISCONNECTED, /*!< ESP32 ethernet phy link down */ - SYSTEM_EVENT_ETH_GOT_IP, /*!< ESP32 ethernet got IP from connected AP */ - SYSTEM_EVENT_ETH_LOST_IP, /*!< ESP32 ethernet lost IP and the IP is reset to 0 */ - SYSTEM_EVENT_MAX /*!< Number of members in this enum */ -} system_event_id_t; - -/* add this macro define for compatible with old IDF version */ -#ifndef SYSTEM_EVENT_AP_STA_GOT_IP6 -#define SYSTEM_EVENT_AP_STA_GOT_IP6 SYSTEM_EVENT_GOT_IP6 -#endif - - -/** Argument structure of SYSTEM_EVENT_STA_WPS_ER_FAILED event */ -typedef wifi_event_sta_wps_fail_reason_t system_event_sta_wps_fail_reason_t; - -/** Argument structure of SYSTEM_EVENT_SCAN_DONE event */ -typedef wifi_event_sta_scan_done_t system_event_sta_scan_done_t; - -/** Argument structure of SYSTEM_EVENT_STA_CONNECTED event */ -typedef wifi_event_sta_connected_t system_event_sta_connected_t; - -/** Argument structure of SYSTEM_EVENT_STA_DISCONNECTED event */ -typedef wifi_event_sta_disconnected_t system_event_sta_disconnected_t; - -/** Argument structure of SYSTEM_EVENT_STA_AUTHMODE_CHANGE event */ -typedef wifi_event_sta_authmode_change_t system_event_sta_authmode_change_t; - -/** Argument structure of SYSTEM_EVENT_STA_WPS_ER_PIN event */ -typedef wifi_event_sta_wps_er_pin_t system_event_sta_wps_er_pin_t; - -/** Argument structure of SYSTEM_EVENT_STA_WPS_ER_PIN event */ -typedef wifi_event_sta_wps_er_success_t system_event_sta_wps_er_success_t; - -/** Argument structure of event */ -typedef wifi_event_ap_staconnected_t system_event_ap_staconnected_t; - -/** Argument structure of event */ -typedef wifi_event_ap_stadisconnected_t system_event_ap_stadisconnected_t; - -/** Argument structure of event */ -typedef wifi_event_ap_probe_req_rx_t system_event_ap_probe_req_rx_t; - -/** Argument structure of SYSTEM_EVENT_FTM_REPORT event */ -typedef wifi_event_ftm_report_t system_event_ftm_report_t; - -/** Argument structure of event */ -typedef ip_event_ap_staipassigned_t system_event_ap_staipassigned_t; - -/** Argument structure of event */ -typedef ip_event_got_ip_t system_event_sta_got_ip_t; - -/** Argument structure of event */ -typedef ip_event_got_ip6_t system_event_got_ip6_t; - -/** Union of all possible system_event argument structures */ -typedef union { - system_event_sta_connected_t connected; /*!< ESP32 station connected to AP */ - system_event_sta_disconnected_t disconnected; /*!< ESP32 station disconnected to AP */ - system_event_sta_scan_done_t scan_done; /*!< ESP32 station scan (APs) done */ - system_event_sta_authmode_change_t auth_change; /*!< the auth mode of AP ESP32 station connected to changed */ - system_event_sta_got_ip_t got_ip; /*!< ESP32 station got IP, first time got IP or when IP is changed */ - system_event_sta_wps_er_pin_t sta_er_pin; /*!< ESP32 station WPS enrollee mode PIN code received */ - system_event_sta_wps_fail_reason_t sta_er_fail_reason; /*!< ESP32 station WPS enrollee mode failed reason code received */ - system_event_sta_wps_er_success_t sta_er_success; /*!< ESP32 station WPS enrollee success */ - system_event_ap_staconnected_t sta_connected; /*!< a station connected to ESP32 soft-AP */ - system_event_ap_stadisconnected_t sta_disconnected; /*!< a station disconnected to ESP32 soft-AP */ - system_event_ap_probe_req_rx_t ap_probereqrecved; /*!< ESP32 soft-AP receive probe request packet */ - system_event_ftm_report_t ftm_report; /*!< Report of FTM procedure */ - system_event_ap_staipassigned_t ap_staipassigned; /**< ESP32 soft-AP assign an IP to the station*/ - system_event_got_ip6_t got_ip6; /*!< ESP32 station or ap or ethernet ipv6 addr state change to preferred */ -} system_event_info_t; - -/** Event, as a tagged enum */ -typedef struct { - system_event_id_t event_id; /*!< event ID */ - system_event_info_t event_info; /*!< event information */ -} system_event_t; - -/** Event handler function type */ -typedef esp_err_t (*system_event_handler_t)(esp_event_base_t event_base, - int32_t event_id, - void* event_data, - size_t event_data_size, - TickType_t ticks_to_wait); - -/** - * @brief Send an event to event task - * - * @note This API is part of the legacy event system. New code should use event library API in esp_event.h - * - * Other task/modules, such as the tcpip_adapter, can call this API to send an event to event task - * - * @param event Event to send - * - * @return ESP_OK : succeed - * @return others : fail - */ -esp_err_t esp_event_send(system_event_t *event) __attribute__ ((deprecated)); - -/** - * @brief Send an event to event task - * - * @note This API is used by Wi-Fi Driver only. - * - * Other task/modules, such as the tcpip_adapter, can call this API to send an event to event task - * - * @param[in] event_base the event base that identifies the event - * @param[in] event_id the event ID that identifies the event - * @param[in] event_data the data, specific to the event occurrence, that gets passed to the handler - * @param[in] event_data_size the size of the event data - * @param[in] ticks_to_wait number of ticks to block on a full event queue - * - * @return ESP_OK : succeed - * @return others : fail - */ -esp_err_t esp_event_send_internal(esp_event_base_t event_base, - int32_t event_id, - void* event_data, - size_t event_data_size, - TickType_t ticks_to_wait); - -/** - * @brief Default event handler for system events - * - * @note This API is part of the legacy event system. New code should use event library API in esp_event.h - * - * This function performs default handling of system events. - * When using esp_event_loop APIs, it is called automatically before invoking the user-provided - * callback function. - * - * Applications which implement a custom event loop must call this function - * as part of event processing. - * - * @param event pointer to event to be handled - * @return ESP_OK if an event was handled successfully - */ -esp_err_t esp_event_process_default(system_event_t *event) __attribute__ ((deprecated)); - -/** - * @brief Install default event handlers for Ethernet interface - * - * @note This API is part of the legacy event system. New code should use event library API in esp_event.h - * - */ -void esp_event_set_default_eth_handlers(void); - -/** - * @brief Install default event handlers for Wi-Fi interfaces (station and AP) - * - * @note This API is part of the legacy event system. New code should use event library API in esp_event.h - */ -void esp_event_set_default_wifi_handlers(void) __attribute__ ((deprecated)); - -/** - * @brief Application specified event callback function - * - * @note This API is part of the legacy event system. New code should use event library API in esp_event.h - * - * - * @param ctx reserved for user - * @param event event type defined in this file - * - * @return - * - ESP_OK: succeed - * - others: fail - */ -typedef esp_err_t (*system_event_cb_t)(void *ctx, system_event_t *event); - -/** - * @brief Initialize event loop - * - * @note This API is part of the legacy event system. New code should use event library API in esp_event.h - * - * Create the event handler and task - * - * @param cb application specified event callback, it can be modified by call esp_event_set_cb - * @param ctx reserved for user - * - * @return - * - ESP_OK: succeed - * - others: fail - */ -esp_err_t esp_event_loop_init(system_event_cb_t cb, void *ctx) __attribute__ ((deprecated)); - -/** - * @brief Set application specified event callback function - * - * @note This API is part of the legacy event system. New code should use event library API in esp_event.h - * - * @attention 1. If cb is NULL, means application don't need to handle - * If cb is not NULL, it will be call when an event is received, after the default event callback is completed - * - * @param cb application callback function - * @param ctx argument to be passed to callback - * - * - * @return old callback - */ -system_event_cb_t esp_event_loop_set_cb(system_event_cb_t cb, void *ctx) __attribute__ ((deprecated)); - -#ifdef __cplusplus -} -#endif diff --git a/components/esp_netif/esp_netif_handlers.c b/components/esp_netif/esp_netif_handlers.c index ba1e8179f4..838dda633e 100644 --- a/components/esp_netif/esp_netif_handlers.c +++ b/components/esp_netif/esp_netif_handlers.c @@ -1,16 +1,8 @@ -// Copyright 2019 Espressif Systems (Shanghai) PTE LTD -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// 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. +/* + * SPDX-FileCopyrightText: 2019-2022 Espressif Systems (Shanghai) CO LTD + * + * SPDX-License-Identifier: Apache-2.0 + */ #include #include "esp_netif.h" @@ -77,8 +69,8 @@ void esp_netif_action_connected(void *esp_netif, esp_event_base_t base, int32_t memcpy(&evt.ip_info, &ip, sizeof(esp_netif_ip_info_t)); esp_netif_set_old_ip_info(esp_netif, &ip); - ESP_NETIF_CALL_CHECK("esp_event_send_internal in esp_netif_action_connected", - esp_event_send_internal(IP_EVENT, esp_netif_get_event_id(esp_netif, ESP_NETIF_IP_EVENT_GOT_IP) , + ESP_NETIF_CALL_CHECK("esp_event_post in esp_netif_action_connected", + esp_event_post(IP_EVENT, esp_netif_get_event_id(esp_netif, ESP_NETIF_IP_EVENT_GOT_IP) , &evt, sizeof(evt), 0), ESP_OK); ESP_LOGD(TAG, "static ip: ip changed=%d", evt.ip_changed); } else { diff --git a/components/esp_netif/lwip/esp_netif_lwip.c b/components/esp_netif/lwip/esp_netif_lwip.c index 372519b6a7..34b5973c29 100644 --- a/components/esp_netif/lwip/esp_netif_lwip.c +++ b/components/esp_netif/lwip/esp_netif_lwip.c @@ -773,7 +773,7 @@ static void esp_netif_dhcps_cb(uint8_t ip[4], uint8_t mac[6]) ESP_LOGI(TAG, "DHCP server assigned IP to a station, IP is: " IPSTR, IP2STR(&evt.ip)); ESP_LOGD(TAG, "Client's MAC: %x:%x:%x:%x:%x:%x", mac[0], mac[1], mac[2], mac[3], mac[4], mac[5]); - int ret = esp_event_send_internal(IP_EVENT, IP_EVENT_AP_STAIPASSIGNED, &evt, sizeof(evt), 0); + int ret = esp_event_post(IP_EVENT, IP_EVENT_AP_STAIPASSIGNED, &evt, sizeof(evt), 0); if (ESP_OK != ret) { ESP_LOGE(TAG, "dhcps cb: failed to post IP_EVENT_AP_STAIPASSIGNED (%x)", ret); } @@ -1073,7 +1073,7 @@ static void esp_netif_dhcpc_cb(struct netif *netif) memcpy(&evt.ip_info, ip_info, sizeof(esp_netif_ip_info_t)); memcpy(ip_info_old, ip_info, sizeof(esp_netif_ip_info_t)); ESP_LOGD(TAG, "if%p ip changed=%d", esp_netif, evt.ip_changed); - ret = esp_event_send_internal(IP_EVENT, evt_id, &evt, sizeof(evt), 0); + ret = esp_event_post(IP_EVENT, evt_id, &evt, sizeof(evt), 0); if (ESP_OK != ret) { ESP_LOGE(TAG, "dhcpc cb: failed to post got ip event (%x)", ret); } @@ -1112,7 +1112,7 @@ static void esp_netif_ip_lost_timer(void *arg) ESP_LOGD(TAG, "if%p ip lost tmr: raise ip lost event", esp_netif); memset(esp_netif->ip_info_old, 0, sizeof(esp_netif_ip_info_t)); if (esp_netif->lost_ip_event) { - ret = esp_event_send_internal(IP_EVENT, esp_netif->lost_ip_event, + ret = esp_event_post(IP_EVENT, esp_netif->lost_ip_event, &evt, sizeof(evt), 0); if (ESP_OK != ret) { ESP_LOGE(TAG, "ip lost timer: failed to post lost ip event (%x)", ret); @@ -1578,7 +1578,7 @@ static esp_err_t esp_netif_set_ip_info_api(esp_netif_api_msg_t *msg) memcpy(&evt.ip_info, ip_info, sizeof(esp_netif_ip_info_t)); memcpy(esp_netif->ip_info_old, ip_info, sizeof(esp_netif_ip_info_t)); - ret = esp_event_send_internal(IP_EVENT, evt_id, &evt, sizeof(evt), 0); + ret = esp_event_post(IP_EVENT, evt_id, &evt, sizeof(evt), 0); if (ESP_OK != ret) { ESP_LOGE(TAG, "set ip info: failed to post got ip event (%x)", ret); } @@ -1750,7 +1750,7 @@ static void esp_netif_nd6_cb(struct netif *p_netif, uint8_t ip_index) #endif /* LWIP_IPV6_SCOPES */ memcpy(&evt.ip6_info, &ip6_info, sizeof(esp_netif_ip6_info_t)); - int ret = esp_event_send_internal(IP_EVENT, IP_EVENT_GOT_IP6, &evt, sizeof(evt), 0); + int ret = esp_event_post(IP_EVENT, IP_EVENT_GOT_IP6, &evt, sizeof(evt), 0); if (ESP_OK != ret) { ESP_LOGE(TAG, "nd6 cb: failed to post IP_EVENT_GOT_IP6 (%x)", ret); } @@ -2132,7 +2132,7 @@ static esp_err_t esp_netif_add_ip6_address_api(esp_netif_api_msg_t *msg) addr->preferred ? IP6_ADDR_PREFERRED : IP6_ADDR_DEPRECATED); ip_event_got_ip6_t evt = {.esp_netif = msg->esp_netif, .if_index = -1, .ip_index = index}; evt.ip6_info.ip = addr->addr; - ESP_RETURN_ON_ERROR(esp_event_send_internal(IP_EVENT, IP_EVENT_GOT_IP6, &evt, sizeof(evt), 0), TAG, + ESP_RETURN_ON_ERROR(esp_event_post(IP_EVENT, IP_EVENT_GOT_IP6, &evt, sizeof(evt), 0), TAG, "Failed to post IP_EVENT_GOT_IP6"); return error; } diff --git a/components/esp_netif/lwip/esp_netif_lwip_ppp.c b/components/esp_netif/lwip/esp_netif_lwip_ppp.c index 21385f479f..19907219ce 100644 --- a/components/esp_netif/lwip/esp_netif_lwip_ppp.c +++ b/components/esp_netif/lwip/esp_netif_lwip_ppp.c @@ -1,16 +1,8 @@ -// Copyright 2019 Espressif Systems (Shanghai) PTE LTD -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// 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. +/* + * SPDX-FileCopyrightText: 2019-2022 Espressif Systems (Shanghai) CO LTD + * + * SPDX-License-Identifier: Apache-2.0 + */ #include "esp_netif.h" @@ -139,7 +131,7 @@ static void on_ppp_status_changed(ppp_pcb *pcb, int err_code, void *ctx) err = esp_event_post(IP_EVENT, netif->lost_ip_event, &evt, sizeof(evt), 0); if (ESP_OK != err) { - ESP_LOGE(TAG, "esp_event_send_internal failed with code %d", err); + ESP_LOGE(TAG, "esp_event_post failed with code %d", err); } return; diff --git a/components/esp_wifi/include/esp_wifi.h b/components/esp_wifi/include/esp_wifi.h index bcd10c77a1..524430d162 100644 --- a/components/esp_wifi/include/esp_wifi.h +++ b/components/esp_wifi/include/esp_wifi.h @@ -34,7 +34,7 @@ * * The event task is a daemon task, which receives events from WiFi driver or from other subsystem, such * as TCPIP stack, event task will call the default callback function on receiving the event. For example, - * on receiving event SYSTEM_EVENT_STA_CONNECTED, it will call tcpip_adapter_start() to start the DHCP + * on receiving event WIFI_EVENT_STA_CONNECTED, it will call esp_netif API to start the DHCP * client in it's default handler. * * Application can register it's own event callback function by API esp_event_init, then the application callback @@ -87,7 +87,6 @@ extern "C" { * @brief WiFi stack configuration parameters passed to esp_wifi_init call. */ typedef struct { - system_event_handler_t event_handler; /**< WiFi event handler */ wifi_osi_funcs_t* osi_funcs; /**< WiFi OS functions */ wpa_crypto_funcs_t wpa_crypto_funcs; /**< WiFi station crypto functions when connect */ int static_rx_buf_num; /**< WiFi static RX buffer number */ @@ -206,7 +205,6 @@ extern uint64_t g_wifi_feature_caps; #define CONFIG_FEATURE_FTM_RESPONDER_BIT (1<<3) #define WIFI_INIT_CONFIG_DEFAULT() { \ - .event_handler = &esp_event_send_internal, \ .osi_funcs = &g_wifi_osi_funcs, \ .wpa_crypto_funcs = g_wifi_default_wpa_crypto_funcs, \ .static_rx_buf_num = CONFIG_ESP32_WIFI_STATIC_RX_BUFFER_NUM,\ diff --git a/components/esp_wifi/include/esp_wifi_default.h b/components/esp_wifi/include/esp_wifi_default.h index 908ea2c113..79a176bfc0 100644 --- a/components/esp_wifi/include/esp_wifi_default.h +++ b/components/esp_wifi/include/esp_wifi_default.h @@ -1,20 +1,14 @@ -// Copyright 2019 Espressif Systems (Shanghai) PTE LTD -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// 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. +/* + * SPDX-FileCopyrightText: 2019-2022 Espressif Systems (Shanghai) CO LTD + * + * SPDX-License-Identifier: Apache-2.0 + */ #ifndef _ESP_WIFI_DEFAULT_H #define _ESP_WIFI_DEFAULT_H +#include "esp_netif.h" + #ifdef __cplusplus extern "C" { #endif diff --git a/components/esp_wifi/lib b/components/esp_wifi/lib index 81768e6354..c73ee337c3 160000 --- a/components/esp_wifi/lib +++ b/components/esp_wifi/lib @@ -1 +1 @@ -Subproject commit 81768e63548385be79e7b35828832a53faba4393 +Subproject commit c73ee337c334597378e79219c9f59525116437d2 diff --git a/components/mqtt/test/test_mqtt_connection.c b/components/mqtt/test/test_mqtt_connection.c index 6598b985c9..0e82003918 100644 --- a/components/mqtt/test/test_mqtt_connection.c +++ b/components/mqtt/test/test_mqtt_connection.c @@ -7,6 +7,7 @@ #include "freertos/event_groups.h" #include "unity.h" #include "esp_event.h" +#include "esp_netif.h" #include "esp_eth.h" #include "esp_log.h" diff --git a/components/wifi_provisioning/include/wifi_provisioning/manager.h b/components/wifi_provisioning/include/wifi_provisioning/manager.h index 0d51bd2739..06532a8e51 100644 --- a/components/wifi_provisioning/include/wifi_provisioning/manager.h +++ b/components/wifi_provisioning/include/wifi_provisioning/manager.h @@ -1,22 +1,15 @@ -// Copyright 2019 Espressif Systems (Shanghai) PTE LTD -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// 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. +/* + * SPDX-FileCopyrightText: 2019-2022 Espressif Systems (Shanghai) CO LTD + * + * SPDX-License-Identifier: Apache-2.0 + */ #pragma once #include #include "esp_event.h" +#include "esp_wifi_types.h" #include "wifi_provisioning/wifi_config.h" #ifdef __cplusplus @@ -484,25 +477,6 @@ esp_err_t wifi_prov_mgr_endpoint_register(const char *ep_name, */ void wifi_prov_mgr_endpoint_unregister(const char *ep_name); -/** - * @brief Event handler for provisioning manager - * - * This is called from the main event handler and controls the - * provisioning manager's internal state machine depending on - * incoming Wi-Fi events - * - * @note : This function is DEPRECATED, because events are now - * handled internally using the event loop library, esp_event. - * Calling this will do nothing and simply return ESP_OK. - * - * @param[in] ctx Event context data - * @param[in] event Event info - * - * @return - * - ESP_OK : Event handled successfully - */ -esp_err_t wifi_prov_mgr_event_handler(void *ctx, system_event_t *event) __attribute__ ((deprecated)); - /** * @brief Get state of Wi-Fi Station during provisioning * diff --git a/components/wifi_provisioning/src/manager.c b/components/wifi_provisioning/src/manager.c index 945b911508..dd1785bd35 100644 --- a/components/wifi_provisioning/src/manager.c +++ b/components/wifi_provisioning/src/manager.c @@ -788,14 +788,6 @@ static esp_err_t update_wifi_scan_results(void) return ret; } -/* DEPRECATED : Event handler for starting/stopping provisioning. - * To be called from within the context of the main - * event handler */ -esp_err_t wifi_prov_mgr_event_handler(void *ctx, system_event_t *event) -{ - return ESP_OK; -} - static void wifi_prov_mgr_event_handler_internal( void* arg, esp_event_base_t event_base, int32_t event_id, void* event_data) { diff --git a/components/wpa_supplicant/esp_supplicant/src/esp_wps.c b/components/wpa_supplicant/esp_supplicant/src/esp_wps.c index 4ac450c41a..7141e6c735 100644 --- a/components/wpa_supplicant/esp_supplicant/src/esp_wps.c +++ b/components/wpa_supplicant/esp_supplicant/src/esp_wps.c @@ -412,7 +412,7 @@ struct wps_data *wps_init(void) wpa_printf(MSG_DEBUG, "WPS PIN [%s]", tmpp); wifi_event_sta_wps_er_pin_t evt; os_memcpy(evt.pin_code, data->dev_password, 8); - esp_event_send_internal(WIFI_EVENT, WIFI_EVENT_STA_WPS_ER_PIN, &evt, sizeof(evt), portMAX_DELAY); + esp_event_post(WIFI_EVENT, WIFI_EVENT_STA_WPS_ER_PIN, &evt, sizeof(evt), portMAX_DELAY); } while (0); } else if (wps_get_type() == WPS_TYPE_PBC) { data->pbc = 1; @@ -980,7 +980,7 @@ int wps_stop_process(wifi_event_sta_wps_fail_reason_t reason_code) wpa_printf(MSG_DEBUG, "Write wps_fail_information"); - esp_event_send_internal(WIFI_EVENT, WIFI_EVENT_STA_WPS_ER_FAILED, &reason_code, sizeof(reason_code), portMAX_DELAY); + esp_event_post(WIFI_EVENT, WIFI_EVENT_STA_WPS_ER_FAILED, &reason_code, sizeof(reason_code), portMAX_DELAY); return ESP_OK; } @@ -1007,7 +1007,7 @@ int wps_finish(void) if (config == NULL) { wifi_event_sta_wps_fail_reason_t reason_code = WPS_FAIL_REASON_NORMAL; - esp_event_send_internal(WIFI_EVENT, WIFI_EVENT_STA_WPS_ER_FAILED, &reason_code, sizeof(reason_code), portMAX_DELAY); + esp_event_post(WIFI_EVENT, WIFI_EVENT_STA_WPS_ER_FAILED, &reason_code, sizeof(reason_code), portMAX_DELAY); return ESP_FAIL; } @@ -1287,7 +1287,7 @@ out: esp_wifi_disarm_sta_connection_timer_internal(); ets_timer_disarm(&sm->wps_timeout_timer); - esp_event_send_internal(WIFI_EVENT, WIFI_EVENT_STA_WPS_ER_FAILED, &reason_code, sizeof(reason_code), portMAX_DELAY); + esp_event_post(WIFI_EVENT, WIFI_EVENT_STA_WPS_ER_FAILED, &reason_code, sizeof(reason_code), portMAX_DELAY); return ret; } @@ -1493,7 +1493,7 @@ wifi_station_wps_timeout_internal(void) wps_set_status(WPS_STATUS_DISABLE); - esp_event_send_internal(WIFI_EVENT, WIFI_EVENT_STA_WPS_ER_TIMEOUT, 0, 0, portMAX_DELAY); + esp_event_post(WIFI_EVENT, WIFI_EVENT_STA_WPS_ER_TIMEOUT, 0, 0, portMAX_DELAY); } void wifi_station_wps_timeout(void) @@ -1562,10 +1562,10 @@ void wifi_station_wps_success_internal(void) os_memcpy(evt.ap_cred[i].ssid, sm->ssid[i], sm->ssid_len[i]); os_memcpy(evt.ap_cred[i].passphrase, sm->key[i], sm->key_len[i]); } - esp_event_send_internal(WIFI_EVENT, WIFI_EVENT_STA_WPS_ER_SUCCESS, &evt, + esp_event_post(WIFI_EVENT, WIFI_EVENT_STA_WPS_ER_SUCCESS, &evt, sizeof(evt), portMAX_DELAY); } else { - esp_event_send_internal(WIFI_EVENT, WIFI_EVENT_STA_WPS_ER_SUCCESS, + esp_event_post(WIFI_EVENT, WIFI_EVENT_STA_WPS_ER_SUCCESS, 0, 0, portMAX_DELAY); } } @@ -1841,7 +1841,7 @@ wifi_wps_scan_done(void *arg, STATUS status) } else { wpa_printf(MSG_INFO, "PBC session overlap!"); wps_set_status(WPS_STATUS_DISABLE); - esp_event_send_internal(WIFI_EVENT, WIFI_EVENT_STA_WPS_ER_PBC_OVERLAP, 0, 0, portMAX_DELAY); + esp_event_post(WIFI_EVENT, WIFI_EVENT_STA_WPS_ER_PBC_OVERLAP, 0, 0, portMAX_DELAY); } wpa_printf(MSG_DEBUG, "wps scan_done discover_ssid_cnt = %d", sm->discover_ssid_cnt); diff --git a/docs/doxygen/Doxyfile b/docs/doxygen/Doxyfile index fa03ed338e..2f055c3910 100644 --- a/docs/doxygen/Doxyfile +++ b/docs/doxygen/Doxyfile @@ -37,7 +37,6 @@ INPUT = \ $(PROJECT_PATH)/components/wpa_supplicant/esp_supplicant/include/esp_dpp.h \ $(PROJECT_PATH)/components/esp_event/include/esp_event.h \ $(PROJECT_PATH)/components/esp_event/include/esp_event_base.h \ - $(PROJECT_PATH)/components/esp_event/include/esp_event_legacy.h \ $(PROJECT_PATH)/components/bt/include/esp32/include/esp_bt.h \ $(PROJECT_PATH)/components/bt/common/api/include/api/esp_blufi_api.h \ $(PROJECT_PATH)/components/bt/host/bluedroid/api/include/api/esp_bt_defs.h \ diff --git a/docs/en/api-reference/system/esp_event.rst b/docs/en/api-reference/system/esp_event.rst index b1fd1d02ca..29b4e666f3 100644 --- a/docs/en/api-reference/system/esp_event.rst +++ b/docs/en/api-reference/system/esp_event.rst @@ -224,5 +224,3 @@ Related Documents .. toctree:: :maxdepth: 1 - - Legacy event loop API reference diff --git a/docs/en/api-reference/system/esp_event_legacy.rst b/docs/en/api-reference/system/esp_event_legacy.rst deleted file mode 100644 index c8ee36f620..0000000000 --- a/docs/en/api-reference/system/esp_event_legacy.rst +++ /dev/null @@ -1,7 +0,0 @@ -Legacy event loop -================= - -API Reference -------------- - -.. include-build-file:: inc/esp_event_legacy.inc diff --git a/docs/zh_CN/api-reference/system/esp_event_legacy.rst b/docs/zh_CN/api-reference/system/esp_event_legacy.rst deleted file mode 100644 index 80a97df380..0000000000 --- a/docs/zh_CN/api-reference/system/esp_event_legacy.rst +++ /dev/null @@ -1 +0,0 @@ -.. include:: ../../../en/api-reference/system/esp_event_legacy.rst diff --git a/examples/network/network_tests/main/net_suite.c b/examples/network/network_tests/main/net_suite.c index 018acc862c..fc822a1d12 100644 --- a/examples/network/network_tests/main/net_suite.c +++ b/examples/network/network_tests/main/net_suite.c @@ -1,3 +1,8 @@ +/* + * SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD + * + * SPDX-License-Identifier: Unlicense OR CC0-1.0 + */ /* Net-suite test code This example code is in the Public Domain (or CC0 licensed, at your option.) @@ -8,6 +13,7 @@ */ #include #include "esp_event.h" +#include "esp_netif.h" #include "esp_log.h" #include "stdinout.h" #include "lwip/err.h" diff --git a/tools/ci/check_copyright_ignore.txt b/tools/ci/check_copyright_ignore.txt index 1a550bbc58..f7d546225a 100644 --- a/tools/ci/check_copyright_ignore.txt +++ b/tools/ci/check_copyright_ignore.txt @@ -429,7 +429,6 @@ components/esp_eth/src/esp_eth_phy.c components/esp_eth/src/ksz8851.h components/esp_eth/src/openeth.h components/esp_eth/src/w5500.h -components/esp_eth/test/test_emac.c components/esp_eth/test_apps/component_ut_test.py components/esp_eth/test_apps/main/esp_eth_test.c components/esp_event/esp_event_private.c @@ -441,7 +440,6 @@ components/esp_event/include/esp_event_base.h components/esp_event/include/esp_event_loop.h components/esp_event/private_include/esp_event_internal.h components/esp_event/private_include/esp_event_private.h -components/esp_event/test/test_default_loop.c components/esp_event/test/test_event.c components/esp_gdbstub/esp32/gdbstub_target_config.h components/esp_gdbstub/esp32c3/gdbstub_target_config.h @@ -485,14 +483,12 @@ 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_transport_ble.c components/esp_local_ctrl/src/esp_local_ctrl_transport_httpd.c -components/esp_netif/esp_netif_handlers.c components/esp_netif/include/esp_netif_net_stack.h components/esp_netif/include/esp_netif_ppp.h components/esp_netif/include/esp_netif_slip.h components/esp_netif/include/esp_netif_sta_list.h components/esp_netif/loopback/esp_netif_loopback.c components/esp_netif/lwip/esp_netif_lwip_defaults.c -components/esp_netif/lwip/esp_netif_lwip_ppp.c components/esp_netif/lwip/esp_netif_lwip_ppp.h components/esp_netif/lwip/esp_netif_lwip_slip.c components/esp_netif/lwip/esp_netif_lwip_slip.h @@ -739,7 +735,6 @@ 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/wifi_types.h components/esp_wifi/include/esp_smartconfig.h -components/esp_wifi/include/esp_wifi_default.h components/esp_wifi/include/esp_wifi_netif.h components/esp_wifi/include/smartconfig_ack.h components/esp_wifi/src/lib_printf.c @@ -1759,7 +1754,6 @@ components/vfs/test/test_vfs_append.c components/vfs/test/test_vfs_lwip.c components/vfs/test/test_vfs_paths.c components/vfs/test/test_vfs_uart.c -components/wifi_provisioning/include/wifi_provisioning/manager.h components/wifi_provisioning/include/wifi_provisioning/scheme_ble.h components/wifi_provisioning/include/wifi_provisioning/scheme_console.h components/wifi_provisioning/include/wifi_provisioning/scheme_softap.h @@ -2166,7 +2160,6 @@ examples/mesh/ip_internal_network/main/mqtt_app.c examples/mesh/manual_networking/main/include/mesh_light.h examples/mesh/manual_networking/main/mesh_light.c examples/mesh/manual_networking/main/mesh_main.c -examples/network/network_tests/main/net_suite.c examples/network/network_tests/main/stdinout.c examples/network/network_tests/main/stdinout.h examples/network/simple_sniffer/components/pcap/pcap.c