From 398efb45bf3403fb8208ae6d35900e7edc788b6d Mon Sep 17 00:00:00 2001 From: Karun Kumar Eagalapati Date: Mon, 15 Dec 2025 15:03:03 +0530 Subject: [PATCH 1/5] [nrf fromlist] manifest: Update nrf_wifi with latest rpu bins 1. Fixes an issue in UMAC where valid P2P devices were filtered during a connect scan due to strict SSID length matching. 2. P2P NOA Bug Fix. 3. Linker issue fix in Raw modes. 4. LMAC BIMG offset change. 4. RPU Version update from 1.2.14.6 to 1.2.14.7. Upstream PR #: 101041 Signed-off-by: Karun Kumar Eagalapati --- west.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/west.yml b/west.yml index b9a1a35b79e..8f98ecd0671 100644 --- a/west.yml +++ b/west.yml @@ -337,7 +337,7 @@ manifest: revision: 5eec7aca321735f5fc8e3e7c79e162f0e9810b16 path: modules/bsim_hw_models/nrf_hw_models - name: nrf_wifi - revision: 97c6751657187ab811e73c36cc4c47acb1783fff + revision: pull/94/head path: modules/lib/nrf_wifi - name: open-amp revision: c30a6d8b92fcebdb797fc1a7698e8729e250f637 From e10cf92e86e5a362c159ccce313a2a7557a5f90d Mon Sep 17 00:00:00 2001 From: Kapil Bhatt Date: Tue, 16 Dec 2025 11:25:45 +0000 Subject: [PATCH 2/5] [nrf fromlist] manifest: Update hostap revision for p2p fixes Listen for probe request in GO mode Reducing a delay in p2p connection. Upstream PR #: 101041 Signed-off-by: Kapil Bhatt --- west.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/west.yml b/west.yml index 8f98ecd0671..0f45e45ddbc 100644 --- a/west.yml +++ b/west.yml @@ -281,7 +281,7 @@ manifest: - hal - name: hostap path: modules/lib/hostap - revision: 528eb2d95e35c7c9b187a15d2fb7f6e5bb983181 + revision: pull/117/head - name: liblc3 revision: 48bbd3eacd36e99a57317a0a4867002e0b09e183 path: modules/lib/liblc3 From b3c501e1a871a2f6317c424b508e2d650912e6a7 Mon Sep 17 00:00:00 2001 From: Chaitanya Tata Date: Fri, 19 Dec 2025 01:44:34 +0530 Subject: [PATCH 3/5] [nrf fromlist] drivers: nrf_wifi: Set VIF type for non-STA This is used in SoftAP/P2P GO modes. Upstream PR #: 97183 Signed-off-by: Chaitanya Tata --- drivers/wifi/nrf_wifi/src/wpa_supp_if.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/wifi/nrf_wifi/src/wpa_supp_if.c b/drivers/wifi/nrf_wifi/src/wpa_supp_if.c index 5a69676e47a..37759dd9b25 100644 --- a/drivers/wifi/nrf_wifi/src/wpa_supp_if.c +++ b/drivers/wifi/nrf_wifi/src/wpa_supp_if.c @@ -2312,6 +2312,7 @@ static int nrf_wifi_iftype_change(struct nrf_wifi_vif_ctx_zep *vif_ctx_zep, int goto out; } + vif_ctx_zep->if_type = iftype; ret = nrf_wifi_vif_state_change(vif_ctx_zep, NRF_WIFI_FMAC_IF_OP_STATE_UP); if (ret) { LOG_ERR("%s: Failed to set interface up", __func__); From 738cce955e9356dc02a2ad2e35af552f2efc656a Mon Sep 17 00:00:00 2001 From: Chaitanya Tata Date: Fri, 19 Dec 2025 01:42:32 +0530 Subject: [PATCH 4/5] [nrf fromlist] drivers: nrf_wifi: Fix the port authorization logic For non-STA mode the vif level authorized flag is unused, simply allow all group traffic and for unicast traffic check respective peer status. Upstream PR #: 97183 Signed-off-by: Chaitanya Tata --- drivers/wifi/nrf_wifi/src/net_if.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/drivers/wifi/nrf_wifi/src/net_if.c b/drivers/wifi/nrf_wifi/src/net_if.c index af3186d9e42..0ce2caaa9e0 100644 --- a/drivers/wifi/nrf_wifi/src/net_if.c +++ b/drivers/wifi/nrf_wifi/src/net_if.c @@ -454,15 +454,20 @@ int nrf_wifi_if_send(const struct device *dev, goto drop; } - /* VIF or per-peer depending on RA */ - if (peer_id == MAX_PEERS) { + /* Use authorized from vif_ctx_zep for STA mode, or per-peer for AP/GO */ + if (vif_ctx_zep->if_type == NRF_WIFI_IFTYPE_STATION) { authorized = vif_ctx_zep->authorized; - } else { + } else if (peer_id != MAX_PEERS) { authorized = sys_dev_ctx->tx_config.peers[peer_id].authorized; + } else { + /* non-STA modes always allow group frames */ + authorized = true; } if ((vif_ctx_zep->if_carr_state != NRF_WIFI_FMAC_IF_CARR_STATE_ON) || (!authorized && !is_eapol(pkt))) { + LOG_DBG("%s: carrier state: %d, authorized: %d, is_eapol: %d", + __func__, vif_ctx_zep->if_carr_state, authorized, is_eapol(pkt)); ret = -EPERM; goto drop; } From a3a18adc6b81d171b461afb9e76edd7f9837d241 Mon Sep 17 00:00:00 2001 From: Ravi Dondaputi Date: Fri, 19 Dec 2025 23:19:01 +0530 Subject: [PATCH 5/5] [nrf fromlist] drivers: wifi: nrf_wifi: Use filter_ssid for connect scan Modify the scan logic to use filter_ssids for connect scan and use ssids for other cases. Upstream PR #: 97183 Signed-off-by: Ravi Dondaputi --- drivers/wifi/nrf_wifi/src/wpa_supp_if.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/drivers/wifi/nrf_wifi/src/wpa_supp_if.c b/drivers/wifi/nrf_wifi/src/wpa_supp_if.c index 37759dd9b25..8acf6389984 100644 --- a/drivers/wifi/nrf_wifi/src/wpa_supp_if.c +++ b/drivers/wifi/nrf_wifi/src/wpa_supp_if.c @@ -546,7 +546,18 @@ int nrf_wifi_wpa_supp_scan2(void *if_priv, struct wpa_driver_scan_params *params scan_info->scan_params.num_scan_channels = indx; } - if (params->num_ssids) { + + if (params->filter_ssids) { + scan_info->scan_params.num_scan_ssids = params->num_filter_ssids; + for (indx = 0; indx < params->num_filter_ssids; indx++) { + memcpy(scan_info->scan_params.scan_ssids[indx].nrf_wifi_ssid, + params->filter_ssids[indx].ssid, + params->filter_ssids[indx].ssid_len); + + scan_info->scan_params.scan_ssids[indx].nrf_wifi_ssid_len = + params->filter_ssids[indx].ssid_len; + } + } else if (params->num_ssids) { scan_info->scan_params.num_scan_ssids = params->num_ssids; for (indx = 0; indx < params->num_ssids; indx++) {