mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-22 23:12:32 +00:00
5b91d2b52e
Some of our local patches have been accepted upstream. And there are some more relevant changes (mostly for rt2800usb). Import them and rebase our remaining local patches on top. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
55 lines
2.1 KiB
Diff
55 lines
2.1 KiB
Diff
From ec80ad70d778af7665992672896633ebd3b02ac8 Mon Sep 17 00:00:00 2001
|
|
From: Stanislaw Gruszka <sgruszka@redhat.com>
|
|
Date: Wed, 15 Feb 2017 10:25:09 +0100
|
|
Subject: [PATCH 13/19] rt2x00: fixup fill_tx_status for nomatch case
|
|
|
|
Add bits rt2x00lib_fill_tx_status() when filling status in nomatch
|
|
case and hopefully do not break the function for existing cases.
|
|
|
|
Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
|
|
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
|
|
---
|
|
drivers/net/wireless/ralink/rt2x00/rt2x00dev.c | 6 +++++-
|
|
drivers/net/wireless/ralink/rt2x00/rt2x00queue.h | 1 +
|
|
2 files changed, 6 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/drivers/net/wireless/ralink/rt2x00/rt2x00dev.c b/drivers/net/wireless/ralink/rt2x00/rt2x00dev.c
|
|
index 90fc259fb5bc..e95d2aad3b3f 100644
|
|
--- a/drivers/net/wireless/ralink/rt2x00/rt2x00dev.c
|
|
+++ b/drivers/net/wireless/ralink/rt2x00/rt2x00dev.c
|
|
@@ -357,6 +357,9 @@ static void rt2x00lib_fill_tx_status(struct rt2x00_dev *rt2x00dev,
|
|
if (i < (IEEE80211_TX_MAX_RATES - 1))
|
|
tx_info->status.rates[i].idx = -1; /* terminate */
|
|
|
|
+ if (test_bit(TXDONE_NO_ACK_REQ, &txdesc->flags))
|
|
+ tx_info->flags |= IEEE80211_TX_CTL_NO_ACK;
|
|
+
|
|
if (!(tx_info->flags & IEEE80211_TX_CTL_NO_ACK)) {
|
|
if (success)
|
|
tx_info->flags |= IEEE80211_TX_STAT_ACK;
|
|
@@ -375,7 +378,8 @@ static void rt2x00lib_fill_tx_status(struct rt2x00_dev *rt2x00dev,
|
|
*/
|
|
if (test_bit(TXDONE_AMPDU, &txdesc->flags) ||
|
|
tx_info->flags & IEEE80211_TX_CTL_AMPDU) {
|
|
- tx_info->flags |= IEEE80211_TX_STAT_AMPDU;
|
|
+ tx_info->flags |= IEEE80211_TX_STAT_AMPDU |
|
|
+ IEEE80211_TX_CTL_AMPDU;
|
|
tx_info->status.ampdu_len = 1;
|
|
tx_info->status.ampdu_ack_len = success ? 1 : 0;
|
|
|
|
diff --git a/drivers/net/wireless/ralink/rt2x00/rt2x00queue.h b/drivers/net/wireless/ralink/rt2x00/rt2x00queue.h
|
|
index 9b297fce4692..c78fb8c8838a 100644
|
|
--- a/drivers/net/wireless/ralink/rt2x00/rt2x00queue.h
|
|
+++ b/drivers/net/wireless/ralink/rt2x00/rt2x00queue.h
|
|
@@ -215,6 +215,7 @@ enum txdone_entry_desc_flags {
|
|
TXDONE_FAILURE,
|
|
TXDONE_EXCESSIVE_RETRY,
|
|
TXDONE_AMPDU,
|
|
+ TXDONE_NO_ACK_REQ,
|
|
};
|
|
|
|
/**
|
|
--
|
|
2.12.1
|
|
|