summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/iwlegacy/iwl-3945-rs.c
diff options
context:
space:
mode:
authorGrant Likely <grant.likely@secretlab.ca>2011-10-24 13:42:08 +0200
committerGrant Likely <grant.likely@secretlab.ca>2011-10-24 13:42:08 +0200
commita853ba8d6d5d76bcbc5bf35b945b5727b5e5a36d (patch)
tree8faa7c17a8babd6b6fd63e13b85799a881e31956 /drivers/net/wireless/iwlegacy/iwl-3945-rs.c
parent5bdb7613414a9884166b2f5f20ad0353c1c6b6f3 (diff)
parentc3b92c8787367a8bb53d57d9789b558f1295cc96 (diff)
Merge commit 'v3.1' into spi/next
Diffstat (limited to 'drivers/net/wireless/iwlegacy/iwl-3945-rs.c')
-rw-r--r--drivers/net/wireless/iwlegacy/iwl-3945-rs.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/drivers/net/wireless/iwlegacy/iwl-3945-rs.c b/drivers/net/wireless/iwlegacy/iwl-3945-rs.c
index 977bd2477c6a..164bcae821f8 100644
--- a/drivers/net/wireless/iwlegacy/iwl-3945-rs.c
+++ b/drivers/net/wireless/iwlegacy/iwl-3945-rs.c
@@ -822,12 +822,15 @@ static void iwl3945_rs_get_rate(void *priv_r, struct ieee80211_sta *sta,
out:
- rs_sta->last_txrate_idx = index;
- if (sband->band == IEEE80211_BAND_5GHZ)
- info->control.rates[0].idx = rs_sta->last_txrate_idx -
- IWL_FIRST_OFDM_RATE;
- else
+ if (sband->band == IEEE80211_BAND_5GHZ) {
+ if (WARN_ON_ONCE(index < IWL_FIRST_OFDM_RATE))
+ index = IWL_FIRST_OFDM_RATE;
+ rs_sta->last_txrate_idx = index;
+ info->control.rates[0].idx = index - IWL_FIRST_OFDM_RATE;
+ } else {
+ rs_sta->last_txrate_idx = index;
info->control.rates[0].idx = rs_sta->last_txrate_idx;
+ }
IWL_DEBUG_RATE(priv, "leave: %d\n", index);
}