From 09fe746322e42698e969f9259863d68f6c7d1b9d Mon Sep 17 00:00:00 2001 From: Chen Yudong Date: Sat, 14 Sep 2024 11:26:54 +0800 Subject: [PATCH 1/2] ci: increase test_wifi_power_save got ip timeout --- examples/wifi/power_save/pytest_wifi_power_save.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/examples/wifi/power_save/pytest_wifi_power_save.py b/examples/wifi/power_save/pytest_wifi_power_save.py index 265e764399..c5eb2bfb22 100644 --- a/examples/wifi/power_save/pytest_wifi_power_save.py +++ b/examples/wifi/power_save/pytest_wifi_power_save.py @@ -1,6 +1,5 @@ # SPDX-FileCopyrightText: 2021-2023 Espressif Systems (Shanghai) CO LTD # SPDX-License-Identifier: Apache-2.0 - import logging import pexpect @@ -9,7 +8,7 @@ from common_test_methods import get_env_config_variable from pytest_embedded import Dut bad_event_str = [ - 'bcn_timout', + 'bcn_timeout', 'm f probe req l', 'abort() was called', 'Guru Meditation Error', @@ -31,7 +30,7 @@ def _run_test(dut: Dut) -> None: pass try: - dut.expect(r'got ip: (\d+\.\d+\.\d+\.\d+)[^\d]', timeout=20) + dut.expect(r'got ip: (\d+\.\d+\.\d+\.\d+)[^\d]', timeout=30) log_after_got_ip = dut.expect(pexpect.TIMEOUT, timeout=10).decode() if any(s in log_after_got_ip for s in bad_event_str): logging.info('Abnormal connection log:') From ee099bda6c3c6562d040282d0df47933ac16ba88 Mon Sep 17 00:00:00 2001 From: sibeibei Date: Mon, 14 Oct 2024 16:55:41 +0800 Subject: [PATCH 2/2] fix(wifi): fix some wifi issues 241031 1. fix cant sleep if reconnect to connected ap 2. clear pmk in internal reconnection 3. update connect status for init-->auth --- components/esp_wifi/lib | 2 +- components/wpa_supplicant/esp_supplicant/src/esp_wifi_driver.h | 1 + components/wpa_supplicant/esp_supplicant/src/esp_wpa_main.c | 1 + 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/components/esp_wifi/lib b/components/esp_wifi/lib index 7443c5639e..d985b57105 160000 --- a/components/esp_wifi/lib +++ b/components/esp_wifi/lib @@ -1 +1 @@ -Subproject commit 7443c5639ee9935b9a9da8fc683020159aa02390 +Subproject commit d985b57105276b789e6251012b6e35e3d69d92b9 diff --git a/components/wpa_supplicant/esp_supplicant/src/esp_wifi_driver.h b/components/wpa_supplicant/esp_supplicant/src/esp_wifi_driver.h index 1556c1d991..0057f1578c 100644 --- a/components/wpa_supplicant/esp_supplicant/src/esp_wifi_driver.h +++ b/components/wpa_supplicant/esp_supplicant/src/esp_wifi_driver.h @@ -142,6 +142,7 @@ struct wpa_funcs { void (*wpa_config_done)(void); uint8_t *(*owe_build_dhie)(uint16_t group); int (*owe_process_assoc_resp)(const u8 *rsn_ie, size_t rsn_len, const uint8_t *dh_ie, size_t dh_len); + void (*wpa_sta_clear_curr_pmksa)(void); }; struct wpa2_funcs { diff --git a/components/wpa_supplicant/esp_supplicant/src/esp_wpa_main.c b/components/wpa_supplicant/esp_supplicant/src/esp_wpa_main.c index 948c173f6a..be88ac5b16 100644 --- a/components/wpa_supplicant/esp_supplicant/src/esp_wpa_main.c +++ b/components/wpa_supplicant/esp_supplicant/src/esp_wpa_main.c @@ -442,6 +442,7 @@ int esp_supplicant_init(void) wpa_cb->wpa_config_bss = NULL;//wpa_config_bss; wpa_cb->wpa_michael_mic_failure = wpa_michael_mic_failure; wpa_cb->wpa_config_done = wpa_config_done; + wpa_cb->wpa_sta_clear_curr_pmksa = wpa_sta_clear_curr_pmksa; esp_wifi_register_wpa3_ap_cb(wpa_cb); esp_wifi_register_wpa3_cb(wpa_cb);