X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=target_firmware%2Fwlan%2Fif_athvar.h;h=90150a28bb5c9b3b014095f701e28ccfac750c68;hb=f8b7df1c08ced2b3bde10b48fb7970d2c8910ad1;hp=4ff4a006f6ea8597a1ef78909d4aada8d0a7dd05;hpb=e5409801ddc4c9e9307cd62a129faee038c396f5;p=open-ath9k-htc-firmware.git diff --git a/target_firmware/wlan/if_athvar.h b/target_firmware/wlan/if_athvar.h index 4ff4a00..90150a2 100755 --- a/target_firmware/wlan/if_athvar.h +++ b/target_firmware/wlan/if_athvar.h @@ -146,8 +146,10 @@ struct ath_txq; #define ath_free_rx_skb(_sc,_skb) BUF_Pool_free_buf(_sc->pool_handle, POOL_ID_WLAN_RX_BUF, _skb) #define ath_free_tx_skb(_htc_handle, endpt, _skb) HTC_ReturnBuffers(_htc_handle, endpt, _skb); -typedef void (*ath_txq_add_fn_t)(struct ath_softc_tgt *sc, struct ath_buf *bf); -typedef void (*ath_tx_comp_fn_t)(struct ath_softc_tgt *sc, struct ath_buf *bf); +struct ath_tx_buf; + +typedef void (*ath_txq_add_fn_t)(struct ath_softc_tgt *sc, struct ath_tx_buf *bf); +typedef void (*ath_tx_comp_fn_t)(struct ath_softc_tgt *sc, struct ath_tx_buf *bf); struct ath_buf_state { ath_tx_comp_fn_t bfs_comp; /* completion function */ @@ -194,26 +196,30 @@ struct ath_buf_state { #define bf_retries bf_state.bfs_retries #define ATH_GENERIC_BUF \ - struct ath_buf *bf_next; \ - struct ath_desc *bf_desc; \ - struct ath_desc *bf_descarr; \ adf_os_dma_map_t bf_dmamap; \ adf_os_dmamap_info_t bf_dmamap_info; \ struct ieee80211_node_target *bf_node; \ adf_nbuf_queue_t bf_skbhead; \ - adf_nbuf_t bf_skb; \ - struct ath_desc *bf_lastds; + adf_nbuf_t bf_skb; struct ath_buf { ATH_GENERIC_BUF asf_tailq_entry(ath_buf) bf_list; + struct ath_buf *bf_next; + struct ath_desc *bf_lastds; + struct ath_desc *bf_desc; + struct ath_desc *bf_descarr; }; struct ath_tx_buf { ATH_GENERIC_BUF asf_tailq_entry(ath_tx_buf) bf_list; + struct ath_tx_buf *bf_next; + struct ath_tx_desc *bf_desc; + struct ath_tx_desc *bf_descarr; + struct ath_tx_desc *bf_lastds; struct ath_buf_state bf_state; a_uint16_t bf_flags; HTC_ENDPOINT_ID bf_endpt; @@ -225,6 +231,10 @@ struct ath_rx_buf { ATH_GENERIC_BUF asf_tailq_entry(ath_rx_buf) bf_list; + struct ath_rx_buf *bf_next; + struct ath_rx_desc *bf_desc; + struct ath_rx_desc *bf_descarr; + struct ath_rx_desc *bf_lastds; a_uint32_t bf_status; struct ath_rx_status bf_rx_status; }; @@ -268,7 +278,7 @@ typedef struct ath_atx_tid { a_int32_t baw_tail; a_uint32_t tx_buf_bitmap[ATH_TID_MAX_BUFS/TX_BUF_BITMAP_SIZE]; asf_tailq_entry(ath_atx_tid) tid_qelem; - asf_tailq_head(ath_tid_rbq,ath_buf) buf_q; + asf_tailq_head(ath_tid_rbq,ath_tx_buf) buf_q; a_int8_t paused; a_int8_t sched; a_uint8_t flag; @@ -295,9 +305,9 @@ struct ath_descdma { struct ath_txq { a_uint32_t axq_qnum; a_uint32_t *axq_link; - asf_tailq_head(,ath_buf) axq_q; + asf_tailq_head(,ath_tx_buf) axq_q; a_uint32_t axq_depth; - struct ath_buf *axq_linkbuf; + struct ath_tx_buf *axq_linkbuf; asf_tailq_head(,ath_atx_tid) axq_tidq; }; @@ -311,7 +321,7 @@ struct wmi_rc_rate_mask_cmd { struct ath_vap_target { struct ieee80211vap_target av_vap; struct ath_txq av_mcastq; - struct ath_buf *av_bcbuf; + struct ath_tx_buf *av_bcbuf; a_uint32_t av_rate_mask[2]; /* 0 - 2G, 1 - 5G */ a_uint8_t av_minrateidx[2]; /* 0 - 2G, 1 - 5G */ a_int8_t av_valid; @@ -356,8 +366,6 @@ struct ath_softc_tgt struct ath_ratectrl *sc_rc; a_uint32_t sc_invalid : 1, - sc_txstbcsupport : 1, - sc_rxstbcsupport : 2, sc_tx_draining : 1, sc_enable_coex : 1; @@ -389,7 +397,7 @@ struct ath_softc_tgt ath_deschead sc_rxdesc; struct ath_rx_desc *sc_rxdesc_held; - struct ath_buf *sc_txbuf_held; + struct ath_tx_buf *sc_txbuf_held; struct ath_descdma sc_rxdma; struct ath_descdma sc_txdma; @@ -410,7 +418,7 @@ struct ath_softc_tgt struct ath_vap_target sc_vap[TARGET_VAP_MAX]; struct ieee80211com_target sc_ic; - ath_bufhead sc_bbuf; + ath_tx_bufhead sc_bbuf; a_uint64_t sc_swba_tsf; WMI_TXSTATUS_EVENT tx_status[2]; @@ -481,8 +489,6 @@ typedef enum { a_uint8_t ath_get_minrateidx(struct ath_softc_tgt *sc, struct ath_vap_target *avp); -#define ath_hal_getratetable(_ah, _mode) \ - ((*(_ah)->ah_getRateTable)((_ah), (_mode))) #define ath_hal_intrset(_ah, _mask) \ ((*(_ah)->ah_setInterrupts)((_ah), (_mask))) #define ath_hal_intrpend(_ah) \ @@ -537,10 +543,6 @@ a_uint8_t ath_get_minrateidx(struct ath_softc_tgt *sc, struct ath_vap_target *av ((*(_ah)->ah_stopPcuReceive)((_ah))) #define ath_hal_htsupported(_ah) \ (ath_hal_getcapability(_ah, HAL_CAP_HT, 0, NULL) == HAL_OK) -#define ath_hal_rxstbcsupport(_ah, _rxstbc) \ - (ath_hal_getcapability(_ah, HAL_CAP_RX_STBC, 0, _rxstbc) == HAL_OK) -#define ath_hal_txstbcsupport(_ah, _txstbc) \ - (ath_hal_getcapability(_ah, HAL_CAP_TX_STBC, 0, _txstbc) == HAL_OK) #define ath_hal_getrtsaggrlimit(_ah, _pv) \ (ath_hal_getcapability(_ah, HAL_CAP_RTS_AGGR_LIMIT, 0, _pv) == HAL_OK) #define ath_hal_puttxbuf(_ah, _q, _bufaddr) \ @@ -553,8 +555,6 @@ a_uint8_t ath_get_minrateidx(struct ath_softc_tgt *sc, struct ath_vap_target *av ((*(_ah)->ah_getTsf64)((_ah))) #define ath_hal_intrset(_ah, _mask) \ ((*(_ah)->ah_setInterrupts)((_ah), (_mask))) -#define ath_hal_getcapability(_ah, _cap, _param, _result) \ - ((*(_ah)->ah_getCapability)((_ah), (_cap), (_param), (_result))) #define ath_hal_set11n_aggr_first(_ah, _ds, _aggrlen, _numdelims) \ ((*(_ah)->ah_set11nAggrFirst)(_ah, _ds, _aggrlen, _numdelims)) #define ath_hal_set11n_aggr_middle(_ah, _ds, _numdelims) \