• Home
  • Raw
  • Download

Lines Matching refs:ab

17 	struct ath11k_base *ab = arvif->ar->ab;  in ath11k_dp_tx_get_encap_type()  local
19 if (test_bit(ATH11K_FLAG_RAW_MODE, &ab->dev_flags)) in ath11k_dp_tx_get_encap_type()
83 struct ath11k_base *ab = ar->ab; in ath11k_dp_tx() local
84 struct ath11k_dp *dp = &ab->dp; in ath11k_dp_tx()
98 if (test_bit(ATH11K_FLAG_CRASH_FLUSH, &ar->ab->dev_flags)) in ath11k_dp_tx()
119 if (ar->ab->hw_params.tcl_0_only) in ath11k_dp_tx()
135 atomic_inc(&ab->soc_stats.tx_err.misc_fail); in ath11k_dp_tx()
192 if (!test_bit(ATH11K_FLAG_RAW_MODE, &ab->dev_flags)) { in ath11k_dp_tx()
204 atomic_inc(&ab->soc_stats.tx_err.misc_fail); in ath11k_dp_tx()
208 ti.paddr = dma_map_single(ab->dev, skb->data, skb->len, DMA_TO_DEVICE); in ath11k_dp_tx()
209 if (dma_mapping_error(ab->dev, ti.paddr)) { in ath11k_dp_tx()
210 atomic_inc(&ab->soc_stats.tx_err.misc_fail); in ath11k_dp_tx()
211 ath11k_warn(ab, "failed to DMA map data Tx buffer\n"); in ath11k_dp_tx()
222 tcl_ring = &ab->hal.srng_list[hal_ring_id]; in ath11k_dp_tx()
226 ath11k_hal_srng_access_begin(ab, tcl_ring); in ath11k_dp_tx()
228 hal_tcl_desc = (void *)ath11k_hal_srng_src_get_next_entry(ab, tcl_ring); in ath11k_dp_tx()
233 ath11k_hal_srng_access_end(ab, tcl_ring); in ath11k_dp_tx()
234 ab->soc_stats.tx_err.desc_na[ti.ring_id]++; in ath11k_dp_tx()
244 !ar->ab->hw_params.tcl_0_only) { in ath11k_dp_tx()
252 ath11k_hal_tx_cmd_desc_setup(ab, hal_tcl_desc + in ath11k_dp_tx()
255 ath11k_hal_srng_access_end(ab, tcl_ring); in ath11k_dp_tx()
257 ath11k_dp_shadow_start_timer(ab, tcl_ring, &dp->tx_ring_timer[ti.ring_id]); in ath11k_dp_tx()
261 ath11k_dbg_dump(ab, ATH11K_DBG_DP_TX, NULL, "dp tx msdu: ", in ath11k_dp_tx()
269 dma_unmap_single(ab->dev, ti.paddr, ti.data_len, DMA_TO_DEVICE); in ath11k_dp_tx()
283 static void ath11k_dp_tx_free_txbuf(struct ath11k_base *ab, u8 mac_id, in ath11k_dp_tx_free_txbuf() argument
294 ath11k_warn(ab, "tx completion for unknown msdu_id %d\n", in ath11k_dp_tx_free_txbuf()
305 dma_unmap_single(ab->dev, skb_cb->paddr, msdu->len, DMA_TO_DEVICE); in ath11k_dp_tx_free_txbuf()
308 ar = ab->pdevs[mac_id].ar; in ath11k_dp_tx_free_txbuf()
314 ath11k_dp_tx_htt_tx_complete_buf(struct ath11k_base *ab, in ath11k_dp_tx_htt_tx_complete_buf() argument
326 ath11k_warn(ab, "htt tx completion for unknown msdu_id %d\n", in ath11k_dp_tx_htt_tx_complete_buf()
343 dma_unmap_single(ab->dev, skb_cb->paddr, msdu->len, DMA_TO_DEVICE); in ath11k_dp_tx_htt_tx_complete_buf()
362 ath11k_dp_tx_process_htt_tx_complete(struct ath11k_base *ab, in ath11k_dp_tx_process_htt_tx_complete() argument
382 ath11k_dp_tx_htt_tx_complete_buf(ab, tx_ring, &ts); in ath11k_dp_tx_process_htt_tx_complete()
386 ath11k_dp_tx_free_txbuf(ab, mac_id, msdu_id, tx_ring); in ath11k_dp_tx_process_htt_tx_complete()
394 ath11k_warn(ab, "Unknown htt tx status %d\n", wbm_status); in ath11k_dp_tx_process_htt_tx_complete()
420 struct ath11k_base *ab = ar->ab; in ath11k_dp_tx_complete_msdu() local
431 dma_unmap_single(ab->dev, skb_cb->paddr, msdu->len, DMA_TO_DEVICE); in ath11k_dp_tx_complete_msdu()
435 if (!rcu_dereference(ab->pdevs_active[ar->pdev_idx])) { in ath11k_dp_tx_complete_msdu()
497 static inline void ath11k_dp_tx_status_parse(struct ath11k_base *ab, in ath11k_dp_tx_status_parse() argument
528 void ath11k_dp_tx_completion_handler(struct ath11k_base *ab, int ring_id) in ath11k_dp_tx_completion_handler() argument
531 struct ath11k_dp *dp = &ab->dp; in ath11k_dp_tx_completion_handler()
533 struct hal_srng *status_ring = &ab->hal.srng_list[hal_ring_id]; in ath11k_dp_tx_completion_handler()
543 ath11k_hal_srng_access_begin(ab, status_ring); in ath11k_dp_tx_completion_handler()
547 (desc = ath11k_hal_srng_dst_get_next_entry(ab, status_ring))) { in ath11k_dp_tx_completion_handler()
554 if ((ath11k_hal_srng_dst_peek(ab, status_ring) != NULL) && in ath11k_dp_tx_completion_handler()
557 …ath11k_warn(ab, "Unable to process some of the tx_status ring desc because status_fifo is full\n"); in ath11k_dp_tx_completion_handler()
560 ath11k_hal_srng_access_end(ab, status_ring); in ath11k_dp_tx_completion_handler()
571 ath11k_dp_tx_status_parse(ab, tx_status, &ts); in ath11k_dp_tx_completion_handler()
579 ath11k_dp_tx_process_htt_tx_complete(ab, in ath11k_dp_tx_completion_handler()
589 ath11k_warn(ab, "tx completion for unknown msdu_id %d\n", in ath11k_dp_tx_completion_handler()
597 ar = ab->pdevs[mac_id].ar; in ath11k_dp_tx_completion_handler()
606 int ath11k_dp_tx_send_reo_cmd(struct ath11k_base *ab, struct dp_rx_tid *rx_tid, in ath11k_dp_tx_send_reo_cmd() argument
612 struct ath11k_dp *dp = &ab->dp; in ath11k_dp_tx_send_reo_cmd()
617 cmd_ring = &ab->hal.srng_list[dp->reo_cmd_ring.ring_id]; in ath11k_dp_tx_send_reo_cmd()
618 cmd_num = ath11k_hal_reo_cmd_send(ab, cmd_ring, type, cmd); in ath11k_dp_tx_send_reo_cmd()
652 ath11k_dp_tx_get_ring_id_type(struct ath11k_base *ab, in ath11k_dp_tx_get_ring_id_type() argument
668 if (!ab->hw_params.rx_mac_buf_ring) { in ath11k_dp_tx_get_ring_id_type()
708 ath11k_warn(ab, "Unsupported ring type in DP :%d\n", ring_type); in ath11k_dp_tx_get_ring_id_type()
714 int ath11k_dp_tx_htt_srng_setup(struct ath11k_base *ab, u32 ring_id, in ath11k_dp_tx_htt_srng_setup() argument
718 struct hal_srng *srng = &ab->hal.srng_list[ring_id]; in ath11k_dp_tx_htt_srng_setup()
728 skb = ath11k_htc_alloc_skb(ab, len); in ath11k_dp_tx_htt_srng_setup()
733 ath11k_hal_srng_get_params(ab, srng, &params); in ath11k_dp_tx_htt_srng_setup()
735 hp_addr = ath11k_hal_srng_get_hp_addr(ab, srng); in ath11k_dp_tx_htt_srng_setup()
736 tp_addr = ath11k_hal_srng_get_tp_addr(ab, srng); in ath11k_dp_tx_htt_srng_setup()
738 ret = ath11k_dp_tx_get_ring_id_type(ab, mac_id, ring_id, in ath11k_dp_tx_htt_srng_setup()
765 ret = ath11k_hal_srng_get_entrysize(ab, ring_type); in ath11k_dp_tx_htt_srng_setup()
813 ath11k_dbg(ab, ATH11k_DBG_HAL, in ath11k_dp_tx_htt_srng_setup()
818 ath11k_dbg(ab, ATH11k_DBG_HAL, in ath11k_dp_tx_htt_srng_setup()
822 ret = ath11k_htc_send(&ab->htc, ab->dp.eid, skb); in ath11k_dp_tx_htt_srng_setup()
836 int ath11k_dp_tx_htt_h2t_ver_req_msg(struct ath11k_base *ab) in ath11k_dp_tx_htt_h2t_ver_req_msg() argument
838 struct ath11k_dp *dp = &ab->dp; in ath11k_dp_tx_htt_h2t_ver_req_msg()
846 skb = ath11k_htc_alloc_skb(ab, len); in ath11k_dp_tx_htt_h2t_ver_req_msg()
855 ret = ath11k_htc_send(&ab->htc, dp->eid, skb); in ath11k_dp_tx_htt_h2t_ver_req_msg()
864 ath11k_warn(ab, "htt target version request timed out\n"); in ath11k_dp_tx_htt_h2t_ver_req_msg()
869 ath11k_err(ab, "unsupported htt major version %d supported version is %d\n", in ath11k_dp_tx_htt_h2t_ver_req_msg()
879 struct ath11k_base *ab = ar->ab; in ath11k_dp_tx_htt_h2t_ppdu_stats_req() local
880 struct ath11k_dp *dp = &ab->dp; in ath11k_dp_tx_htt_h2t_ppdu_stats_req()
888 for (i = 0; i < ab->hw_params.num_rxmda_per_pdev; i++) { in ath11k_dp_tx_htt_h2t_ppdu_stats_req()
889 skb = ath11k_htc_alloc_skb(ab, len); in ath11k_dp_tx_htt_h2t_ppdu_stats_req()
902 ret = ath11k_htc_send(&ab->htc, dp->eid, skb); in ath11k_dp_tx_htt_h2t_ppdu_stats_req()
912 int ath11k_dp_tx_htt_rx_filter_setup(struct ath11k_base *ab, u32 ring_id, in ath11k_dp_tx_htt_rx_filter_setup() argument
918 struct hal_srng *srng = &ab->hal.srng_list[ring_id]; in ath11k_dp_tx_htt_rx_filter_setup()
926 skb = ath11k_htc_alloc_skb(ab, len); in ath11k_dp_tx_htt_rx_filter_setup()
931 ath11k_hal_srng_get_params(ab, srng, &params); in ath11k_dp_tx_htt_rx_filter_setup()
933 ret = ath11k_dp_tx_get_ring_id_type(ab, mac_id, ring_id, in ath11k_dp_tx_htt_rx_filter_setup()
967 ret = ath11k_htc_send(&ab->htc, ab->dp.eid, skb); in ath11k_dp_tx_htt_rx_filter_setup()
984 struct ath11k_base *ab = ar->ab; in ath11k_dp_tx_htt_h2t_ext_stats_req() local
985 struct ath11k_dp *dp = &ab->dp; in ath11k_dp_tx_htt_h2t_ext_stats_req()
991 skb = ath11k_htc_alloc_skb(ab, len); in ath11k_dp_tx_htt_h2t_ext_stats_req()
1011 ret = ath11k_htc_send(&ab->htc, dp->eid, skb); in ath11k_dp_tx_htt_h2t_ext_stats_req()
1013 ath11k_warn(ab, "failed to send htt type stats request: %d", in ath11k_dp_tx_htt_h2t_ext_stats_req()
1025 struct ath11k_base *ab = ar->ab; in ath11k_dp_tx_htt_monitor_mode_ring_config() local
1049 if (ab->hw_params.rxdma1_enable) { in ath11k_dp_tx_htt_monitor_mode_ring_config()
1050 ret = ath11k_dp_tx_htt_rx_filter_setup(ar->ab, ring_id, dp->mac_id, in ath11k_dp_tx_htt_monitor_mode_ring_config()
1056 for (i = 0; i < ab->hw_params.num_rxmda_per_pdev; i++) { in ath11k_dp_tx_htt_monitor_mode_ring_config()
1058 ret = ath11k_dp_tx_htt_rx_filter_setup(ar->ab, ring_id, in ath11k_dp_tx_htt_monitor_mode_ring_config()
1069 for (i = 0; i < ab->hw_params.num_rxmda_per_pdev; i++) { in ath11k_dp_tx_htt_monitor_mode_ring_config()
1077 ret = ath11k_dp_tx_htt_rx_filter_setup(ab, ring_id, in ath11k_dp_tx_htt_monitor_mode_ring_config()
1084 if (!ar->ab->hw_params.rxdma1_enable) in ath11k_dp_tx_htt_monitor_mode_ring_config()
1085 mod_timer(&ar->ab->mon_reap_timer, jiffies + in ath11k_dp_tx_htt_monitor_mode_ring_config()