Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
[firefly-linux-kernel-4.4.55.git] / drivers / net / wireless / iwlwifi / mvm / rs.c
index 56b636d9ab304b301486761daaf39c0e6a99fc9c..a01a6612677e8f4db9deca7658b2f3a125210e35 100644 (file)
@@ -680,12 +680,14 @@ static int rs_toggle_antenna(u32 valid_ant, u32 *rate_n_flags,
  */
 static bool rs_use_green(struct ieee80211_sta *sta)
 {
-       struct iwl_mvm_sta *sta_priv = (void *)sta->drv_priv;
-
-       bool use_green = !(sta_priv->vif->bss_conf.ht_operation_mode &
-                               IEEE80211_HT_OP_MODE_NON_GF_STA_PRSNT);
-
-       return (sta->ht_cap.cap & IEEE80211_HT_CAP_GRN_FLD) && use_green;
+       /*
+        * There's a bug somewhere in this code that causes the
+        * scaling to get stuck because GF+SGI can't be combined
+        * in SISO rates. Until we find that bug, disable GF, it
+        * has only limited benefit and we still interoperate with
+        * GF APs since we can always receive GF transmissions.
+        */
+       return false;
 }
 
 /**