xref: /linux/drivers/net/wireless/intel/iwlwifi/mld/ftm-initiator.h (revision 1a9239bb4253f9076b5b4b2a1a4e8d7defd77a95)
1 /* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
2 /*
3  * Copyright (C) 2025 Intel Corporation
4  */
5 #ifndef __iwl_mld_ftm_initiator_h__
6 #define __iwl_mld_ftm_initiator_h__
7 
8 /**
9  * struct ftm_initiator_data - FTM initiator data
10  *
11  * @req: a pointer to cfg80211 FTM request
12  * @req_wdev: a pointer to the wdev that requested the current FTM request
13  * @responses: the number of responses received for the current FTM session.
14  *	Used for tracking the burst index in a periodic request.
15  */
16 struct ftm_initiator_data {
17 		struct cfg80211_pmsr_request *req;
18 		struct wireless_dev *req_wdev;
19 		int responses[IWL_TOF_MAX_APS];
20 };
21 
22 int iwl_mld_ftm_start(struct iwl_mld *mld, struct ieee80211_vif *vif,
23 		      struct cfg80211_pmsr_request *req);
24 
25 void iwl_mld_handle_ftm_resp_notif(struct iwl_mld *mld,
26 				   struct iwl_rx_packet *pkt);
27 void iwl_mld_ftm_restart_cleanup(struct iwl_mld *mld);
28 
29 #endif /* __iwl_mld_ftm_initiator_h__ */
30