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>
This commit is contained in:

committed by
John W. Linville

parent
76708dee38
commit
870abdf671
@@ -292,8 +292,8 @@ static int rtl8180_tx(struct ieee80211_hw *dev, struct sk_buff *skb)
|
||||
entry->plcp_len = cpu_to_le16(plcp_len);
|
||||
entry->tx_buf = cpu_to_le32(mapping);
|
||||
entry->frame_len = cpu_to_le32(skb->len);
|
||||
entry->flags2 = info->control.alt_retry_rate_idx >= 0 ?
|
||||
ieee80211_get_alt_retry_rate(dev, info)->bitrate << 4 : 0;
|
||||
entry->flags2 = info->control.retries[0].rate_idx >= 0 ?
|
||||
ieee80211_get_alt_retry_rate(dev, info, 0)->bitrate << 4 : 0;
|
||||
entry->retry_limit = info->control.retry_limit;
|
||||
entry->flags = cpu_to_le32(tx_flags);
|
||||
__skb_queue_tail(&ring->queue, skb);
|
||||
@@ -855,6 +855,7 @@ static int __devinit rtl8180_probe(struct pci_dev *pdev,
|
||||
priv = dev->priv;
|
||||
priv->pdev = pdev;
|
||||
|
||||
dev->max_altrates = 1;
|
||||
SET_IEEE80211_DEV(dev, &pdev->dev);
|
||||
pci_set_drvdata(pdev, dev);
|
||||
|
||||
|
Reference in New Issue
Block a user