diff options
author | Felix Fietkau <nbd@openwrt.org> | 2008-10-05 12:04:24 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2008-10-06 18:14:57 -0400 |
commit | 870abdf67170daa9f1022e55a35c469239fcc74c (patch) | |
tree | 5ca00db880d71149eea2cdaeb67ed20f5281071d /drivers/net/wireless/b43 | |
parent | 76708dee382a69b2f9d0e50f413f99fefb2dc509 (diff) |
mac80211: add multi-rate retry support
This patch adjusts the rate control API to allow multi-rate retry
if supported by the driver. The ieee80211_hw struct specifies how
many alternate rate selections the driver supports.
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/b43')
-rw-r--r-- | drivers/net/wireless/b43/main.c | 1 | ||||
-rw-r--r-- | drivers/net/wireless/b43/xmit.c | 2 |
2 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/wireless/b43/main.c b/drivers/net/wireless/b43/main.c index 3bf74e236ab..14c44df584d 100644 --- a/drivers/net/wireless/b43/main.c +++ b/drivers/net/wireless/b43/main.c | |||
@@ -4588,6 +4588,7 @@ static int b43_wireless_init(struct ssb_device *dev) | |||
4588 | BIT(NL80211_IFTYPE_ADHOC); | 4588 | BIT(NL80211_IFTYPE_ADHOC); |
4589 | 4589 | ||
4590 | hw->queues = b43_modparam_qos ? 4 : 1; | 4590 | hw->queues = b43_modparam_qos ? 4 : 1; |
4591 | hw->max_altrates = 1; | ||
4591 | SET_IEEE80211_DEV(hw, dev->dev); | 4592 | SET_IEEE80211_DEV(hw, dev->dev); |
4592 | if (is_valid_ether_addr(sprom->et1mac)) | 4593 | if (is_valid_ether_addr(sprom->et1mac)) |
4593 | SET_IEEE80211_PERM_ADDR(hw, sprom->et1mac); | 4594 | SET_IEEE80211_PERM_ADDR(hw, sprom->et1mac); |
diff --git a/drivers/net/wireless/b43/xmit.c b/drivers/net/wireless/b43/xmit.c index e0749c0074c..2fabcf8f047 100644 --- a/drivers/net/wireless/b43/xmit.c +++ b/drivers/net/wireless/b43/xmit.c | |||
@@ -208,7 +208,7 @@ int b43_generate_txhdr(struct b43_wldev *dev, | |||
208 | txrate = ieee80211_get_tx_rate(dev->wl->hw, info); | 208 | txrate = ieee80211_get_tx_rate(dev->wl->hw, info); |
209 | rate = txrate ? txrate->hw_value : B43_CCK_RATE_1MB; | 209 | rate = txrate ? txrate->hw_value : B43_CCK_RATE_1MB; |
210 | rate_ofdm = b43_is_ofdm_rate(rate); | 210 | rate_ofdm = b43_is_ofdm_rate(rate); |
211 | fbrate = ieee80211_get_alt_retry_rate(dev->wl->hw, info) ? : txrate; | 211 | fbrate = ieee80211_get_alt_retry_rate(dev->wl->hw, info, 0) ? : txrate; |
212 | rate_fb = fbrate->hw_value; | 212 | rate_fb = fbrate->hw_value; |
213 | rate_fb_ofdm = b43_is_ofdm_rate(rate_fb); | 213 | rate_fb_ofdm = b43_is_ofdm_rate(rate_fb); |
214 | 214 | ||