From: Chaitanya Tata <chaitanya.mgit@xxxxxxxxx> In case of Dynamic SMPS enable RTS/CTS for all rates. In case of Static SMPS mark the Nss > 1 rates as not supported. --- net/mac80211/rc80211_minstrel_ht.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/net/mac80211/rc80211_minstrel_ht.c b/net/mac80211/rc80211_minstrel_ht.c index 7430a1d..fdc08d0 100644 --- a/net/mac80211/rc80211_minstrel_ht.c +++ b/net/mac80211/rc80211_minstrel_ht.c @@ -1176,9 +1176,16 @@ minstrel_ht_update_caps(void *priv, struct ieee80211_supported_band *sband, nss = minstrel_mcs_groups[i].streams; - /* Mark MCS > 7 as unsupported if STA is in static SMPS mode */ - if (sta->smps_mode == IEEE80211_SMPS_STATIC && nss > 1) - continue; + /* Handle STA's SMPS State, if Nss > 1. + * a. Use RTS_CTS, if STA is in Dynamic SMPS Mode + * b. Mark Nss > 1 as unsupported, if STA is in static SMPS mode + */ + if (nss > 1) { + if (sta->smps_mode == IEEE80211_SMPS_DYNAMIC) + gflags |= IEEE80211_TX_RC_USE_RTS_CTS; + else if (sta->smps_mode == IEEE80211_SMPS_STATIC) + continue; + } /* HT rate */ if (gflags & IEEE80211_TX_RC_MCS) { -- 1.9.1 -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html