Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(139)

Unified Diff: chromeos/compat-wireless/drivers/net/wireless/ath/ath9k/xmit.c

Issue 6393011: ath9k: Add pktlog support Base URL: ssh://git@gitrw.chromium.org:9222/kernel.git@master
Patch Set: add missing files Created 9 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chromeos/compat-wireless/drivers/net/wireless/ath/ath9k/xmit.c
diff --git a/chromeos/compat-wireless/drivers/net/wireless/ath/ath9k/xmit.c b/chromeos/compat-wireless/drivers/net/wireless/ath/ath9k/xmit.c
index e7b6a1444f756553bde6186c90381618b09809a4..28ebf65b8e667fd5bb6ae30f66e654108b7efb2f 100644
--- a/chromeos/compat-wireless/drivers/net/wireless/ath/ath9k/xmit.c
+++ b/chromeos/compat-wireless/drivers/net/wireless/ath/ath9k/xmit.c
@@ -439,6 +439,8 @@ static void ath_tx_complete_aggr(struct ath_softc *sc, struct ath_txq *txq,
BUG_ON(list_empty(bf_q));
list_move_tail(&bf->list, &bf_head);
}
+
+ ath9k_pktlog_txcomplete(sc, &bf_head, bf, bf_last);
if (!txpending || (tid->state & AGGR_CLEANUP)) {
/*
@@ -2089,7 +2091,7 @@ static void ath_tx_processq(struct ath_softc *sc, struct ath_txq *txq)
ds = lastbf->bf_desc;
memset(&ts, 0, sizeof(ts));
- status = ath9k_hw_txprocdesc(ah, ds, &ts);
+ status = ath9k_hw_txprocdesc(ah, ds, &ts, NULL);
if (status == -EINPROGRESS) {
spin_unlock_bh(&txq->axq_lock);
break;
@@ -2140,10 +2142,14 @@ static void ath_tx_processq(struct ath_softc *sc, struct ath_txq *txq)
qnum = skb_get_queue_mapping(bf->bf_mpdu);
- if (bf_isampdu(bf))
+ if (bf_isampdu(bf)) {
ath_tx_complete_aggr(sc, txq, bf, &bf_head, &ts, txok);
- else
+ } else {
+ ath9k_pktlog_txctrl(sc, &bf_head, lastbf);
ath_tx_complete_buf(sc, bf, txq, &bf_head, &ts, txok, 0);
+ }
+
+ ath_pktlog_txstatus(sc, lastbf->bf_desc);
if (txq == sc->tx.txq_map[qnum])
ath_wake_mac80211_queue(sc, qnum);
@@ -2217,9 +2223,11 @@ void ath_tx_edma_tasklet(struct ath_softc *sc)
int status;
int txok;
int qnum;
+ u32 txs_desc[9];
for (;;) {
- status = ath9k_hw_txprocdesc(ah, NULL, (void *)&txs);
+ status = ath9k_hw_txprocdesc(ah, NULL, (void *)&txs,
+ (void *) txs_desc);
if (status == -EINPROGRESS)
break;
if (status == -EIO) {
@@ -2273,15 +2281,19 @@ void ath_tx_edma_tasklet(struct ath_softc *sc)
qnum = skb_get_queue_mapping(bf->bf_mpdu);
- if (bf_isampdu(bf))
+ if (bf_isampdu(bf)) {
ath_tx_complete_aggr(sc, txq, bf, &bf_head, &txs, txok);
- else
+ } else {
+ ath9k_pktlog_txctrl(sc, &bf_head, lastbf);
ath_tx_complete_buf(sc, bf, txq, &bf_head,
&txs, txok, 0);
+ }
if (txq == sc->tx.txq_map[qnum])
ath_wake_mac80211_queue(sc, qnum);
+ ath_pktlog_txstatus(sc, txs_desc);
+
spin_lock_bh(&txq->axq_lock);
if (!list_empty(&txq->txq_fifo_pending)) {
INIT_LIST_HEAD(&bf_head);
« no previous file with comments | « chromeos/compat-wireless/drivers/net/wireless/ath/ath9k/recv.c ('k') | chromeos/scripts/compat_wireless_config » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698