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/rtl8180_dev.c | |
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/rtl8180_dev.c')
-rw-r--r-- | drivers/net/wireless/rtl8180_dev.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/net/wireless/rtl8180_dev.c b/drivers/net/wireless/rtl8180_dev.c index abcd641c54be..df7e78ee8a88 100644 --- a/drivers/net/wireless/rtl8180_dev.c +++ b/drivers/net/wireless/rtl8180_dev.c | |||
@@ -292,8 +292,8 @@ static int rtl8180_tx(struct ieee80211_hw *dev, struct sk_buff *skb) | |||
292 | entry->plcp_len = cpu_to_le16(plcp_len); | 292 | entry->plcp_len = cpu_to_le16(plcp_len); |
293 | entry->tx_buf = cpu_to_le32(mapping); | 293 | entry->tx_buf = cpu_to_le32(mapping); |
294 | entry->frame_len = cpu_to_le32(skb->len); | 294 | entry->frame_len = cpu_to_le32(skb->len); |
295 | entry->flags2 = info->control.alt_retry_rate_idx >= 0 ? | 295 | entry->flags2 = info->control.retries[0].rate_idx >= 0 ? |
296 | ieee80211_get_alt_retry_rate(dev, info)->bitrate << 4 : 0; | 296 | ieee80211_get_alt_retry_rate(dev, info, 0)->bitrate << 4 : 0; |
297 | entry->retry_limit = info->control.retry_limit; | 297 | entry->retry_limit = info->control.retry_limit; |
298 | entry->flags = cpu_to_le32(tx_flags); | 298 | entry->flags = cpu_to_le32(tx_flags); |
299 | __skb_queue_tail(&ring->queue, skb); | 299 | __skb_queue_tail(&ring->queue, skb); |
@@ -855,6 +855,7 @@ static int __devinit rtl8180_probe(struct pci_dev *pdev, | |||
855 | priv = dev->priv; | 855 | priv = dev->priv; |
856 | priv->pdev = pdev; | 856 | priv->pdev = pdev; |
857 | 857 | ||
858 | dev->max_altrates = 1; | ||
858 | SET_IEEE80211_DEV(dev, &pdev->dev); | 859 | SET_IEEE80211_DEV(dev, &pdev->dev); |
859 | pci_set_drvdata(pdev, dev); | 860 | pci_set_drvdata(pdev, dev); |
860 | 861 | ||