From 2e885b18b1d96383814366cfe681b2f2db2833c0 Mon Sep 17 00:00:00 2001 From: =?utf8?q?J=C3=A9r=C3=B4me=20Pouiller?= Date: Mon, 20 Apr 2020 18:03:02 +0200 Subject: [PATCH] staging: wfx: field operational_rate_set is ignored by firmware MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit 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 Link: https://lore.kernel.org/r/20200420160311.57323-8-Jerome.Pouiller@silabs.com Signed-off-by: Greg Kroah-Hartman --- 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 2a9c7f28d934d..6cdb40a059917 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.30.2