Lines Matching refs:tx_desc

92 				     struct dp_tx_desc_s *tx_desc,  in dp_tx_process_htt_completion_li()  argument
124 if (qdf_unlikely(!tx_desc->flags)) { in dp_tx_process_htt_completion_li()
126 tx_desc->id); in dp_tx_process_htt_completion_li()
130 if (qdf_unlikely(tx_desc->vdev_id == DP_INVALID_VDEV_ID)) { in dp_tx_process_htt_completion_li()
131 dp_tx_comp_info_rl("Invalid vdev_id %d", tx_desc->id); in dp_tx_process_htt_completion_li()
132 tx_desc->flags |= DP_TX_DESC_FLAG_TX_COMP_ERR; in dp_tx_process_htt_completion_li()
136 pdev = tx_desc->pdev; in dp_tx_process_htt_completion_li()
140 tx_desc->flags |= DP_TX_DESC_FLAG_TX_COMP_ERR; in dp_tx_process_htt_completion_li()
144 if (qdf_unlikely(tx_desc->pdev->is_pdev_down)) { in dp_tx_process_htt_completion_li()
145 dp_tx_comp_info_rl("pdev in down state %d", tx_desc->id); in dp_tx_process_htt_completion_li()
146 tx_desc->flags |= DP_TX_DESC_FLAG_TX_COMP_ERR; in dp_tx_process_htt_completion_li()
150 qdf_assert(tx_desc->pdev); in dp_tx_process_htt_completion_li()
152 vdev_id = tx_desc->vdev_id; in dp_tx_process_htt_completion_li()
157 dp_tx_comp_info_rl("Unable to get vdev ref %d", tx_desc->id); in dp_tx_process_htt_completion_li()
158 tx_desc->flags |= DP_TX_DESC_FLAG_TX_COMP_ERR; in dp_tx_process_htt_completion_li()
218 dp_tx_compute_delay(vdev, tx_desc, tid, ring_id); in dp_tx_process_htt_completion_li()
227 qdf_nbuf_len(tx_desc->nbuf)); in dp_tx_process_htt_completion_li()
232 dp_tx_comp_process_tx_status(soc, tx_desc, &ts, txrx_peer, in dp_tx_process_htt_completion_li()
234 dp_tx_comp_process_desc(soc, tx_desc, &ts, txrx_peer); in dp_tx_process_htt_completion_li()
235 dp_tx_desc_release(soc, tx_desc, tx_desc->pool_id); in dp_tx_process_htt_completion_li()
250 dp_tx_reinject_handler(soc, vdev, tx_desc, in dp_tx_process_htt_completion_li()
256 dp_tx_inspect_handler(soc, vdev, tx_desc, status); in dp_tx_process_htt_completion_li()
276 dp_tx_comp_free_buf(soc, tx_desc, false); in dp_tx_process_htt_completion_li()
277 dp_tx_desc_release(soc, tx_desc, tx_desc->pool_id); in dp_tx_process_htt_completion_li()
447 #define dp_sawf_tx_enqueue_peer_stats(soc, tx_desc) argument
448 #define dp_sawf_tx_enqueue_fail_peer_stats(soc, tx_desc) argument
453 struct dp_tx_desc_s *tx_desc, uint16_t fw_metadata, in dp_tx_hw_enqueue_li() argument
481 if (!dp_tx_is_desc_id_valid(soc, tx_desc->id)) { in dp_tx_hw_enqueue_li()
482 dp_err_rl("Invalid tx desc id:%d", tx_desc->id); in dp_tx_hw_enqueue_li()
489 tx_desc->dma_addr, bm_id, tx_desc->id, in dp_tx_hw_enqueue_li()
490 (tx_desc->flags & DP_TX_DESC_FLAG_FRAG)); in dp_tx_hw_enqueue_li()
505 if (dp_sawf_tag_valid_get(tx_desc->nbuf)) { in dp_tx_hw_enqueue_li()
507 vdev->vdev_id, tx_desc->nbuf, msdu_info); in dp_tx_hw_enqueue_li()
508 dp_sawf_tx_enqueue_peer_stats(soc, tx_desc); in dp_tx_hw_enqueue_li()
512 hal_tx_desc_set_buf_length(hal_tx_desc_cached, tx_desc->length); in dp_tx_hw_enqueue_li()
513 hal_tx_desc_set_buf_offset(hal_tx_desc_cached, tx_desc->pkt_offset); in dp_tx_hw_enqueue_li()
514 hal_tx_desc_set_encap_type(hal_tx_desc_cached, tx_desc->tx_encap_type); in dp_tx_hw_enqueue_li()
518 if (tx_desc->flags & DP_TX_DESC_FLAG_TO_FW) in dp_tx_hw_enqueue_li()
522 if ((qdf_nbuf_get_tx_cksum(tx_desc->nbuf) == in dp_tx_hw_enqueue_li()
524 qdf_nbuf_is_tso(tx_desc->nbuf)) { in dp_tx_hw_enqueue_li()
533 if (tx_desc->flags & DP_TX_DESC_FLAG_MESH) in dp_tx_hw_enqueue_li()
536 if (!dp_tx_desc_set_ktimestamp(vdev, tx_desc)) in dp_tx_hw_enqueue_li()
537 dp_tx_desc_set_timestamp(tx_desc); in dp_tx_hw_enqueue_li()
540 tx_desc->length, in dp_tx_hw_enqueue_li()
541 (tx_desc->flags & DP_TX_DESC_FLAG_FRAG), in dp_tx_hw_enqueue_li()
542 (uint64_t)tx_desc->dma_addr, tx_desc->pkt_offset, in dp_tx_hw_enqueue_li()
543 tx_desc->id); in dp_tx_hw_enqueue_li()
554 dp_sawf_tx_enqueue_fail_peer_stats(soc, tx_desc); in dp_tx_hw_enqueue_li()
568 dp_sawf_tx_enqueue_fail_peer_stats(soc, tx_desc); in dp_tx_hw_enqueue_li()
572 tx_desc->flags |= DP_TX_DESC_FLAG_QUEUED_TX; in dp_tx_hw_enqueue_li()
573 dp_vdev_peer_stats_update_protocol_cnt_tx(vdev, tx_desc->nbuf); in dp_tx_hw_enqueue_li()
575 coalesce = dp_tx_attempt_coalescing(soc, vdev, tx_desc, tid, in dp_tx_hw_enqueue_li()
578 tx_desc->length); in dp_tx_hw_enqueue_li()
580 dp_tx_update_stats(soc, tx_desc, ring_id); in dp_tx_hw_enqueue_li()
589 qdf_get_log_timestamp(), tx_desc->nbuf); in dp_tx_hw_enqueue_li()
600 struct dp_tx_desc_s *tx_desc; in dp_tx_desc_pool_init_li() local
608 tx_desc = tx_desc_pool->freelist; in dp_tx_desc_pool_init_li()
612 while (tx_desc) { in dp_tx_desc_pool_init_li()
619 tx_desc->id = id; in dp_tx_desc_pool_init_li()
620 tx_desc->pool_id = pool_id; in dp_tx_desc_pool_init_li()
621 tx_desc->vdev_id = DP_INVALID_VDEV_ID; in dp_tx_desc_pool_init_li()
622 dp_tx_desc_set_magic(tx_desc, DP_TX_MAGIC_PATTERN_FREE); in dp_tx_desc_pool_init_li()
623 tx_desc = tx_desc->next; in dp_tx_desc_pool_init_li()