aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEmmanuel Grumbach <emmanuel.grumbach@intel.com>2013-06-13 03:07:47 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-08-29 12:47:30 -0400
commit07e915c91b08d06db1e38241bc517e9b2e4fa3bd (patch)
tree1bdd11e3a6667bf72ca23f6cd529eb8d9c0ed122
parent0710345e2d2eca0c98b75dfe7c1a8a50c04d4829 (diff)
iwlwifi: mvm: take the seqno from packet if transmit failed
commit ebea2f32e814445f94f9e087b646f1cf4d55fa5a upstream. The fw is unreliable in all the cases in which the packet wasn't sent. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/net/wireless/iwlwifi/mvm/tx.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/wireless/iwlwifi/mvm/tx.c b/drivers/net/wireless/iwlwifi/mvm/tx.c
index b9ba4e71ea4a..a2e6112e91e9 100644
--- a/drivers/net/wireless/iwlwifi/mvm/tx.c
+++ b/drivers/net/wireless/iwlwifi/mvm/tx.c
@@ -610,8 +610,8 @@ static void iwl_mvm_rx_tx_cmd_single(struct iwl_mvm *mvm,
610 !(info->flags & IEEE80211_TX_STAT_ACK)) 610 !(info->flags & IEEE80211_TX_STAT_ACK))
611 info->flags |= IEEE80211_TX_STAT_AMPDU_NO_BACK; 611 info->flags |= IEEE80211_TX_STAT_AMPDU_NO_BACK;
612 612
613 /* W/A FW bug: seq_ctl is wrong when the queue is flushed */ 613 /* W/A FW bug: seq_ctl is wrong when the status isn't success */
614 if (status == TX_STATUS_FAIL_FIFO_FLUSHED) { 614 if (status != TX_STATUS_SUCCESS) {
615 struct ieee80211_hdr *hdr = (void *)skb->data; 615 struct ieee80211_hdr *hdr = (void *)skb->data;
616 seq_ctl = le16_to_cpu(hdr->seq_ctrl); 616 seq_ctl = le16_to_cpu(hdr->seq_ctrl);
617 } 617 }