build fix: use adf_os_mem_set instead of memset
[open-ath9k-htc-firmware.git] / target_firmware / wlan / if_owl.c
index 39a48c2db29f09b05bfda9852b84c2bf0d1ec8fa..40721cde3785ae3982a5fb1e499ac44b5c4afed1 100755 (executable)
@@ -97,7 +97,7 @@ static a_uint16_t bits_per_symbol[][2] = {
 void owltgt_tx_processq(struct ath_softc_tgt *sc, struct ath_txq *txq,
                        owl_txq_state_t txqstate);
 static void ath_tgt_txqaddbuf(struct ath_softc_tgt *sc, struct ath_txq *txq,
-                             struct ath_buf *bf,  struct ath_desc *lastds);
+                             struct ath_tx_buf *bf,  struct ath_tx_desc *lastds);
 void ath_rate_findrate_11n_Hardcoded(struct ath_softc_tgt *sc,
                                     struct ath_rc_series series[]);
 void ath_buf_set_rate_Hardcoded(struct ath_softc_tgt *sc,
@@ -106,12 +106,10 @@ static a_int32_t ath_tgt_txbuf_setup(struct ath_softc_tgt *sc,
                                     struct ath_tx_buf *bf, ath_data_hdr_t *dh);
 static void ath_tx_freebuf(struct ath_softc_tgt *sc, struct ath_tx_buf *bf);
 static void ath_tx_uc_comp(struct ath_softc_tgt *sc, struct ath_tx_buf *bf);
-static void ath_update_stats(struct ath_softc_tgt *sc, struct ath_buf *bf);
+static void ath_update_stats(struct ath_softc_tgt *sc, struct ath_tx_buf *bf);
 void adf_print_buf(adf_nbuf_t buf);
 static void ath_tgt_tx_enqueue(struct ath_txq *txq, struct ath_atx_tid  *tid);
 
-struct ath_buf * ath_tgt_tx_prepare(struct ath_softc_tgt *sc,
-                                   adf_nbuf_t skb, ath_data_hdr_t *dh);
 void ath_tgt_tx_comp_aggr(struct ath_softc_tgt *sc, struct ath_tx_buf *bf);
 struct ieee80211_frame *ATH_SKB_2_WH(adf_nbuf_t skb);
 
@@ -120,12 +118,9 @@ void ath_tgt_tx_send_normal(struct ath_softc_tgt *sc, struct ath_tx_buf *bf);
 static void ath_tgt_tx_sched_normal(struct ath_softc_tgt *sc, ath_atx_tid_t *tid);
 static void ath_tgt_tx_sched_aggr(struct ath_softc_tgt *sc, ath_atx_tid_t *tid);
 
-static struct ath_node_target * owltarget_findnode(struct  tx_frame_heade *dh,
-                                                  struct ath_softc_tgt *sc,
-                                                  struct adf_nbuf_t *skb);
 extern a_int32_t ath_chainmask_sel_logic(void *);
-static a_int32_t ath_get_pktlen(struct ath_buf *bf, a_int32_t hdrlen);
-static void ath_tgt_txq_schedule(struct ath_softc *sc, struct ath_txq *txq);
+static a_int32_t ath_get_pktlen(struct ath_tx_buf *bf, a_int32_t hdrlen);
+static void ath_tgt_txq_schedule(struct ath_softc_tgt *sc, struct ath_txq *txq);
 
 typedef void (*ath_ft_set_atype_t)(struct ath_softc_tgt *sc, struct ath_buf *bf);
 
@@ -138,7 +133,7 @@ static void
 ath_tx_update_baw(ath_atx_tid_t *tid, int seqno);
 static  void
 ath_tx_retry_subframe(struct ath_softc_tgt *sc, struct ath_tx_buf *bf,
-                     ath_bufhead *bf_q, struct ath_tx_buf **bar);
+                     ath_tx_bufhead *bf_q, struct ath_tx_buf **bar);
 
 static void
 ath_tx_comp_aggr_error(struct ath_softc_tgt *sc, struct ath_tx_buf *bf, ath_atx_tid_t *tid);
@@ -225,7 +220,7 @@ static a_uint32_t ath_pkt_duration(struct ath_softc_tgt *sc,
        return duration;
 }
 
-static void ath_dma_map(struct ath_softc_tgt *sc, struct ath_buf *bf)
+static void ath_dma_map(struct ath_softc_tgt *sc, struct ath_tx_buf *bf)
 {
        adf_nbuf_t skb = bf->bf_skb;
 
@@ -233,7 +228,7 @@ static void ath_dma_map(struct ath_softc_tgt *sc, struct ath_buf *bf)
        adf_nbuf_map(sc->sc_dev, bf->bf_dmamap, skb, ADF_OS_DMA_TO_DEVICE);
 }
 
-static void ath_dma_unmap(struct ath_softc_tgt *sc, struct ath_buf *bf)
+static void ath_dma_unmap(struct ath_softc_tgt *sc, struct ath_tx_buf *bf)
 {
        adf_nbuf_t skb = bf->bf_skb;
 
@@ -243,7 +238,7 @@ static void ath_dma_unmap(struct ath_softc_tgt *sc, struct ath_buf *bf)
 
 static void ath_filltxdesc(struct ath_softc_tgt *sc, struct ath_tx_buf *bf)
 {
-       struct ath_desc *ds0, *ds = bf->bf_desc;
+       struct ath_tx_desc *ds0, *ds = bf->bf_desc;
        a_uint8_t i;
 
        ds0 = ds;
@@ -269,10 +264,7 @@ static void ath_filltxdesc(struct ath_softc_tgt *sc, struct ath_tx_buf *bf)
 
 static void ath_tx_tgt_setds(struct ath_softc_tgt *sc, struct ath_tx_buf *bf)
 {
-       struct ath_desc *ds0, *ds = bf->bf_desc;
-       adf_nbuf_t skb;
-       adf_nbuf_queue_t skbhead;
-       a_int32_t i, dscnt = 0;
+       struct ath_tx_desc *ds = bf->bf_desc;
 
        switch (bf->bf_protmode) {
        case IEEE80211_PROT_RTSCTS:
@@ -296,7 +288,7 @@ static void ath_tx_tgt_setds(struct ath_softc_tgt *sc, struct ath_tx_buf *bf)
        ath_filltxdesc(sc, bf);
 }
 
-static struct ath_buf *ath_buf_toggle(struct ath_softc_tgt *sc,
+static struct ath_tx_buf *ath_buf_toggle(struct ath_softc_tgt *sc,
                                      struct ath_tx_buf *bf,
                                      a_uint8_t retry)
 {
@@ -376,11 +368,10 @@ static void ath_buf_set_rate(struct ath_softc_tgt *sc, struct ath_tx_buf *bf)
 {
     struct ath_hal *ah = sc->sc_ah;
     const HAL_RATE_TABLE *rt;
-    struct ath_desc *ds = bf->bf_desc;
+    struct ath_tx_desc *ds = bf->bf_desc;
     HAL_11N_RATE_SERIES series[4];
     a_int32_t i, flags;
     a_uint8_t rix, cix, rtsctsrate;
-    a_uint32_t aggr_limit_with_rts;
     a_uint32_t ctsduration = 0;
     a_int32_t prot_mode = AH_FALSE;
 
@@ -408,13 +399,6 @@ static void ath_buf_set_rate(struct ath_softc_tgt *sc, struct ath_tx_buf *bf)
            }
     }
 
-    ath_hal_getrtsaggrlimit(sc->sc_ah, &aggr_limit_with_rts);
-
-    if (bf->bf_isaggr && aggr_limit_with_rts &&
-       bf->bf_al > aggr_limit_with_rts) {
-           flags &= ~(HAL_TXDESC_RTSENA);
-    }
-
     adf_os_mem_set(series, 0, sizeof(HAL_11N_RATE_SERIES) * 4);
 
     for (i = 0; i < 4; i++) {
@@ -521,7 +505,7 @@ static void owl_tgt_tid_cleanup(struct ath_softc_tgt *sc,
 void owl_tgt_node_init(struct ath_node_target * an)
 {
        struct ath_atx_tid *tid;
-       int tidno, i;
+       int tidno;
 
        for (tidno = 0, tid = &an->tid[tidno]; tidno < WME_NUM_TID;tidno++, tid++) {
                tid->tidno = tidno;
@@ -546,7 +530,7 @@ void ath_tx_status_clear(struct ath_softc_tgt *sc)
        }
 }
 
-struct WMI_TXSTATUS_EVENT* ath_tx_status_get(struct ath_softc_tgt *sc)
+static WMI_TXSTATUS_EVENT *ath_tx_status_get(struct ath_softc_tgt *sc)
 {
        WMI_TXSTATUS_EVENT *txs = NULL;
        int i;
@@ -643,9 +627,7 @@ void owl_tgt_tx_tasklet(TQUEUE_ARG data)
 {
        struct ath_softc_tgt *sc = (struct ath_softc_tgt *)data;
        a_int32_t i;
-       a_uint32_t qcumask = ((1 << HAL_NUM_TX_QUEUES) - 1);
        struct ath_txq *txq;
-       ath_data_hdr_t *dh;
 
        ath_tx_status_clear(sc);
 
@@ -741,7 +723,6 @@ static void ath_tgt_tx_comp_normal(struct ath_softc_tgt *sc,
                                   struct ath_tx_buf *bf)
 {
        struct ath_node_target *an = ATH_NODE_TARGET(bf->bf_node);
-       struct ath_desc *ds = bf->bf_lastds;
        ath_atx_tid_t *tid = ATH_AN_2_TID(an, bf->bf_tidno);
 
        if (tid->flag & TID_CLEANUP_INPROGRES) {
@@ -759,7 +740,6 @@ static struct ieee80211_node_target * ath_tgt_find_node(struct ath_softc_tgt *sc
                                                        a_int32_t node_index)
 {
        struct ath_node_target *an;
-       a_int32_t i;
        struct ieee80211_node_target *ni;
 
        if (node_index > TARGET_NODE_MAX)
@@ -778,7 +758,7 @@ static struct ieee80211_node_target * ath_tgt_find_node(struct ath_softc_tgt *sc
        return NULL;
 }
 
-static struct ath_buf* ath_buf_alloc(struct ath_softc_tgt *sc)
+static struct ath_tx_buf* ath_tx_buf_alloc(struct ath_softc_tgt *sc)
 {
        struct ath_tx_buf *bf = NULL;
 
@@ -793,13 +773,11 @@ static struct ath_buf* ath_buf_alloc(struct ath_softc_tgt *sc)
        return  bf;
 }
 
-struct ath_buf* ath_tgt_tx_prepare(struct ath_softc_tgt *sc,
+struct ath_tx_buf* ath_tgt_tx_prepare(struct ath_softc_tgt *sc,
                                   adf_nbuf_t skb, ath_data_hdr_t *dh)
 {
        struct ath_tx_buf *bf;
-       struct ath_txq *txq;
        struct ieee80211_node_target *ni;
-       a_uint32_t flags = adf_os_ntohl(dh->flags);
        struct ath_atx_tid *tid;
 
        ni = ath_tgt_find_node(sc, dh->ni_index);
@@ -812,7 +790,7 @@ struct ath_buf* ath_tgt_tx_prepare(struct ath_softc_tgt *sc,
                return NULL;
        }
 
-       bf = ath_buf_alloc(sc);
+       bf = ath_tx_buf_alloc(sc);
        if (!bf) {
                __stats(sc, tx_nobufs);
                return NULL;
@@ -823,7 +801,7 @@ struct ath_buf* ath_tgt_tx_prepare(struct ath_softc_tgt *sc,
        bf->bf_keytype = dh->keytype;
        bf->bf_keyix = dh->keyix;
        bf->bf_protmode = dh->flags & (IEEE80211_PROT_RTSCTS | IEEE80211_PROT_CTSONLY);
-       bf->bf_node = (struct ath_node_target *)ni;
+       bf->bf_node = ni;
 
        adf_nbuf_queue_add(&bf->bf_skbhead, skb);
        skb = adf_nbuf_queue_first(&(bf->bf_skbhead));
@@ -868,8 +846,6 @@ static a_int32_t ath_key_setup(struct ieee80211_node_target *ni,
                               struct ath_tx_buf *bf)
 {
        struct ieee80211_frame *wh = ATH_SKB_2_WH(bf->bf_skb);
-       const struct ieee80211_cipher *cip;
-       struct ieee80211_key *k;
 
        if (!(wh->i_fc[1] & IEEE80211_FC1_WEP)) {
                bf->bf_keytype = HAL_KEY_TYPE_CLEAR;
@@ -902,9 +878,7 @@ static void ath_tgt_txq_add_ucast(struct ath_softc_tgt *sc, struct ath_tx_buf *b
 {
        struct ath_hal *ah = sc->sc_ah;
        struct ath_txq *txq;
-       struct ath_node_target *an;
        HAL_STATUS status;
-       static a_int32_t count = 0,i;
        volatile a_int32_t txe_val;
 
        adf_os_assert(bf);
@@ -934,12 +908,8 @@ static a_int32_t ath_tgt_txbuf_setup(struct ath_softc_tgt *sc,
                                     ath_data_hdr_t *dh)
 
 {
-       struct ath_node_target *an = ATH_NODE_TARGET(bf->bf_node);
        struct ieee80211_frame *wh = ATH_SKB2_WH(bf->bf_skb);
-       struct ieee80211_node_target *ni = (struct ieee80211_node_target *)an;
-       struct ieee80211vap_target *vap = ni->ni_vap;
-       struct ieee80211com_target *ic = &sc->sc_ic;
-       a_int32_t retval, fragno = 0;
+       a_int32_t retval;
        a_uint32_t flags = adf_os_ntohl(dh->flags);
 
        ath_tgt_tx_seqno_normal(bf);
@@ -964,7 +934,7 @@ static a_int32_t ath_tgt_txbuf_setup(struct ath_softc_tgt *sc,
 }
 
 static a_int32_t
-ath_get_pktlen(struct ath_buf *bf, a_int32_t hdrlen)
+ath_get_pktlen(struct ath_tx_buf *bf, a_int32_t hdrlen)
 {
        adf_nbuf_t skb = bf->bf_skb;
        a_int32_t pktlen;
@@ -981,7 +951,7 @@ ath_get_pktlen(struct ath_buf *bf, a_int32_t hdrlen)
 void
 ath_tgt_tx_send_normal(struct ath_softc_tgt *sc, struct ath_tx_buf *bf)
 {
-       struct ath_node_target *an = bf->bf_node;
+       struct ath_node_target *an = ATH_NODE_TARGET(bf->bf_node);
        struct ath_rc_series rcs[4];
        struct ath_rc_series mrcs[4];
        a_int32_t shortPreamble = 0;
@@ -994,14 +964,14 @@ ath_tgt_tx_send_normal(struct ath_softc_tgt *sc, struct ath_tx_buf *bf)
                ath_tgt_rate_findrate(sc, an, shortPreamble,
                                      0, 0, 0, 0, 0,
                                      rcs, &isProbe);
-               memcpy(bf->bf_rcs, rcs, sizeof(rcs));
+               ath_hal_memcpy(bf->bf_rcs, rcs, sizeof(rcs));
        } else {
                mrcs[1].tries = mrcs[2].tries = mrcs[3].tries = 0;
                mrcs[1].rix = mrcs[2].rix = mrcs[3].rix = 0;
                mrcs[0].rix   = 0;
                mrcs[0].tries = 1;
                mrcs[0].flags = 0;
-               memcpy(bf->bf_rcs, mrcs, sizeof(mrcs));
+               ath_hal_memcpy(bf->bf_rcs, mrcs, sizeof(mrcs));
        }
 
        ath_buf_set_rate(sc, bf);
@@ -1012,7 +982,7 @@ static void
 ath_tx_freebuf(struct ath_softc_tgt *sc, struct ath_tx_buf *bf)
 {
        a_int32_t i ;
-       struct ath_desc *bfd = NULL;
+       struct ath_tx_desc *bfd = NULL;
 
        for (bfd = bf->bf_desc, i = 0; i < bf->bf_dmamap_info.nsegs; bfd++, i++) {
                ath_hal_clr11n_aggr(sc->sc_ah, bfd);
@@ -1046,13 +1016,10 @@ ath_tx_uc_comp(struct ath_softc_tgt *sc, struct ath_tx_buf *bf)
 }
 
 static void
-ath_update_stats(struct ath_softc_tgt *sc, struct ath_buf *bf)
+ath_update_stats(struct ath_softc_tgt *sc, struct ath_tx_buf *bf)
 {
-       struct ieee80211_node_target *ni = bf->bf_node;
        struct ath_tx_desc *ds = bf->bf_desc;
-       struct ath_node_target *an = ATH_NODE_TARGET(ni);
        u_int32_t sr, lr;
-       struct ieee80211_cb *cb;
 
        if (ds->ds_txstat.ts_status == 0) {
                if (ds->ds_txstat.ts_rate & HAL_TXSTAT_ALTRATE)
@@ -1082,9 +1049,9 @@ ath_tgt_send_mgt(struct ath_softc_tgt *sc,adf_nbuf_t hdr_buf, adf_nbuf_t skb,
        struct ath_vap_target *avp;
        struct ath_hal *ah = sc->sc_ah;
        a_uint8_t rix, txrate, ctsrate, cix = 0xff, *data;
-       a_uint32_t ivlen = 0, icvlen = 0, subtype, flags, ctsduration, fval;
+       a_uint32_t ivlen = 0, icvlen = 0, subtype, flags, ctsduration;
        a_int32_t i, iswep, ismcast, hdrlen, pktlen, try0, len;
-       struct ath_desc *ds=NULL, *ds0=NULL;
+       struct ath_tx_desc *ds=NULL;
        struct ath_txq *txq=NULL;
        struct ath_tx_buf *bf;
        HAL_PKT_TYPE atype;
@@ -1094,7 +1061,6 @@ ath_tgt_send_mgt(struct ath_softc_tgt *sc,adf_nbuf_t hdr_buf, adf_nbuf_t skb,
        struct ath_rc_series rcs[4];
        HAL_11N_RATE_SERIES series[4];
        ath_mgt_hdr_t *mh;
-       struct ieee80211com_target *ic = &sc->sc_ic;
        a_int8_t keyix;
 
        if (!hdr_buf) {
@@ -1276,8 +1242,8 @@ fail:
 
 static void
 ath_tgt_txqaddbuf(struct ath_softc_tgt *sc,
-                 struct ath_txq *txq, struct ath_buf *bf,
-                 struct ath_desc *lastds)
+                 struct ath_txq *txq, struct ath_tx_buf *bf,
+                 struct ath_tx_desc *lastds)
 {
        struct ath_hal *ah = sc->sc_ah;
 
@@ -1297,9 +1263,6 @@ void ath_tgt_handle_normal(struct ath_softc_tgt *sc, struct ath_tx_buf *bf)
 {
        ath_atx_tid_t *tid;
        struct ath_node_target *an;
-       struct ath_desc *ds;
-       struct ath_txq *txq = bf->bf_txq;
-       a_bool_t queue_frame;
 
        an = (struct ath_node_target *)bf->bf_node;
        adf_os_assert(an);
@@ -1326,14 +1289,10 @@ ath_tgt_tx_enqueue(struct ath_txq *txq, struct ath_atx_tid  *tid)
 }
 
 static void
-ath_tgt_txq_schedule(struct ath_softc *sc, struct ath_txq *txq)
+ath_tgt_txq_schedule(struct ath_softc_tgt *sc, struct ath_txq *txq)
 {
        struct ath_atx_tid  *tid;
        u_int8_t bdone;
-       HAL_STATUS status;
-       u_int8_t smps_mode;
-       struct ieee80211_node *ieee_node;
-       u_int32_t aggr_limit_with_rts;
 
        bdone = AH_FALSE;
 
@@ -1367,7 +1326,6 @@ ath_tgt_handle_aggr(struct ath_softc_tgt *sc, struct ath_tx_buf *bf)
 {
        ath_atx_tid_t *tid;
        struct ath_node_target *an;
-       struct ath_desc *ds;
        struct ath_txq *txq = bf->bf_txq;
        a_bool_t queue_frame, within_baw;
 
@@ -1399,7 +1357,7 @@ ath_tgt_handle_aggr(struct ath_softc_tgt *sc, struct ath_tx_buf *bf)
 static void
 ath_tgt_tx_sched_normal(struct ath_softc_tgt *sc, ath_atx_tid_t *tid)
 {
-       struct ath_buf *bf;
+       struct ath_tx_buf *bf;
        struct ath_txq *txq =TID_TO_ACTXQ(tid->tidno);;
 
        do {
@@ -1418,9 +1376,9 @@ ath_tgt_tx_sched_aggr(struct ath_softc_tgt *sc, ath_atx_tid_t *tid)
 {
        struct ath_tx_buf  *bf, *bf_last;
        ATH_AGGR_STATUS status;
-       ath_bufhead bf_q;
+       ath_tx_bufhead bf_q;
        struct ath_txq *txq = TID_TO_ACTXQ(tid->tidno);
-       struct ath_desc *ds = NULL;
+       struct ath_tx_desc *ds = NULL;
        int i;
 
 
@@ -1439,7 +1397,7 @@ ath_tgt_tx_sched_aggr(struct ath_softc_tgt *sc, ath_atx_tid_t *tid)
                        break;
 
                bf = asf_tailq_first(&bf_q);
-               bf_last = asf_tailq_last(&bf_q, ath_bufhead_s);
+               bf_last = asf_tailq_last(&bf_q, ath_tx_bufhead_s);
 
                if (bf->bf_nframes == 1) {
 
@@ -1532,11 +1490,11 @@ static u_int32_t ath_lookup_rate(struct ath_softc_tgt *sc,
 }
 
 int ath_tgt_tx_form_aggr(struct ath_softc_tgt *sc, ath_atx_tid_t *tid,
-                        ath_bufhead *bf_q)
+                        ath_tx_bufhead *bf_q)
 {
        struct ath_tx_buf *bf_first ,*bf_prev = NULL;
        int nframes = 0, rl = 0;;
-       struct ath_desc *ds = NULL;
+       struct ath_tx_desc *ds = NULL;
        struct ath_tx_buf *bf;
        u_int16_t aggr_limit =  (64*1024 -1), al = 0, bpad = 0, al_delta;
        u_int16_t h_baw = tid->baw_size/2, prev_al = 0, prev_frames = 0;
@@ -1655,10 +1613,10 @@ void ath_tgt_tx_comp_aggr(struct ath_softc_tgt *sc, struct ath_tx_buf *bf)
        int ba_index;
        int nbad = 0;
        int nframes = bf->bf_nframes;
-       struct ath_buf *bf_next;
-       ath_bufhead bf_q;
+       struct ath_tx_buf *bf_next;
+       ath_tx_bufhead bf_q;
        int tx_ok = 1;
-       struct ath_buf *bar = NULL;
+       struct ath_tx_buf *bar = NULL;
        struct ath_txq *txq;
 
        txq = bf->bf_txq;
@@ -1738,12 +1696,12 @@ ath_tx_comp_aggr_error(struct ath_softc_tgt *sc, struct ath_tx_buf *bf,
 
 
        struct ath_tx_desc lastds;
-       struct ath_desc *ds = &lastds;
+       struct ath_tx_desc *ds = &lastds;
        struct ath_rc_series rcs[4];
-       struct ath_buf *bar = NULL;
-       struct ath_buf *bf_next;
+       struct ath_tx_buf *bar = NULL;
+       struct ath_tx_buf *bf_next;
        int nframes = bf->bf_nframes;
-       ath_bufhead bf_q;
+       ath_tx_bufhead bf_q;
        struct ath_txq *txq;
 
        asf_tailq_init(&bf_q);
@@ -1786,7 +1744,7 @@ ath_tx_comp_cleanup(struct ath_softc_tgt *sc, struct ath_tx_buf *bf)
        int ba_index;
        int nbad = 0;
        int nframes = bf->bf_nframes;
-       struct ath_buf *bf_next;
+       struct ath_tx_buf *bf_next;
        int tx_ok = 1;
 
        adf_os_mem_copy(ds, bf->bf_lastds, sizeof (struct ath_tx_desc));
@@ -1837,12 +1795,12 @@ ath_tx_comp_cleanup(struct ath_softc_tgt *sc, struct ath_tx_buf *bf)
 
 static void
 ath_tx_retry_subframe(struct ath_softc_tgt *sc, struct ath_tx_buf *bf,
-                     ath_bufhead *bf_q, struct ath_tx_buf **bar)
+                     ath_tx_bufhead *bf_q, struct ath_tx_buf **bar)
 {
 
        struct ath_node_target *an = ATH_NODE_TARGET(bf->bf_node);
        ath_atx_tid_t *tid = ATH_AN_2_TID(an, bf->bf_tidno);
-       struct ath_desc *ds = NULL;
+       struct ath_tx_desc *ds = NULL;
        int i = 0;
 
        __stats(sc, txaggr_compretries);
@@ -1921,7 +1879,7 @@ ath_tx_comp_unaggr(struct ath_softc_tgt *sc, struct ath_tx_buf *bf)
 {
        struct ath_node_target *an = ATH_NODE_TARGET(bf->bf_node);
        ath_atx_tid_t *tid = ATH_AN_2_TID(an, bf->bf_tidno);
-       struct ath_desc *ds  = bf->bf_lastds;
+       struct ath_tx_desc *ds  = bf->bf_lastds;
 
        ath_update_stats(sc, bf);
        ath_rate_tx_complete(sc, an, ds, bf->bf_rcs, 1, 0);
@@ -2096,7 +2054,7 @@ static void ath_bar_retry(struct ath_softc_tgt *sc, struct ath_tx_buf *bf)
 
 static void ath_bar_tx_comp(struct ath_softc_tgt *sc, struct ath_tx_buf *bf)
 {
-       struct ath_desc *ds = bf->bf_lastds;
+       struct ath_tx_desc *ds = bf->bf_lastds;
        struct ath_node_target *an;
        ath_atx_tid_t *tid;
        struct ath_txq *txq;
@@ -2122,7 +2080,7 @@ static void ath_bar_tx(struct ath_softc_tgt *sc,
        adf_nbuf_t skb;
        struct ieee80211_frame_bar *bar;
        u_int8_t min_rate;
-       struct ath_desc *ds, *ds0;
+       struct ath_tx_desc *ds, *ds0;
        HAL_11N_RATE_SERIES series[4];
        int i = 0;
        adf_nbuf_queue_t skbhead;
@@ -2131,7 +2089,7 @@ static void ath_bar_tx(struct ath_softc_tgt *sc,
 
        __stats(sc, tx_bars);
 
-       memset(&series, 0, sizeof(series));
+       adf_os_mem_set(&series, 0, sizeof(series));
 
        ath_aggr_pause_tid(sc, tid);