]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/net/wireless/ath/ath9k/ar9003_mac.c
Revert "ath9k_hw: Fix false tx hung detection in AR9003 chips"
[karo-tx-linux.git] / drivers / net / wireless / ath / ath9k / ar9003_mac.c
index 8d1bca03bc0e862bb3c9359b59a6efcf3da2398e..01d5c1a4d74678b9601aa868edd4a0d8415c7558 100644 (file)
@@ -326,7 +326,6 @@ static bool ar9003_hw_get_isr(struct ath_hw *ah, enum ath9k_int *masked)
 static int ar9003_hw_proc_txdesc(struct ath_hw *ah, void *ds,
                                 struct ath_tx_status *ts)
 {
-       struct ar9003_txc *txc = (struct ar9003_txc *) ds;
        struct ar9003_txs *ads;
        u32 status;
 
@@ -336,11 +335,7 @@ static int ar9003_hw_proc_txdesc(struct ath_hw *ah, void *ds,
        if ((status & AR_TxDone) == 0)
                return -EINPROGRESS;
 
-       ts->qid = MS(ads->ds_info, AR_TxQcuNum);
-       if (!txc || (MS(txc->info, AR_TxQcuNum) == ts->qid))
-               ah->ts_tail = (ah->ts_tail + 1) % ah->ts_size;
-       else
-               return -ENOENT;
+       ah->ts_tail = (ah->ts_tail + 1) % ah->ts_size;
 
        if ((MS(ads->ds_info, AR_DescId) != ATHEROS_VENDOR_ID) ||
            (MS(ads->ds_info, AR_TxRxDesc) != 1)) {
@@ -354,6 +349,7 @@ static int ar9003_hw_proc_txdesc(struct ath_hw *ah, void *ds,
        ts->ts_seqnum = MS(status, AR_SeqNum);
        ts->tid = MS(status, AR_TxTid);
 
+       ts->qid = MS(ads->ds_info, AR_TxQcuNum);
        ts->desc_id = MS(ads->status1, AR_TxDescId);
        ts->ts_tstamp = ads->status4;
        ts->ts_status = 0;