X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=target_firmware%2Fwlan%2Fif_owl.c;h=19a945cdfcfe49b707e8255b99ff41c40e596df4;hb=8c18f096473720783f898f1ada3c4ee880ee1775;hp=19d7a44b3c896d3fe01d45367f65eb6df8d03eb1;hpb=9e8e26c261c4c0211cf0c3cf8da4342e2013caaf;p=open-ath9k-htc-firmware.git diff --git a/target_firmware/wlan/if_owl.c b/target_firmware/wlan/if_owl.c index 19d7a44..19a945c 100755 --- a/target_firmware/wlan/if_owl.c +++ b/target_firmware/wlan/if_owl.c @@ -237,6 +237,7 @@ static void ath_dma_unmap(struct ath_softc_tgt *sc, struct ath_tx_buf *bf) static void ath_filltxdesc(struct ath_softc_tgt *sc, struct ath_tx_buf *bf) { struct ath_tx_desc *ds0, *ds = bf->bf_desc; + struct ath_hal *ah = sc->sc_ah; a_uint8_t i; ds0 = ds; @@ -252,7 +253,7 @@ static void ath_filltxdesc(struct ath_softc_tgt *sc, struct ath_tx_buf *bf) } else ds->ds_link = ATH_BUF_GET_DESC_PHY_ADDR_WITH_IDX(bf, i+1); - ath_hal_filltxdesc(sc->sc_ah, ds + ah->ah_fillTxDesc(ah, ds , bf->bf_dmamap_info.dma_segs[i].len , i == 0 , i == (bf->bf_dmamap_info.nsegs - 1) @@ -650,6 +651,7 @@ void owltgt_tx_processq(struct ath_softc_tgt *sc, struct ath_txq *txq, { struct ath_tx_buf *bf; struct ath_tx_desc *ds; + struct ath_hal *ah = sc->sc_ah; HAL_STATUS status; for (;;) { @@ -662,7 +664,7 @@ void owltgt_tx_processq(struct ath_softc_tgt *sc, struct ath_txq *txq, bf = asf_tailq_first(&txq->axq_q); ds = bf->bf_lastds; - status = ath_hal_txprocdesc(sc->sc_ah, ds); + status = ah->ah_procTxDesc(ah, ds); if (status == HAL_EINPROGRESS) { if (txqstate == OWL_TXQ_ACTIVE) @@ -885,7 +887,7 @@ static void ath_tgt_txq_add_ucast(struct ath_softc_tgt *sc, struct ath_tx_buf *b txq = bf->bf_txq; - status = ath_hal_txprocdesc(sc->sc_ah, bf->bf_lastds); + status = ah->ah_procTxDesc(ah, bf->bf_lastds); ATH_TXQ_INSERT_TAIL(txq, bf, bf_list); @@ -983,11 +985,12 @@ ath_tx_freebuf(struct ath_softc_tgt *sc, struct ath_tx_buf *bf) { a_int32_t i ; struct ath_tx_desc *bfd = NULL; + struct ath_hal *ah = sc->sc_ah; for (bfd = bf->bf_desc, i = 0; i < bf->bf_dmamap_info.nsegs; bfd++, i++) { - ath_hal_clr11n_aggr(sc->sc_ah, bfd); - ath_hal_set11n_burstduration(sc->sc_ah, bfd, 0); - ath_hal_set11n_virtualmorefrag(sc->sc_ah, bfd, 0); + ah->ah_clr11nAggr(ah, bfd); + ah->ah_set11nBurstDuration(ah, bfd, 0); + ah->ah_set11nVirtualMoreFrag(ah, bfd, 0); } ath_dma_unmap(sc, bf); @@ -1198,7 +1201,7 @@ ath_tgt_send_mgt(struct ath_softc_tgt *sc,adf_nbuf_t hdr_buf, adf_nbuf_t skb, flags |= HAL_TXDESC_INTREQ; - ath_hal_setuptxdesc(ah, ds + ah->ah_setupTxDesc(ah, ds , pktlen , hdrlen , atype @@ -1220,8 +1223,8 @@ ath_tgt_send_mgt(struct ath_softc_tgt *sc,adf_nbuf_t hdr_buf, adf_nbuf_t skb, * in Auth frame 3 of Shared Authentication, owl needs this. */ if (iswep && (keyix != HAL_TXKEYIX_INVALID) && - (wh->i_fc[0] & IEEE80211_FC0_SUBTYPE_MASK) == IEEE80211_FC0_SUBTYPE_AUTH) - ath_hal_fillkeytxdesc(ah, ds, mh->keytype); + (wh->i_fc[0] & IEEE80211_FC0_SUBTYPE_MASK) == IEEE80211_FC0_SUBTYPE_AUTH) + ah->ah_fillKeyTxDesc(ah, ds, mh->keytype); ath_filltxdesc(sc, bf); @@ -1410,7 +1413,7 @@ ath_tgt_tx_sched_aggr(struct ath_softc_tgt *sc, ath_atx_tid_t *tid) bf->bf_next = NULL; for(ds = bf->bf_desc; ds <= bf->bf_lastds; ds++) - ath_hal_clr11n_aggr(sc->sc_ah, ds); + ah->ah_clr11nAggr(ah, ds); ath_buf_set_rate(sc, bf); bf->bf_txq_add(sc, bf); @@ -1803,14 +1806,15 @@ ath_tx_retry_subframe(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_tx_desc *ds = NULL; + struct ath_hal *ah = sc->sc_ah; int i = 0; __stats(sc, txaggr_compretries); for(ds = bf->bf_desc, i = 0; i < bf->bf_dmamap_info.nsegs; ds++, i++) { - ath_hal_clr11n_aggr(sc->sc_ah, ds); - ath_hal_set11n_burstduration(sc->sc_ah, ds, 0); - ath_hal_set11n_virtualmorefrag(sc->sc_ah, ds, 0); + ah->ah_clr11nAggr(ah, ds); + ah->ah_set11nBurstDuration(ah, ds, 0); + ah->ah_set11nVirtualMoreFrag(ah, ds, 0); } if (bf->bf_retries >= OWLMAX_RETRIES) { @@ -2125,7 +2129,7 @@ static void ath_bar_tx(struct ath_softc_tgt *sc, adf_nbuf_dmamap_info(bf->bf_dmamap, &bf->bf_dmamap_info); ds = bf->bf_desc; - ath_hal_setuptxdesc(sc->sc_ah, ds + ah->ah_setupTxDesc(ah, ds , adf_nbuf_len(skb) + IEEE80211_CRC_LEN , 0 , HAL_PKT_TYPE_NORMAL @@ -2144,7 +2148,7 @@ static void ath_bar_tx(struct ath_softc_tgt *sc, bf->bf_next = NULL; for (ds0 = ds, i=0; i < bf->bf_dmamap_info.nsegs; ds0++, i++) { - ath_hal_clr11n_aggr(sc->sc_ah, ds0); + ah->ah_clr11nAggr(ah, ds0); } ath_filltxdesc(sc, bf);