Changeset 28132


Ignore:
Timestamp:
2011-08-30T22:59:57+02:00 (5 years ago)
Author:
nbd
Message:

ath9k: add a missing dma cache sync on aggregation software retry

Location:
trunk/package/mac80211/patches
Files:
1 added
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/package/mac80211/patches/550-ath9k_limit_qlen.patch

    r28113 r28132  
    3434--- a/drivers/net/wireless/ath/ath9k/xmit.c 
    3535+++ b/drivers/net/wireless/ath/ath9k/xmit.c 
    36 @@ -348,6 +348,14 @@ static void ath_tx_count_frames(struct a 
     36@@ -351,6 +351,14 @@ static void ath_tx_count_frames(struct a 
    3737        } 
    3838 } 
     
    4949 static void ath_tx_complete_aggr(struct ath_softc *sc, struct ath_txq *txq, 
    5050                                 struct ath_buf *bf, struct list_head *bf_q, 
    51 @@ -438,6 +446,8 @@ static void ath_tx_complete_aggr(struct  
     51@@ -441,6 +449,8 @@ static void ath_tx_complete_aggr(struct  
    5252        __skb_queue_head_init(&bf_pending); 
    5353  
     
    5858                u16 seqno = bf->bf_state.seqno; 
    5959  
    60 @@ -836,6 +846,7 @@ static enum ATH_AGGR_STATUS ath_tx_form_ 
     60@@ -839,6 +849,7 @@ static enum ATH_AGGR_STATUS ath_tx_form_ 
    6161                        ath_tx_addto_baw(sc, tid, seqno); 
    6262                ath9k_hw_set11n_aggr_middle(sc->sc_ah, bf->bf_desc, ndelim); 
     
    6666                list_add_tail(&bf->list, bf_q); 
    6767                if (bf_prev) { 
    68 @@ -1491,6 +1502,8 @@ static void ath_tx_send_ampdu(struct ath 
     68@@ -1494,6 +1505,8 @@ static void ath_tx_send_ampdu(struct ath 
    6969        /* Add sub-frame to BAW */ 
    7070        ath_tx_addto_baw(sc, tid, bf->bf_state.seqno); 
     
    7575        TX_STAT_INC(txctl->txq->axq_qnum, a_queued_hw); 
    7676        bf->bf_lastbf = bf; 
    77 @@ -1819,23 +1832,13 @@ error: 
     77@@ -1822,23 +1835,13 @@ error: 
    7878  
    7979 /* FIXME: tx power */ 
     
    101101        if ((tx_info->flags & IEEE80211_TX_CTL_AMPDU) && tid) { 
    102102                /* 
    103 @@ -1877,6 +1880,7 @@ int ath_tx_start(struct ieee80211_hw *hw 
     103@@ -1880,6 +1883,7 @@ int ath_tx_start(struct ieee80211_hw *hw 
    104104        struct ieee80211_vif *vif = info->control.vif; 
    105105        struct ath_softc *sc = hw->priv; 
     
    109109        int frmlen = skb->len + FCS_LEN; 
    110110        int q; 
    111 @@ -1909,6 +1913,7 @@ int ath_tx_start(struct ieee80211_hw *hw 
     111@@ -1912,6 +1916,7 @@ int ath_tx_start(struct ieee80211_hw *hw 
    112112  
    113113                skb_push(skb, padsize); 
     
    117117  
    118118        if ((vif && vif->type != NL80211_IFTYPE_AP && 
    119 @@ -1918,6 +1923,24 @@ int ath_tx_start(struct ieee80211_hw *hw 
     119@@ -1921,6 +1926,24 @@ int ath_tx_start(struct ieee80211_hw *hw 
    120120  
    121121        setup_frame_info(hw, skb, frmlen); 
     
    142142         * At this point, the vif, hw_key and sta pointers in the tx control 
    143143         * info are no longer valid (overwritten by the ath_frame_info data. 
    144 @@ -1932,7 +1955,7 @@ int ath_tx_start(struct ieee80211_hw *hw 
     144@@ -1935,7 +1958,7 @@ int ath_tx_start(struct ieee80211_hw *hw 
    145145        } 
    146146        spin_unlock_bh(&txq->axq_lock); 
  • trunk/package/mac80211/patches/551-ath9k_sw_retry_reduce.patch

    r28093 r28132  
    11--- a/drivers/net/wireless/ath/ath9k/xmit.c 
    22+++ b/drivers/net/wireless/ath/ath9k/xmit.c 
    3 @@ -260,13 +260,16 @@ static void ath_tid_drain(struct ath_sof 
     3@@ -260,14 +260,17 @@ static void ath_tid_drain(struct ath_sof 
    44 } 
    55  
     
    99 { 
    1010        struct ath_frame_info *fi = get_frame_info(skb); 
     11        struct ath_buf *bf = fi->bf; 
    1112        struct ieee80211_hdr *hdr; 
    1213+       int prev = fi->retries; 
     
    2021  
    2122        hdr = (struct ieee80211_hdr *)skb->data; 
    22 @@ -380,6 +383,7 @@ static void ath_tx_complete_aggr(struct  
     23@@ -383,6 +386,7 @@ static void ath_tx_complete_aggr(struct  
    2324        int nframes; 
    2425        u8 tidno; 
     
    2829        skb = bf->bf_mpdu; 
    2930        hdr = (struct ieee80211_hdr *)skb->data; 
    30 @@ -388,6 +392,10 @@ static void ath_tx_complete_aggr(struct  
     31@@ -391,6 +395,10 @@ static void ath_tx_complete_aggr(struct  
    3132  
    3233        memcpy(rates, tx_info->control.rates, sizeof(rates)); 
     
    3940  
    4041        sta = ieee80211_find_sta_by_ifaddr(hw, hdr->addr1, hdr->addr2); 
    41 @@ -475,7 +483,8 @@ static void ath_tx_complete_aggr(struct  
     42@@ -478,7 +486,8 @@ static void ath_tx_complete_aggr(struct  
    4243                        } else if (fi->retries < ATH_MAX_SW_RETRIES) { 
    4344                                if (!(ts->ts_status & ATH9K_TXERR_FILT) || 
  • trunk/package/mac80211/patches/580-ath9k_remove_common_chainmask.patch

    r28113 r28132  
    9191--- a/drivers/net/wireless/ath/ath9k/xmit.c 
    9292+++ b/drivers/net/wireless/ath/ath9k/xmit.c 
    93 @@ -1657,7 +1657,7 @@ u8 ath_txchainmask_reduction(struct ath_ 
     93@@ -1660,7 +1660,7 @@ u8 ath_txchainmask_reduction(struct ath_ 
    9494  
    9595 static void ath_buf_set_rate(struct ath_softc *sc, struct ath_buf *bf, int len) 
     
    100100        struct sk_buff *skb; 
    101101        struct ieee80211_tx_info *tx_info; 
    102 @@ -1717,7 +1717,7 @@ static void ath_buf_set_rate(struct ath_ 
     102@@ -1720,7 +1720,7 @@ static void ath_buf_set_rate(struct ath_ 
    103103                        /* MCS rates */ 
    104104                        series[i].Rate = rix | 0x80; 
     
    109109                                 is_40, is_sgi, is_sp); 
    110110                        if (rix < 8 && (tx_info->flags & IEEE80211_TX_CTL_STBC)) 
    111 @@ -1742,10 +1742,10 @@ static void ath_buf_set_rate(struct ath_ 
     111@@ -1745,10 +1745,10 @@ static void ath_buf_set_rate(struct ath_ 
    112112                } 
    113113  
  • trunk/package/mac80211/patches/581-ath9k_use_reset_work.patch

    r28129 r28132  
    247247--- a/drivers/net/wireless/ath/ath9k/xmit.c 
    248248+++ b/drivers/net/wireless/ath/ath9k/xmit.c 
    249 @@ -600,8 +600,10 @@ static void ath_tx_complete_aggr(struct  
     249@@ -603,8 +603,10 @@ static void ath_tx_complete_aggr(struct  
    250250  
    251251        rcu_read_unlock(); 
     
    260260  
    261261 static bool ath_lookup_legacy(struct ath_buf *bf) 
    262 @@ -2181,6 +2183,9 @@ static void ath_tx_processq(struct ath_s 
     262@@ -2184,6 +2186,9 @@ static void ath_tx_processq(struct ath_s 
    263263  
    264264        spin_lock_bh(&txq->axq_lock); 
     
    270270                        txq->axq_link = NULL; 
    271271                        if (sc->sc_flags & SC_OP_TXAGGR) 
    272 @@ -2268,9 +2273,7 @@ static void ath_tx_complete_poll_work(st 
     272@@ -2271,9 +2276,7 @@ static void ath_tx_complete_poll_work(st 
    273273        if (needreset) { 
    274274                ath_dbg(ath9k_hw_common(sc->sc_ah), ATH_DBG_RESET, 
     
    281281  
    282282        ieee80211_queue_delayed_work(sc->hw, &sc->tx_complete_work, 
    283 @@ -2303,6 +2306,9 @@ void ath_tx_edma_tasklet(struct ath_soft 
     283@@ -2306,6 +2309,9 @@ void ath_tx_edma_tasklet(struct ath_soft 
    284284        int status; 
    285285  
Note: See TracChangeset for help on using the changeset viewer.