summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/wl12xx/wl1271_main.c
diff options
context:
space:
mode:
authorJuuso Oikarinen <juuso.oikarinen@nokia.com>2009-12-11 15:40:58 +0200
committerJohn W. Linville <linville@tuxdriver.com>2009-12-28 16:31:33 -0500
commita6fe231361e35e3d068a63bbfd2318fa4e961ec5 (patch)
tree9556758a018f7477133eab647c7d043b9ad9861d /drivers/net/wireless/wl12xx/wl1271_main.c
parent018b171c40b613da867e054f9b6b258ae9298133 (diff)
downloadblackbird-op-linux-a6fe231361e35e3d068a63bbfd2318fa4e961ec5.tar.gz
blackbird-op-linux-a6fe231361e35e3d068a63bbfd2318fa4e961ec5.zip
wl1271: Use slow rates for association messages
While not associated, default the data rates to 1 and 2mbps, so that only those rates will be used for association related message transfer. Once associated, configure the full rate-set supported by the AP. Signed-off-by: Juuso Oikarinen <juuso.oikarinen@nokia.com> Reviewed-by: Luciano Coelho <luciano.coelho@nokia.com> Signed-off-by: Luciano Coelho <luciano.coelho@nokia.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/wl12xx/wl1271_main.c')
-rw-r--r--drivers/net/wireless/wl12xx/wl1271_main.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/net/wireless/wl12xx/wl1271_main.c b/drivers/net/wireless/wl12xx/wl1271_main.c
index 5a6e4d446962..272a8fa677ef 100644
--- a/drivers/net/wireless/wl12xx/wl1271_main.c
+++ b/drivers/net/wireless/wl12xx/wl1271_main.c
@@ -1180,6 +1180,11 @@ static int wl1271_op_config(struct ieee80211_hw *hw, u32 changed)
wl1271_unjoin_channel(wl);
else
wl1271_join_channel(wl, channel);
+
+ if (conf->flags & IEEE80211_CONF_IDLE) {
+ wl->basic_rate_set = CONF_TX_RATE_MASK_BASIC;
+ wl1271_acx_rate_policies(wl, CONF_TX_RATE_MASK_BASIC);
+ }
}
/* if the channel changes while joined, join again */
@@ -1568,7 +1573,6 @@ static void wl1271_op_bss_info_changed(struct ieee80211_hw *hw,
}
} else {
/* use defaults when not associated */
- wl->basic_rate_set = WL1271_DEFAULT_BASIC_RATE_SET;
wl->aid = 0;
}
@@ -1897,7 +1901,7 @@ static int __devinit wl1271_probe(struct spi_device *spi)
wl->psm_entry_retry = 0;
wl->tx_queue_stopped = false;
wl->power_level = WL1271_DEFAULT_POWER_LEVEL;
- wl->basic_rate_set = WL1271_DEFAULT_BASIC_RATE_SET;
+ wl->basic_rate_set = CONF_TX_RATE_MASK_BASIC;
wl->band = IEEE80211_BAND_2GHZ;
wl->vif = NULL;
wl->joined = false;
OpenPOWER on IntegriCloud