From e440e418dbbee449983773e61107dee566d81da8 Mon Sep 17 00:00:00 2001 From: Eugene Syromiatnikov Date: Fri, 6 Sep 2019 15:41:06 +0200 Subject: [PATCH 5/5] Revert "iwlwifi: rs-fw: enable STBC in he correctly" This reverts commit 3e467b8e4cf4d56244f92b1fb26a25e405e7d3aa. --- drivers/net/wireless/intel/iwlwifi/fw/api/rs.h | 10 +++------- drivers/net/wireless/intel/iwlwifi/mvm/rs-fw.c | 20 ++++---------------- 2 files changed, 7 insertions(+), 23 deletions(-) Index: src/drivers/net/wireless/intel/iwlwifi/fw/api/rs.h =================================================================== --- src.orig/drivers/net/wireless/intel/iwlwifi/fw/api/rs.h 2019-09-06 15:42:07.804267670 +0200 +++ src/drivers/net/wireless/intel/iwlwifi/fw/api/rs.h 2019-09-06 15:42:07.977264927 +0200 @@ -66,16 +66,12 @@ /** * enum iwl_tlc_mng_cfg_flags_enum - options for TLC config flags - * @IWL_TLC_MNG_CFG_FLAGS_STBC_MSK: enable STBC. For HE this enables STBC for - * bandwidths <= 80MHz + * @IWL_TLC_MNG_CFG_FLAGS_STBC_MSK: enable STBC * @IWL_TLC_MNG_CFG_FLAGS_LDPC_MSK: enable LDPC - * @IWL_TLC_MNG_CFG_FLAGS_HE_STBC_160MHZ_MSK: enable STBC in HE at 160MHz - * bandwidth */ enum iwl_tlc_mng_cfg_flags { - IWL_TLC_MNG_CFG_FLAGS_STBC_MSK = BIT(0), - IWL_TLC_MNG_CFG_FLAGS_LDPC_MSK = BIT(1), - IWL_TLC_MNG_CFG_FLAGS_HE_STBC_160MHZ_MSK = BIT(2), + IWL_TLC_MNG_CFG_FLAGS_STBC_MSK = BIT(0), + IWL_TLC_MNG_CFG_FLAGS_LDPC_MSK = BIT(1), }; /** Index: src/drivers/net/wireless/intel/iwlwifi/mvm/rs-fw.c =================================================================== --- src.orig/drivers/net/wireless/intel/iwlwifi/mvm/rs-fw.c 2019-09-06 15:42:07.804267670 +0200 +++ src/drivers/net/wireless/intel/iwlwifi/mvm/rs-fw.c 2019-09-06 15:42:07.977264927 +0200 @@ -117,26 +117,14 @@ { struct ieee80211_sta_ht_cap *ht_cap = &sta->ht_cap; struct ieee80211_sta_vht_cap *vht_cap = &sta->vht_cap; - struct ieee80211_sta_he_cap *he_cap = &sta->he_cap; bool vht_ena = vht_cap && vht_cap->vht_supported; u16 flags = 0; if (mvm->cfg->ht_params->stbc && - (num_of_ant(iwl_mvm_get_valid_tx_ant(mvm)) > 1)) { - if (he_cap && he_cap->has_he) { - if (he_cap->he_cap_elem.phy_cap_info[2] & - IEEE80211_HE_PHY_CAP2_STBC_RX_UNDER_80MHZ) - flags |= IWL_TLC_MNG_CFG_FLAGS_STBC_MSK; - - if (he_cap->he_cap_elem.phy_cap_info[7] & - IEEE80211_HE_PHY_CAP7_STBC_RX_ABOVE_80MHZ) - flags |= IWL_TLC_MNG_CFG_FLAGS_HE_STBC_160MHZ_MSK; - } else if ((ht_cap && - (ht_cap->cap & IEEE80211_HT_CAP_RX_STBC)) || - (vht_ena && - (vht_cap->cap & IEEE80211_VHT_CAP_RXSTBC_MASK))) - flags |= IWL_TLC_MNG_CFG_FLAGS_STBC_MSK; - } + (num_of_ant(iwl_mvm_get_valid_tx_ant(mvm)) > 1) && + ((ht_cap && (ht_cap->cap & IEEE80211_HT_CAP_RX_STBC)) || + (vht_ena && (vht_cap->cap & IEEE80211_VHT_CAP_RXSTBC_MASK)))) + flags |= IWL_TLC_MNG_CFG_FLAGS_STBC_MSK; if (mvm->cfg->ht_params->ldpc && ((ht_cap && (ht_cap->cap & IEEE80211_HT_CAP_LDPC_CODING)) ||