iwlwifi: fix HT operation in 2.4 GHz band
authorDaniel C Halperin <[email protected]>
Fri, 11 Sep 2009 17:38:08 +0000 (10:38 -0700)
committerJohn W. Linville <[email protected]>
Wed, 23 Sep 2009 15:35:40 +0000 (11:35 -0400)
When we cleaned up the driver to properly tell mac80211 about HT rates
("iwlwifi: use iwl_hwrate_get_mac80211_idx where appropriate"), we broke
internal rate indexing in 2.4 GHz band.

Signed-off-by: Daniel C Halperin <[email protected]>
Tested-by: Wey-Yi Guy <[email protected]>
Signed-off-by: Reinette Chatre <[email protected]>
Signed-off-by: John W. Linville <[email protected]>
drivers/net/wireless/iwlwifi/iwl-agn-rs.c

index 40b207aa8fef44dae59c2a6e4117f5af978ba61a..fd731534df1c3a89fd32ea4ea469d33439db5e86 100644 (file)
@@ -883,6 +883,12 @@ static void rs_tx_status(void *priv_r, struct ieee80211_supported_band *sband,
                mac_index &= RATE_MCS_CODE_MSK; /* Remove # of streams */
                if (mac_index >= (IWL_RATE_9M_INDEX - IWL_FIRST_OFDM_RATE))
                        mac_index++;
+               /*
+                * mac80211 HT index is always zero-indexed; we need to move
+                * HT OFDM rates after CCK rates in 2.4 GHz band
+                */
+               if (priv->band == IEEE80211_BAND_2GHZ)
+                       mac_index += IWL_FIRST_OFDM_RATE;
        }
 
        if ((mac_index < 0) ||