Merge branch 'backport/backport_some_wifi_changes_260422_v5.5' into 'release/v5.5'

backport/backport some wifi changes 260422 v5.5

See merge request espressif/esp-idf!47848
This commit is contained in:
Jiang Jiang Jian
2026-04-25 14:38:31 +08:00
7 changed files with 23 additions and 11 deletions
@@ -60,7 +60,7 @@ hal_crypto_set_key_entry = 0x40001e18;
/*pm_stop = 0x40001e38;*/
hal_set_sta_tbtt = 0x40001e4c;
//pm_update_next_tbtt = 0x40001e50;
pm_set_sleep_type = 0x40001e54;
//pm_set_sleep_type = 0x40001e54;
/*pm_tx_null_data_done_process = 0x40001eb0;*/
//pm_tx_data_process = 0x40001eb4;
/*pm_attach = 0x40001eb8;*/
@@ -26,8 +26,8 @@ lmacDisableTransmit = 0x40000cd4;
pm_check_state = 0x40000d48;
//pm_set_beacon_filter = 0x40000d6c;
//pm_is_in_wifi_slice_threshold = 0x40000d70;
pm_keep_alive = 0x40000d78;
pm_process_tim = 0x40000da8;
//pm_keep_alive = 0x40000d78;
//pm_process_tim = 0x40000da8;
//pm_tbtt_process = 0x40000dbc;
//pm_tx_data_process = 0x40000dd8;
pm_twt_process = 0x40000de8;
@@ -49,7 +49,7 @@ ppRxProtoProc = 0x40000e90;
//wDev_ProcessRxSucData = 0x40000fe0;
esp_test_tx_process_complete = 0x40001030;
pm_get_tbtt_count = 0x4000151c;
pm_enable_max_idle_timer = 0x400015b8;
//pm_enable_max_idle_timer = 0x400015b8;
//pm_beacon_offset_check = 0x400015cc;
pm_beacon_offset_get_average = 0x400015d0;
pm_beacon_offset_get_expect = 0x400015d4;
@@ -134,7 +134,7 @@ pm_rx_data_process = 0x40000db0;
pm_sleep = 0x40000db4;
pm_sleep_for = 0x40000db8;
//pm_tbtt_process = 0x40000dbc;
pm_tx_data_done_process = 0x40000dc0;
//pm_tx_data_done_process = 0x40000dc0;
pm_allow_tx = 0x40000dc4;
pm_extend_tbtt_adaptive_servo = 0x40000dc8;
pm_scale_listen_interval = 0x40000dcc;
@@ -25,7 +25,7 @@ lmacDisableTransmit = 0x40000c44;
pm_check_state = 0x40000cb4;
pm_set_beacon_filter = 0x40000cd8;
//pm_is_in_wifi_slice_threshold = 0x40000cdc;
pm_keep_alive = 0x40000ce4;
//pm_keep_alive = 0x40000ce4;
pm_process_tim = 0x40000d14;
pm_tbtt_process = 0x40000d28;
pm_tx_data_process = 0x40000d44;
@@ -52,7 +52,7 @@ pm_beacon_offset_check = 0x40001564;
pm_beacon_offset_get_average = 0x40001568;
pm_beacon_offset_get_expect = 0x4000156c;
pm_beacon_offset_get_params = 0x40001570;
pm_enable_max_idle_timer = 0x40001578;
//pm_enable_max_idle_timer = 0x40001578;
phy_get_rc_dout = 0x40001058;
phy_rc_cal = 0x4000105c;
@@ -131,7 +131,7 @@ pm_rx_data_process = 0x40000d1c;
pm_sleep = 0x40000d20;
pm_sleep_for = 0x40000d24;
//pm_tbtt_process = 0x40000d28;
pm_tx_data_done_process = 0x40000d2c;
//pm_tx_data_done_process = 0x40000d2c;
pm_allow_tx = 0x40000d30;
pm_extend_tbtt_adaptive_servo = 0x40000d34;
pm_scale_listen_interval = 0x40000d38;
@@ -53,7 +53,8 @@ typedef u16 __bitwise be16;
#define TEST_DEFAULT_SSID "SSID_" CONFIG_IDF_TARGET TEST_SUFFIX_STR
#define TEST_DEFAULT_PWD "PASS_" CONFIG_IDF_TARGET TEST_SUFFIX_STR
#define TEST_DEFAULT_CHANNEL (6)
#define CONNECT_TIMEOUT_MS (8000)
/* STA association can take many seconds (e.g. WPA3 peer + scan). */
#define STA_ASSOC_WAIT_MS (30000)
#define MAXIMUM_RETRY (5)
#define WIFI_DISCONNECT_EVENT (1)
@@ -103,6 +104,9 @@ static void wifi_event_handler(void* arg, esp_event_base_t event_base, int32_t e
break;
case WIFI_EVENT_AP_STACONNECTED:
ESP_LOGI(TAG, "Wi-Fi AP got a station connected");
if (wifi_events) {
xEventGroupSetBits(wifi_events, WIFI_AP_STA_CONNECTED);
}
break;
case WIFI_EVENT_STA_CONNECTED:
ESP_LOGI(TAG, "WIFI_EVENT_STA_CONNECTED");
@@ -229,9 +233,17 @@ static void test_bss_max_idle_sta(void)
static void test_bss_max_idle_softap(void)
{
s_keep_alive_received = false;
start_wifi_as_softap();
vTaskDelay((CONNECT_TIMEOUT_MS + MAX_IDLE_PERIOD * 1000) / portTICK_PERIOD_MS);
EventBits_t bits = xEventGroupWaitBits(wifi_events,
WIFI_AP_STA_CONNECTED,
pdFALSE,
pdFALSE,
pdMS_TO_TICKS(STA_ASSOC_WAIT_MS));
TEST_ASSERT_MESSAGE(bits & WIFI_AP_STA_CONNECTED, "station did not connect to softap in time");
vTaskDelay(pdMS_TO_TICKS(MAX_IDLE_PERIOD * 1024));
TEST_ASSERT(s_keep_alive_received);
stop_wifi();