From 3b8c0435c93180aa4cc55e62fc664c760f74fdba Mon Sep 17 00:00:00 2001 From: Alexander Egorenkov Date: Sun, 14 Mar 2010 11:20:02 +0100 Subject: [PATCH] Optimized ShortGI test during frame transmission --- rt2870.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/rt2870.c b/rt2870.c index 9111116..72a004c 100644 --- a/rt2870.c +++ b/rt2870.c @@ -4515,8 +4515,8 @@ static int rt2870_tx_mgmt(struct rt2870_softc *sc, stbc = (ic->ic_htcaps & IEEE80211_HTCAP_TXSTBC) && (ni->ni_flags & IEEE80211_NODE_HT) && (ni->ni_htcap & IEEE80211_HTCAP_RXSTBC); - shortgi = (vap->iv_flags_ht & (IEEE80211_FHT_SHORTGI20 | IEEE80211_FHT_SHORTGI40)) && - (ni->ni_flags & IEEE80211_NODE_HT) && (ni->ni_flags & (IEEE80211_NODE_SGI20 | IEEE80211_NODE_SGI40)); + shortgi = ((ni->ni_flags & IEEE80211_NODE_SGI20) && (ni->ni_chw == 20)) || + ((ni->ni_flags & IEEE80211_NODE_SGI40) && (ni->ni_chw == 40)); txwi->phymode_ifs_stbc_shortgi |= ((stbc & RT2870_TXWI_STBC_MASK) << RT2870_TXWI_STBC_SHIFT) | @@ -4786,8 +4786,8 @@ static int rt2870_tx_data(struct rt2870_softc *sc, stbc = (ic->ic_htcaps & IEEE80211_HTCAP_TXSTBC) && (ni->ni_flags & IEEE80211_NODE_HT) && (ni->ni_htcap & IEEE80211_HTCAP_RXSTBC); - shortgi = (vap->iv_flags_ht & (IEEE80211_FHT_SHORTGI20 | IEEE80211_FHT_SHORTGI40)) && - (ni->ni_flags & IEEE80211_NODE_HT) && (ni->ni_flags & (IEEE80211_NODE_SGI20 | IEEE80211_NODE_SGI40)); + shortgi = ((ni->ni_flags & IEEE80211_NODE_SGI20) && (ni->ni_chw == 20)) || + ((ni->ni_flags & IEEE80211_NODE_SGI40) && (ni->ni_chw == 40)); txwi->phymode_ifs_stbc_shortgi |= ((stbc & RT2870_TXWI_STBC_MASK) << RT2870_TXWI_STBC_SHIFT) | -- 2.11.4.GIT