Commit graph

789 commits

Author SHA1 Message Date
Murali Thokala
03c5f5f083 drivers: wifi: Swctrl1 configuration for coex
Support to configure swctrl1 as input or output for coexistence.

Signed-off-by: Murali Thokala <Murali.Thokala@nordicsemi.no>
2025-04-03 11:08:15 +02:00
Kapil Bhatt
a934af8f89 drivers: nrf_wifi: Add Kconfig for ps poll and stbc
Add Kconfig in init command for maximum ps poll failures count
and stbc enable in HT.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-04-03 11:08:15 +02:00
Chaitanya Tata
0cf47478ee drivers: nrf_wifi: Add a new stats command that reads from memory
Instead of a command and event mechanism that relies on processors being
active (UMAC/LMAC) add a new command that reads from the RPU memory
directly for all stats, useful in debugging when processors are
crashed/non-functional.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-03 11:08:15 +02:00
Nitin Pandey
5661a5b25a driver: wifi: siwx91x: Add support for WPA_AUTO_PERSONAL
- Added support for wpa-wpa2 mixed mode in ap enable
- Added support for WPA3 Transition mode in STA connect

Signed-off-by: Nitin Pandey <nitin.pandey@silabs.com>
2025-03-31 21:59:51 +02:00
Chaitanya Tata
5119f9c379 drivers: nrf_wifi: Implement TX zero-copy feature
This uses the network packet as is without the need for a copy all the
way till the packet is handed over to RPU.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-03-28 16:11:05 +01:00
Marek Matej
c9e1ff3876 samples: net: wifi: esp32: Enable config by driver
Move repeated config NET_L2_ETHERNET under the driver Kconfig.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-03-27 21:33:24 +01:00
Kapil Bhatt
3ef187dee6 drivers: nrf_wifi: Add prompt to Kconfig
Add prompt to Kconfig NRF70_SYSTEM_WITH_RAW_MODES.
It is assigned in a configuration file, but is not directly
user-configurable (has no prompt). It gets its value
indirectly from other symbols.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-03-27 17:17:42 +01:00
Robert Lubos
a61287e876 net: lib: tls_credentials: Rename TLS_CREDENTIAL_SERVER_CERTIFICATE
TLS_CREDENTIAL_SERVER_CERTIFICATE credential type is misleading, as in
fact it just represents a public certificate, it does not matter if the
certificate belongs to a server or a client. And actually, it was
already used in-tree for clients as well, for example in LwM2M.

Therefore rename the credential type to a more generic
TLS_CREDENTIAL_PUBLIC_CERTIFICATE and deprecate the old one.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-03-21 14:18:52 +01:00
Chaitanya Tata
71931a0864 drivers: nrf_wifi: Add a config option for variable bufs override
We need a way to disable the variable buffers override.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-03-20 21:58:36 +01:00
Chaitanya Tata
a409d31169 drivers: nrf_wifi: Fix get config
Only a single condition is specific to RAW mode, rest should be
unconditional.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-03-20 21:58:36 +01:00
Arunmani Alagarsamy
601a9fab80 drivers: wifi: siwx91x: Add Wi-Fi status and statistics
This commit adds support for Wi-Fi status and statistics
functionalities:
- wifi status	  : Displays the current mode status.
- wifi statistics : Provides details on the transmitted and
                    received packet counts.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-03-20 12:17:22 +01:00
Arunmani Alagarsamy
2f29cb67b7 drivers: wifi: siwx91x: Add AP station disconnect functionality
This commit adds support the following wifi commands:
- wifi ap disconnect: Disconnect a specific station from the AP.
- wifi ap stations: List connected devices.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-03-20 12:17:22 +01:00
Arunmani Alagarsamy
7fc0a7b2d4 drivers: wifi: siwx91x: Add Access Point (AP) mode support
This commit introduces Access Point (AP) mode support
It enables the following AP-related commands:
- ap enable: Enable the AP mode.
- ap disable: Disable the AP mode.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-03-20 12:17:22 +01:00
Arunmani Alagarsamy
b578b06970 drivers: wifi: siwx91x: Add run time opermode
This commit enables the device to change its operating mode
at runtime.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-03-20 12:17:22 +01:00
Kapil Bhatt
9f7307fe84 drivers: wifi: Set reorder buffer size to half of RX buffers
For different values of reorder buffer throughputs are consistent,
Setting reorder buffer size to half of the RX buffers configured.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-03-19 08:51:09 -04:00
Kapil Bhatt
1179014e10 drivers: nrf_wifi: Disable mgmt buffer offload
During raw scan, Need to disable NRF_WIFI_MGMT_BUFF_OFFLOAD.
UMAC will send beacon and probe responses directly to the host,
regardless of the mgmt_buff_offload flag's value.
Host needs to resubmit buffers to LMAC.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-03-19 10:57:27 +01:00
Jérôme Pouiller
1f73ca3919 driver: wifi: siwx91x: Fix scan timeout
WiseConnect documentation says:

  Default value of 100 millisecs is used when
  SL_WIFI_DEFAULT_ACTIVE_CHANNEL_SCAN_TIME is passed".

However, this is not true. Currently, DEFAULT_ACTIVE_CHANNEL_SCAN_TIME
is 0xFFFF and the scan time is set to 65 seconds.

To have the default scan time, the value '0' must be used.

Fortunately, '0' is also the value we get when the user does not specify
any default scan time. So the code can be simplified.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-03-18 16:43:44 +01:00
Triveni Danda
3a3f4ab3ea drivers: nrf_wifi: Set default stack size of net_mgmt thread
Fixes overflow issue in the net_mgmt thread
during network interface state changes.

Signed-off-by: Triveni Danda <triveni.danda@nordicsemi.no>
2025-03-17 13:57:22 +01:00
Hui Bai
c61afbfa40 driver: wifi: Update security type to EAP for enterprise AP in scan results
Updated security type to WIFI_SECURITY_TYPE_EAP for enterprise AP
when handling scan results.

Signed-off-by: Hui Bai <hui.bai@nxp.com>
2025-03-13 16:57:15 +00:00
Nitin Pandey
652c5f42ac driver: wifi: siwx91x: Fix scan params error for 5Ghz band
- Rejected non 2.4GHz band channels from Wifi-Scan.
- Overrode the WIFI_MGMT_SCAN_CHAN_MAX_MANUAL parameter to 50.
- Added check for wrong interface and invalid states

Signed-off-by: Nitin Pandey <nitin.pandey@silabs.com>
2025-03-13 10:49:03 +01:00
Chris Friedt
7ee9c01f54 drivers: wifi: nxp: do not use deprecated posix kconfig
Update NXP_WIFI_SIGMA_AGENT to use non-deprecated POSIX Kconfig
options.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-03-12 19:03:52 +01:00
Vivekananda Uppunda
48989e49ed drivers: nrf_wifi: Fix return value for getting current reg domain
It is observed that the regulatory domain API returns a failure
even when it has successfully completed its task. This change
addresses a minor fix to return the proper value to the user
when attempting to set the regulatory domain.

Signed-off-by: Vivekananda Uppunda <vivekananda.uppunda@nordicsemi.no>
2025-03-12 09:53:52 +01:00
Kapil Bhatt
928534455b nrf_wifi: src: Fix include file path
With recent code restructuring file name and path
has been changed in nrf_wifi lib.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-03-10 15:20:08 +01:00
Xinyu Hong
0c9b7eb9d4 drivers: wifi: nxp: Support wifi ap disconnect
For embedded supplicant case add process to
support wifi ap disconnect station.

Signed-off-by: Xinyu Hong <xinyu.hong@nxp.com>
2025-03-07 19:52:00 +01:00
Ravi Dondaputi
aa0cb68c6f drivers: wifi: Create dedicated mem pool for Wi-Fi driver
Create dedicated memory pools for Wi-Fi management and
data operations (defaults: 20KB for management and 130KB for data).
Setting Data pool to 110KB for non-Nordic SOCs to resolve
RAM overflows seen in twister runs.

Remove the `HEAP_MEM_POOL_ADD_SIZE_NRF70` hint since we are
creating separate heaps for driver and not allocating from
system heap.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2025-03-07 19:42:10 +01:00
Sylvio Alves
183b74c558 driver: wifi: esp32: fix send event when not connected
Make sure send event returns error when device is not connected
into STA or have AP mode in place.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-03-06 08:35:29 +00:00
Maochen Wang
e242c08aef drivers: wifi: nxp: fix the wrong security type print of WPA2
For embedded supplicant case, when connects to WPA2 AP, driver will set
the key_mgmt to 'WLAN_KEY_MGMT_PSK | WLAN_KEY_MGMT_PSK_SHA256', as mfp
is default WIFI_MFP_OPTIONAL. Therefore, when using 'wifi status' to
get the security type, when the key_mgmt is 'WLAN_KEY_MGMT_PSK |
WLAN_KEY_MGMT_PSK_SHA256', the security type should be
'WIFI_SECURITY_TYPE_PSK'.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-03-04 17:26:29 +01:00
rahul gurram
ae857a1585 driver: wifi: siwx917: Fix the return case gracefully
Freeing the buf when sl_wifi_send_raw_data_frame() api returns
the error instead of success

Signed-off-by: rahul gurram <rahul.gurram@silabs.com>
2025-03-04 12:19:01 +00:00
Arunmani Alagarsamy
c75fadbdeb drivers: wifi: siwx917: Set security configuration to default
- Updated Wi-Fi security configuration to use default, allowing
  the device to select the best available encryption.
- Removed unsupported security features.
- Replaced `WIFI_SECURITY_TYPE_SAE` with `WIFI_SECURITY_TYPE_SAE_AUTO`
  to enable automatic selection between SAE-HNP and SAE-H2E,
  as the device supports both modes by default.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-02-20 14:54:27 +00:00
Oskari Seppä
de91ecdc5f drivers: wifi: esp32: Fix AP-STA mode interface init order
Wi-Fi AP-STA mode fails on ESP32 due to incorrect interface
initialization. In AP-STA mode, esp32_wifi_init first sets the driver's AP
interface, followed by the STA interface. However, the driver initializes
them in reverse order, causing both to read incorrect device data and
resulting in a "Wi-Fi not in station mode" error.
This fix handles STA and AP initialization in separate functions and
checks for correct mode in esp32_wifi_status.
Tested on a custom ESP32-S3-WROOM-1-N4R2 board, where both STA and AP
can connect, send, and receive data.

Signed-off-by: Oskari Seppä <seppaoskari@gmail.com>
2025-02-18 18:37:49 +01:00
Rex Chen
8a814dd355 drivers: wifi: nxp: fix sap stations list shows empty in open mode
Start ap with open mode, external station connected to sap,
wifi ap stations list shows empty, because no
'WLAN_REASON_UAP_CLIENT_CONN' is received, skip add
station infomation to station list,so station list shows empty.
Fix issue by trigger this event with
'WLAN_REASON_UAP_CLIENT_ASSOC'in open mode.

Signed-off-by: Rex Chen <rex.chen_1@nxp.com>
2025-02-17 05:39:41 +01:00
Maochen Wang
2383a5f23c drivers: wifi: nxp: fix wifi stats cmd hang when net_if down
After net interface is down and the driver deinit, should not interact
with driver and FW when call the 'wifi statistics' CMD.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-02-17 05:39:28 +01:00
Rex Chen
fb8b28a9ec drivers: wifi: nxp: embedded supplicant support 11v BTM query
Add 11v BTM query implementation for embedded supplicant L2 cmd.

Signed-off-by: Rex Chen <rex.chen_1@nxp.com>
2025-02-14 19:40:09 +00:00
Arunmani Alagarsamy
9d64cb4186 driver: wifi: siwx91x: Add active and passive dwell time
This commit adds support for configuring dwell times for both active and
passive Wi-Fi scans. The dwell time specifies the duration the device
spends on each channel during a scan.

Co-authored-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-02-14 19:14:08 +00:00
Arunmani Alagarsamy
2e668cfc1e driver: wifi: siwx91x: Add single and multi-channel scan support
This commit introduces support for single and multi-channel Wi-Fi scans.
The device can now scan one specific channel or multiple specified
channels.

Co-authored-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-02-14 19:14:08 +00:00
Arunmani Alagarsamy
4ee4cc39a3 driver: wifi: siwx91x: Add configurable maximum BSS scan
This commit introduces support for limiting the number of BSS scan
results returned by the siwx91x Wi-Fi driver. If scan_max_bss_cnt is
specified, the driver will return up to the specified count of BSS
results. If not specified, the driver defaults to returning all
available results.

Co-authored-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-02-14 19:14:08 +00:00
Arunmani Alagarsamy
271bb8b7b0 driver: wifi: siwx91x: Add direct ssid scan support
This commit introduces support for direct SSID scans The feature allows
the device to send the probe requests and listen the beacon frame on the
specified SSID.

Co-authored-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-02-14 19:14:08 +00:00
Rex Chen
302089f311 drivers: wifi: nxp: support set override calibration data
Add OVERRIDE_CALIBRATION_DATA macro to support set specific
calibration data.

Signed-off-by: Rex Chen <rex.chen_1@nxp.com>
2025-02-14 19:13:02 +00:00
Xinyu Hong
b1fe93e047 drivers: wifi: nxp: Fix wrong current PHY TX rate
For embedded supplicant case, fix current PHY TX rate is 0
always after STAUT connects to Ex-AP

Signed-off-by: Xinyu Hong <xinyu.hong@nxp.com>
2025-02-14 06:57:17 +01:00
Sylvio Alves
10860ecbba soc: espressif: enable Wi-Fi/Bluetooth SW coexistence mgmt
Update and enable Wi-Fi/Bluetooth software coexistence management.
This improves package handling and is recommended to be used
in high traffic scenarios.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-02-12 20:20:11 +01:00
Sachin D Kulkarni
5f69ab752b drivers: nrf_wifi: Fix compilation issues for SoftAP mode.
Fix compilation issues for SoftAP mode which were missed in the mode
specific code changes.

Signed-off-by: Sachin D Kulkarni <Sachin.Kulkarni@nordicsemi.no>
2025-02-12 20:18:47 +01:00
Abhinav Kulkarni
296f91a02a drivers: wifi: nxp: fix ap status ACS channel shown as 0
Update wifi ap status command to reflect acs channel correctly.

Signed-off-by: Abhinav Kulkarni <abhinav.kulkarni@nxp.com>
2025-02-12 12:23:35 +01:00
Fengming Ye
82bdc15b7e drivers: wifi: nxp: add ACS support for l2
Add ACS support in ap enable ops for embedded supplicant.
Channel set to 0 means ACS mode.

Signed-off-by: Fengming Ye <frank.ye@nxp.com>
2025-02-12 12:23:35 +01:00
Fengming Ye
710231406e drivers: wifi: nxp: add support for soft AP disabled case
Add correct macro guard for soft AP only code.

Signed-off-by: Fengming Ye <frank.ye@nxp.com>
2025-02-12 09:40:38 +01:00
Fengming Ye
4ffa27568d wifi: nxp: kconfig: decouple dependency of soft AP
Decouple dependency of CONFIG_NXP_WIFI_SOFTAP_SUPPORT.
Add wifi defconfig to set default kconfig options when soft AP
enabled.

Signed-off-by: Fengming Ye <frank.ye@nxp.com>
2025-02-12 09:40:38 +01:00
Fengming Ye
f82de1ff09 drivers: wifi: nxp: add soft AP status for some fields
For embedded supplicant soft AP mode, add beacon period, DTIM period
and BTWT support status fields.

Signed-off-by: Fengming Ye <frank.ye@nxp.com>
2025-02-12 09:40:38 +01:00
Fengming Ye
121c3f0d95 drivers: wifi: nxp: add wifi statistics support
Add support for wifi overrun count, beacon received and beacon missed
count.
Add support for wifi statistics clear.

Signed-off-by: Fengming Ye <frank.ye@nxp.com>
2025-02-12 09:40:38 +01:00
Jérôme Pouiller
1544354862 drivers: wifi: Introduce SiWx91x WiFi driver
This driver allow to use Zephyr native IP stack or the IP stack provided
by HAL / WiseConnect.

The WiseConnect implementation may take advantage of the specific
features provided by the 917 (power consumption, speed,
validation...).

Some notable features are not available with this interface:
  - It seems Zephyr does not provide API to offload multicast membership
    management. User should be to directly call WiseConnect APIs
  - Support for ICMP frames is difficult. Note that WiseConnect
    automatically answer to ping request. It is just not possible to
    send ping requests and receive ping responses.
  - Zephyr and WiseConnect both support TLS offloading. However this
    patch does not implement it.
  - Reentrancy in the WiseConnect side is uncertain.

This implementation has been tested with samples/net/wifi/ (which relies
on subsys/net/lib/shell).

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-02-11 22:07:11 +01:00
Sachin D Kulkarni
a6dfdb9b8c drivers: nrf_wifi: Use mode specific APIs
Update the nrf70 Wi-Fi driver to use the mode specific
APIs (as a precursor to enable combining modes as required).

Signed-off-by: Sachin D Kulkarni <Sachin.Kulkarni@nordicsemi.no>
2025-02-10 09:02:55 +01:00
Sachin D Kulkarni
922d207c59 drivers: nrf_wifi: Use mode specific data structures
Update the driver to use the updated mode specific
data structure names.

Signed-off-by: Sachin D Kulkarni <Sachin.Kulkarni@nordicsemi.no>
2025-02-10 09:02:55 +01:00