[PATCH 07/16] staging: wfx: field operational_rate_set is ignored by firmware

From: Jerome Pouiller
Date: Mon Apr 20 2020 - 12:05:12 EST


From: JÃrÃme Pouiller <jerome.pouiller@xxxxxxxxxx>

The field bss_params.operational_rate_set is ignore by the firmware. It
is not necessary to send it. This change greatly simplify
wfx_join_finalize(). It is no more necessary to get sta and it allow to
save a RCU.

Signed-off-by: JÃrÃme Pouiller <jerome.pouiller@xxxxxxxxxx>
---
drivers/staging/wfx/sta.c | 22 ++++++----------------
1 file changed, 6 insertions(+), 16 deletions(-)

diff --git a/drivers/staging/wfx/sta.c b/drivers/staging/wfx/sta.c
index 2a9c7f28d934..6cdb40a05991 100644
--- a/drivers/staging/wfx/sta.c
+++ b/drivers/staging/wfx/sta.c
@@ -470,22 +470,12 @@ void wfx_stop_ap(struct ieee80211_hw *hw, struct ieee80211_vif *vif)
static void wfx_join_finalize(struct wfx_vif *wvif,
struct ieee80211_bss_conf *info)
{
- struct ieee80211_sta *sta = NULL;
- struct hif_req_set_bss_params bss_params = { };
-
- rcu_read_lock(); // protect sta
- if (info->bssid && !info->ibss_joined)
- sta = ieee80211_find_sta(wvif->vif, info->bssid);
- if (sta)
- bss_params.operational_rate_set =
- wfx_rate_mask_to_hw(wvif->wdev, sta->supp_rates[wvif->channel->band]);
- else
- bss_params.operational_rate_set = -1;
- rcu_read_unlock();
- // beacon_loss_count is defined to 7 in net/mac80211/mlme.c. Let's use
- // the same value.
- bss_params.beacon_lost_count = 7;
- bss_params.aid = info->aid;
+ struct hif_req_set_bss_params bss_params = {
+ // beacon_loss_count is defined to 7 in net/mac80211/mlme.c.
+ // Let's use the same value.
+ .beacon_lost_count = 7,
+ .aid = info->aid,
+ };

hif_set_association_mode(wvif, info);
hif_keep_alive_period(wvif, 0);
--
2.26.1