]> git.baikalelectronics.ru Git - kernel.git/commitdiff
staging: wfx: dual CTS is never necessary
authorJérôme Pouiller <jerome.pouiller@silabs.com>
Mon, 20 Apr 2020 16:03:01 +0000 (18:03 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 23 Apr 2020 11:26:03 +0000 (13:26 +0200)
Dual CTS is only necessary when sending/receiving STBC data. However,
the chip does not support STBC, so it is never necessary to enable
double CTS.

We can simplify the code.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
Link: https://lore.kernel.org/r/20200420160311.57323-7-Jerome.Pouiller@silabs.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/wfx/hif_api_mib.h
drivers/staging/wfx/hif_tx_mib.c
drivers/staging/wfx/hif_tx_mib.h
drivers/staging/wfx/sta.c

index 9f30cf503ad55da5711ab628f043704f7ab18f79..6f1434795fa817320b9f336102d615ff7002dc92 100644 (file)
@@ -379,12 +379,6 @@ struct hif_mib_protected_mgmt_policy {
        u8     reserved2[3];
 } __packed;
 
-struct hif_mib_set_ht_protection {
-       u8     dual_cts_prot:1;
-       u8     reserved1:7;
-       u8     reserved2[3];
-} __packed;
-
 struct hif_mib_keep_alive_period {
        __le16 keep_alive_period;
        u8     reserved[2];
index 1d26d740bd0b6c347a4bd6fb9e31d86345649545..f04116ecb373078772947343b82f2c878210c793 100644 (file)
@@ -365,16 +365,6 @@ int hif_slot_time(struct wfx_vif *wvif, int val)
                             &arg, sizeof(arg));
 }
 
-int hif_dual_cts_protection(struct wfx_vif *wvif, bool enable)
-{
-       struct hif_mib_set_ht_protection arg = {
-               .dual_cts_prot = enable,
-       };
-
-       return hif_write_mib(wvif->wdev, wvif->id, HIF_MIB_ID_SET_HT_PROTECTION,
-                            &arg, sizeof(arg));
-}
-
 int hif_wep_default_key_id(struct wfx_vif *wvif, int val)
 {
        struct hif_mib_wep_default_key_id arg = {
index 0f8b3bd9f14e88288f75dc7e1e4f150577f7796d..bb7c104a03d8d478e8f12b0c6200bac43985e79b 100644 (file)
@@ -52,7 +52,6 @@ int hif_use_multi_tx_conf(struct wfx_dev *wdev, bool enable);
 int hif_set_uapsd_info(struct wfx_vif *wvif, unsigned long val);
 int hif_erp_use_protection(struct wfx_vif *wvif, bool enable);
 int hif_slot_time(struct wfx_vif *wvif, int val);
-int hif_dual_cts_protection(struct wfx_vif *wvif, bool enable);
 int hif_wep_default_key_id(struct wfx_vif *wvif, int val);
 int hif_rts_threshold(struct wfx_vif *wvif, int val);
 
index a0c7737903b981c97113c69b19b89ea68ad2a13f..2a9c7f28d934da1f39dc96d2f80fbcedf3f375e7 100644 (file)
@@ -482,12 +482,6 @@ static void wfx_join_finalize(struct wfx_vif *wvif,
        else
                bss_params.operational_rate_set = -1;
        rcu_read_unlock();
-       if (sta &&
-           info->ht_operation_mode & IEEE80211_HT_OP_MODE_NON_GF_STA_PRSNT)
-               hif_dual_cts_protection(wvif, true);
-       else
-               hif_dual_cts_protection(wvif, false);
-
        // beacon_loss_count is defined to 7 in net/mac80211/mlme.c. Let's use
        // the same value.
        bss_params.beacon_lost_count = 7;