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

Jerome Pouiller Jerome.Pouiller at silabs.com
Mon Apr 20 16:03:02 UTC 2020


From: Jérôme Pouiller <jerome.pouiller at silabs.com>

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 at silabs.com>
---
 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



More information about the devel mailing list