mac80211: mlme: move in RSSI reporting code
This code is tightly coupled to the sdata->u.mgd data structure, so there's no reason for it to be in utils. Move it to mlme.c. Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
parent
f5bf586aad
commit
f344c58c25
|
@ -6379,3 +6379,43 @@ void ieee80211_cqm_beacon_loss_notify(struct ieee80211_vif *vif, gfp_t gfp)
|
|||
cfg80211_cqm_beacon_loss_notify(sdata->dev, gfp);
|
||||
}
|
||||
EXPORT_SYMBOL(ieee80211_cqm_beacon_loss_notify);
|
||||
|
||||
static void _ieee80211_enable_rssi_reports(struct ieee80211_sub_if_data *sdata,
|
||||
int rssi_min_thold,
|
||||
int rssi_max_thold)
|
||||
{
|
||||
trace_api_enable_rssi_reports(sdata, rssi_min_thold, rssi_max_thold);
|
||||
|
||||
if (WARN_ON(sdata->vif.type != NL80211_IFTYPE_STATION))
|
||||
return;
|
||||
|
||||
/*
|
||||
* Scale up threshold values before storing it, as the RSSI averaging
|
||||
* algorithm uses a scaled up value as well. Change this scaling
|
||||
* factor if the RSSI averaging algorithm changes.
|
||||
*/
|
||||
sdata->u.mgd.rssi_min_thold = rssi_min_thold*16;
|
||||
sdata->u.mgd.rssi_max_thold = rssi_max_thold*16;
|
||||
}
|
||||
|
||||
void ieee80211_enable_rssi_reports(struct ieee80211_vif *vif,
|
||||
int rssi_min_thold,
|
||||
int rssi_max_thold)
|
||||
{
|
||||
struct ieee80211_sub_if_data *sdata = vif_to_sdata(vif);
|
||||
|
||||
WARN_ON(rssi_min_thold == rssi_max_thold ||
|
||||
rssi_min_thold > rssi_max_thold);
|
||||
|
||||
_ieee80211_enable_rssi_reports(sdata, rssi_min_thold,
|
||||
rssi_max_thold);
|
||||
}
|
||||
EXPORT_SYMBOL(ieee80211_enable_rssi_reports);
|
||||
|
||||
void ieee80211_disable_rssi_reports(struct ieee80211_vif *vif)
|
||||
{
|
||||
struct ieee80211_sub_if_data *sdata = vif_to_sdata(vif);
|
||||
|
||||
_ieee80211_enable_rssi_reports(sdata, 0, 0);
|
||||
}
|
||||
EXPORT_SYMBOL(ieee80211_disable_rssi_reports);
|
||||
|
|
|
@ -2854,46 +2854,6 @@ size_t ieee80211_ie_split_vendor(const u8 *ies, size_t ielen, size_t offset)
|
|||
return pos;
|
||||
}
|
||||
|
||||
static void _ieee80211_enable_rssi_reports(struct ieee80211_sub_if_data *sdata,
|
||||
int rssi_min_thold,
|
||||
int rssi_max_thold)
|
||||
{
|
||||
trace_api_enable_rssi_reports(sdata, rssi_min_thold, rssi_max_thold);
|
||||
|
||||
if (WARN_ON(sdata->vif.type != NL80211_IFTYPE_STATION))
|
||||
return;
|
||||
|
||||
/*
|
||||
* Scale up threshold values before storing it, as the RSSI averaging
|
||||
* algorithm uses a scaled up value as well. Change this scaling
|
||||
* factor if the RSSI averaging algorithm changes.
|
||||
*/
|
||||
sdata->u.mgd.rssi_min_thold = rssi_min_thold*16;
|
||||
sdata->u.mgd.rssi_max_thold = rssi_max_thold*16;
|
||||
}
|
||||
|
||||
void ieee80211_enable_rssi_reports(struct ieee80211_vif *vif,
|
||||
int rssi_min_thold,
|
||||
int rssi_max_thold)
|
||||
{
|
||||
struct ieee80211_sub_if_data *sdata = vif_to_sdata(vif);
|
||||
|
||||
WARN_ON(rssi_min_thold == rssi_max_thold ||
|
||||
rssi_min_thold > rssi_max_thold);
|
||||
|
||||
_ieee80211_enable_rssi_reports(sdata, rssi_min_thold,
|
||||
rssi_max_thold);
|
||||
}
|
||||
EXPORT_SYMBOL(ieee80211_enable_rssi_reports);
|
||||
|
||||
void ieee80211_disable_rssi_reports(struct ieee80211_vif *vif)
|
||||
{
|
||||
struct ieee80211_sub_if_data *sdata = vif_to_sdata(vif);
|
||||
|
||||
_ieee80211_enable_rssi_reports(sdata, 0, 0);
|
||||
}
|
||||
EXPORT_SYMBOL(ieee80211_disable_rssi_reports);
|
||||
|
||||
u8 *ieee80211_ie_build_ht_cap(u8 *pos, struct ieee80211_sta_ht_cap *ht_cap,
|
||||
u16 cap)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue