[PATCH 12/35] wpa_supplicant: Add more NAN driver flags

Andrei Otcheretianski andrei.otcheretianski at intel.com
Mon Oct 20 05:27:47 PDT 2025


Add new NAN driver flags to indicate support for:
  - Synchronization offload and support for additional NAN sync
    parameters.
  - Support for user space NAN DE implementation which requires the
    driver to send DW notification and be able to transmit and receive
    SDF frames over NAN device interface with the correct timing.

Signed-off-by: Andrei Otcheretianski <andrei.otcheretianski at intel.com>
---
 src/drivers/driver.h              | 5 +++++
 wpa_supplicant/wpa_supplicant.c   | 4 ++++
 wpa_supplicant/wpa_supplicant_i.h | 1 +
 3 files changed, 10 insertions(+)

diff --git a/src/drivers/driver.h b/src/drivers/driver.h
index 720be1cce9..7848aeabbf 100644
--- a/src/drivers/driver.h
+++ b/src/drivers/driver.h
@@ -2574,7 +2574,12 @@ struct wpa_driver_capa {
 	u8 max_tx_sts_gt_80;
 
 #ifdef CONFIG_NAN
+/* Driver supports dual band NAN operation */
 #define WPA_DRIVER_FLAGS_NAN_SUPPORT_DUAL_BAND		0x00000001
+/* Driver supports NAN synchronization configuration */
+#define WPA_DRIVER_FLAGS_NAN_SUPPORT_SYNC_CONFIG	0x00000002
+/* Driver supports DW notifications and SDF TX/RX over NAN device interface */
+#define WPA_DRIVER_FLAGS_NAN_SUPPORT_USERSPACE_DE	0x00000008
 	u32 nan_flags;
 #endif /* CONFIG_NAN */
 };
diff --git a/wpa_supplicant/wpa_supplicant.c b/wpa_supplicant/wpa_supplicant.c
index 2edabec56c..a9311adbf1 100644
--- a/wpa_supplicant/wpa_supplicant.c
+++ b/wpa_supplicant/wpa_supplicant.c
@@ -7938,6 +7938,10 @@ static int wpa_supplicant_init_iface(struct wpa_supplicant *wpa_s,
 		return -1;
 #endif /* CONFIG_NAN_USD */
 
+#ifdef CONFIG_NAN
+	wpa_s->nan_drv_flags = capa.nan_flags;
+#endif /* CONFIG_NAN */
+
 	if (wpa_supplicant_init_eapol(wpa_s) < 0)
 		return -1;
 	wpa_sm_set_eapol(wpa_s->wpa, wpa_s->eapol);
diff --git a/wpa_supplicant/wpa_supplicant_i.h b/wpa_supplicant/wpa_supplicant_i.h
index 22450c3316..7522e861f1 100644
--- a/wpa_supplicant/wpa_supplicant_i.h
+++ b/wpa_supplicant/wpa_supplicant_i.h
@@ -1650,6 +1650,7 @@ struct wpa_supplicant {
 	bool nan_mgmt;
 
 #ifdef CONFIG_NAN
+	u32 nan_drv_flags;
 	struct nan_data *nan;
 #endif
 };
-- 
2.49.0




More information about the Hostap mailing list