ath10k: move ath10k_mac_tdls_vif*() functions
To be able to use ath10k_mac_tdls_vif_stations_count() in ath10k_hw_scan() in the following patch, move the functions earlier in the file. This commit is pure code move, no functional changes. Signed-off-by: Anilkumar Kolli <akolli@qti.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
This commit is contained in:
parent
20665a9076
commit
dd0f9cd6bc
@ -5585,6 +5585,59 @@ static void ath10k_mac_op_set_coverage_class(struct ieee80211_hw *hw, s16 value)
|
||||
ar->hw_params.hw_ops->set_coverage_class(ar, value);
|
||||
}
|
||||
|
||||
struct ath10k_mac_tdls_iter_data {
|
||||
u32 num_tdls_stations;
|
||||
struct ieee80211_vif *curr_vif;
|
||||
};
|
||||
|
||||
static void ath10k_mac_tdls_vif_stations_count_iter(void *data,
|
||||
struct ieee80211_sta *sta)
|
||||
{
|
||||
struct ath10k_mac_tdls_iter_data *iter_data = data;
|
||||
struct ath10k_sta *arsta = (struct ath10k_sta *)sta->drv_priv;
|
||||
struct ieee80211_vif *sta_vif = arsta->arvif->vif;
|
||||
|
||||
if (sta->tdls && sta_vif == iter_data->curr_vif)
|
||||
iter_data->num_tdls_stations++;
|
||||
}
|
||||
|
||||
static int ath10k_mac_tdls_vif_stations_count(struct ieee80211_hw *hw,
|
||||
struct ieee80211_vif *vif)
|
||||
{
|
||||
struct ath10k_mac_tdls_iter_data data = {};
|
||||
|
||||
data.curr_vif = vif;
|
||||
|
||||
ieee80211_iterate_stations_atomic(hw,
|
||||
ath10k_mac_tdls_vif_stations_count_iter,
|
||||
&data);
|
||||
return data.num_tdls_stations;
|
||||
}
|
||||
|
||||
static void ath10k_mac_tdls_vifs_count_iter(void *data, u8 *mac,
|
||||
struct ieee80211_vif *vif)
|
||||
{
|
||||
struct ath10k_vif *arvif = (void *)vif->drv_priv;
|
||||
int *num_tdls_vifs = data;
|
||||
|
||||
if (vif->type != NL80211_IFTYPE_STATION)
|
||||
return;
|
||||
|
||||
if (ath10k_mac_tdls_vif_stations_count(arvif->ar->hw, vif) > 0)
|
||||
(*num_tdls_vifs)++;
|
||||
}
|
||||
|
||||
static int ath10k_mac_tdls_vifs_count(struct ieee80211_hw *hw)
|
||||
{
|
||||
int num_tdls_vifs = 0;
|
||||
|
||||
ieee80211_iterate_active_interfaces_atomic(hw,
|
||||
IEEE80211_IFACE_ITER_NORMAL,
|
||||
ath10k_mac_tdls_vifs_count_iter,
|
||||
&num_tdls_vifs);
|
||||
return num_tdls_vifs;
|
||||
}
|
||||
|
||||
static int ath10k_hw_scan(struct ieee80211_hw *hw,
|
||||
struct ieee80211_vif *vif,
|
||||
struct ieee80211_scan_request *hw_req)
|
||||
@ -6013,59 +6066,6 @@ static void ath10k_mac_dec_num_stations(struct ath10k_vif *arvif,
|
||||
ar->num_stations--;
|
||||
}
|
||||
|
||||
struct ath10k_mac_tdls_iter_data {
|
||||
u32 num_tdls_stations;
|
||||
struct ieee80211_vif *curr_vif;
|
||||
};
|
||||
|
||||
static void ath10k_mac_tdls_vif_stations_count_iter(void *data,
|
||||
struct ieee80211_sta *sta)
|
||||
{
|
||||
struct ath10k_mac_tdls_iter_data *iter_data = data;
|
||||
struct ath10k_sta *arsta = (struct ath10k_sta *)sta->drv_priv;
|
||||
struct ieee80211_vif *sta_vif = arsta->arvif->vif;
|
||||
|
||||
if (sta->tdls && sta_vif == iter_data->curr_vif)
|
||||
iter_data->num_tdls_stations++;
|
||||
}
|
||||
|
||||
static int ath10k_mac_tdls_vif_stations_count(struct ieee80211_hw *hw,
|
||||
struct ieee80211_vif *vif)
|
||||
{
|
||||
struct ath10k_mac_tdls_iter_data data = {};
|
||||
|
||||
data.curr_vif = vif;
|
||||
|
||||
ieee80211_iterate_stations_atomic(hw,
|
||||
ath10k_mac_tdls_vif_stations_count_iter,
|
||||
&data);
|
||||
return data.num_tdls_stations;
|
||||
}
|
||||
|
||||
static void ath10k_mac_tdls_vifs_count_iter(void *data, u8 *mac,
|
||||
struct ieee80211_vif *vif)
|
||||
{
|
||||
struct ath10k_vif *arvif = (void *)vif->drv_priv;
|
||||
int *num_tdls_vifs = data;
|
||||
|
||||
if (vif->type != NL80211_IFTYPE_STATION)
|
||||
return;
|
||||
|
||||
if (ath10k_mac_tdls_vif_stations_count(arvif->ar->hw, vif) > 0)
|
||||
(*num_tdls_vifs)++;
|
||||
}
|
||||
|
||||
static int ath10k_mac_tdls_vifs_count(struct ieee80211_hw *hw)
|
||||
{
|
||||
int num_tdls_vifs = 0;
|
||||
|
||||
ieee80211_iterate_active_interfaces_atomic(hw,
|
||||
IEEE80211_IFACE_ITER_NORMAL,
|
||||
ath10k_mac_tdls_vifs_count_iter,
|
||||
&num_tdls_vifs);
|
||||
return num_tdls_vifs;
|
||||
}
|
||||
|
||||
static int ath10k_sta_state(struct ieee80211_hw *hw,
|
||||
struct ieee80211_vif *vif,
|
||||
struct ieee80211_sta *sta,
|
||||
|
Loading…
Reference in New Issue
Block a user