19e978d8eSIlan Peer /* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */ 29e978d8eSIlan Peer /* 39e978d8eSIlan Peer * Copyright (C) 2025 Intel Corporation 49e978d8eSIlan Peer */ 5*350d91a2SJohannes Berg #ifndef __iwl_mld_nan_h__ 6*350d91a2SJohannes Berg #define __iwl_mld_nan_h__ 79e978d8eSIlan Peer #include <net/cfg80211.h> 89e978d8eSIlan Peer #include <linux/etherdevice.h> 99e978d8eSIlan Peer 109e978d8eSIlan Peer bool iwl_mld_nan_supported(struct iwl_mld *mld); 119e978d8eSIlan Peer int iwl_mld_start_nan(struct ieee80211_hw *hw, 129e978d8eSIlan Peer struct ieee80211_vif *vif, 139e978d8eSIlan Peer struct cfg80211_nan_conf *conf); 14ab410758SIlan Peer int iwl_mld_nan_change_config(struct ieee80211_hw *hw, 15ab410758SIlan Peer struct ieee80211_vif *vif, 16ab410758SIlan Peer struct cfg80211_nan_conf *conf, 17ab410758SIlan Peer u32 changes); 189e978d8eSIlan Peer int iwl_mld_stop_nan(struct ieee80211_hw *hw, 199e978d8eSIlan Peer struct ieee80211_vif *vif); 209e978d8eSIlan Peer void iwl_mld_handle_nan_cluster_notif(struct iwl_mld *mld, 219e978d8eSIlan Peer struct iwl_rx_packet *pkt); 229e978d8eSIlan Peer void iwl_mld_handle_nan_dw_end_notif(struct iwl_mld *mld, 239e978d8eSIlan Peer struct iwl_rx_packet *pkt); 2460094146SIlan Peer bool iwl_mld_cancel_nan_cluster_notif(struct iwl_mld *mld, 2560094146SIlan Peer struct iwl_rx_packet *pkt, 2660094146SIlan Peer u32 obj_id); 2760094146SIlan Peer bool iwl_mld_cancel_nan_dw_end_notif(struct iwl_mld *mld, 2860094146SIlan Peer struct iwl_rx_packet *pkt, 2960094146SIlan Peer u32 obj_id); 30*350d91a2SJohannes Berg 31*350d91a2SJohannes Berg #endif /* __iwl_mld_nan_h__ */ 32