aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi/iwl3945-base.c
diff options
context:
space:
mode:
authorMohamed Abbas <mabbas@linux.intel.com>2007-11-11 22:37:42 -0500
committerJohn W. Linville <linville@tuxdriver.com>2007-11-14 21:16:46 -0500
commit14577f239fe5193d556ef1471c8667dabd556418 (patch)
tree1b6c69370bcb0f3b83d492c304471e7d80a921c0 /drivers/net/wireless/iwlwifi/iwl3945-base.c
parenta0af5f14542a2e0687f95e093a33ea7301fe8cc5 (diff)
iwl3945: place CCK rates in front of OFDM for supported rates
The patch fixes association failure (reason = 18) bug by arranging CCK rates before OFDM rates. This patch will register with mac80211 the modified rate arrangement with CCK rate first. Change rate scale algorithm also to deal with rate change. Fix Txpower and rate Table commands to be constructed correctly after rearrangement. Signed-off-by: Mohamed Abbas <mabbas@linux.intel.com> Signed-off-by: Zhu Yi <yi.zhu@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl3945-base.c')
-rw-r--r--drivers/net/wireless/iwlwifi/iwl3945-base.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl3945-base.c b/drivers/net/wireless/iwlwifi/iwl3945-base.c
index 4f22a7174caf..e4ddbc9ac243 100644
--- a/drivers/net/wireless/iwlwifi/iwl3945-base.c
+++ b/drivers/net/wireless/iwlwifi/iwl3945-base.c
@@ -5331,13 +5331,13 @@ static int iwl_init_geos(struct iwl_priv *priv)
5331 /* 5.2GHz channels start after the 2.4GHz channels */ 5331 /* 5.2GHz channels start after the 2.4GHz channels */
5332 modes[A].mode = MODE_IEEE80211A; 5332 modes[A].mode = MODE_IEEE80211A;
5333 modes[A].channels = &channels[ARRAY_SIZE(iwl_eeprom_band_1)]; 5333 modes[A].channels = &channels[ARRAY_SIZE(iwl_eeprom_band_1)];
5334 modes[A].rates = rates; 5334 modes[A].rates = &rates[4];
5335 modes[A].num_rates = 8; /* just OFDM */ 5335 modes[A].num_rates = 8; /* just OFDM */
5336 modes[A].num_channels = 0; 5336 modes[A].num_channels = 0;
5337 5337
5338 modes[B].mode = MODE_IEEE80211B; 5338 modes[B].mode = MODE_IEEE80211B;
5339 modes[B].channels = channels; 5339 modes[B].channels = channels;
5340 modes[B].rates = &rates[8]; 5340 modes[B].rates = rates;
5341 modes[B].num_rates = 4; /* just CCK */ 5341 modes[B].num_rates = 4; /* just CCK */
5342 modes[B].num_channels = 0; 5342 modes[B].num_channels = 0;
5343 5343