Lines Matching refs:tx_desc
263 struct dp_tx_desc_s *tx_desc, in dp_tx_process_htt_completion_be() argument
297 if (qdf_unlikely(!tx_desc->flags)) { in dp_tx_process_htt_completion_be()
299 tx_desc->id); in dp_tx_process_htt_completion_be()
303 if (qdf_unlikely(tx_desc->vdev_id == DP_INVALID_VDEV_ID)) { in dp_tx_process_htt_completion_be()
304 dp_tx_comp_info_rl("Invalid vdev_id %d", tx_desc->id); in dp_tx_process_htt_completion_be()
305 tx_desc->flags |= DP_TX_DESC_FLAG_TX_COMP_ERR; in dp_tx_process_htt_completion_be()
309 pdev = tx_desc->pdev; in dp_tx_process_htt_completion_be()
313 tx_desc->flags |= DP_TX_DESC_FLAG_TX_COMP_ERR; in dp_tx_process_htt_completion_be()
317 if (qdf_unlikely(tx_desc->pdev->is_pdev_down)) { in dp_tx_process_htt_completion_be()
318 dp_tx_comp_info_rl("pdev in down state %d", tx_desc->id); in dp_tx_process_htt_completion_be()
319 tx_desc->flags |= DP_TX_DESC_FLAG_TX_COMP_ERR; in dp_tx_process_htt_completion_be()
323 qdf_assert(tx_desc->pdev); in dp_tx_process_htt_completion_be()
325 vdev_id = tx_desc->vdev_id; in dp_tx_process_htt_completion_be()
330 dp_tx_comp_info_rl("Unable to get vdev ref %d", tx_desc->id); in dp_tx_process_htt_completion_be()
331 tx_desc->flags |= DP_TX_DESC_FLAG_TX_COMP_ERR; in dp_tx_process_htt_completion_be()
392 dp_tx_compute_delay(vdev, tx_desc, tid, ring_id); in dp_tx_process_htt_completion_be()
403 qdf_nbuf_len(tx_desc->nbuf), in dp_tx_process_htt_completion_be()
407 dp_tx_comp_process_tx_status(soc, tx_desc, &ts, txrx_peer, in dp_tx_process_htt_completion_be()
409 dp_tx_comp_process_desc(soc, tx_desc, &ts, txrx_peer); in dp_tx_process_htt_completion_be()
410 dp_tx_desc_release(soc, tx_desc, tx_desc->pool_id); in dp_tx_process_htt_completion_be()
425 dp_tx_reinject_handler(soc, vdev, tx_desc, in dp_tx_process_htt_completion_be()
431 dp_tx_inspect_handler(soc, vdev, tx_desc, status); in dp_tx_process_htt_completion_be()
436 xmit_type = qdf_nbuf_get_vdev_xmit_type(tx_desc->nbuf); in dp_tx_process_htt_completion_be()
452 dp_tx_comp_free_buf(soc, tx_desc, false); in dp_tx_process_htt_completion_be()
453 dp_tx_desc_release(soc, tx_desc, tx_desc->pool_id); in dp_tx_process_htt_completion_be()
1047 struct dp_tx_desc_s *tx_desc) in dp_sawf_tx_enqueue_peer_stats() argument
1054 struct dp_tx_desc_s *tx_desc) in dp_sawf_tx_enqueue_fail_peer_stats() argument
1094 struct dp_tx_desc_s *tx_desc = NULL; in dp_ppeds_tx_comp_handler() local
1152 &tx_desc); in dp_ppeds_tx_comp_handler()
1154 if (!tx_desc) { in dp_ppeds_tx_comp_handler()
1161 if (qdf_unlikely(!(tx_desc->flags & in dp_ppeds_tx_comp_handler()
1163 !(tx_desc->flags & DP_TX_DESC_FLAG_PPEDS))) { in dp_ppeds_tx_comp_handler()
1169 tx_desc->buffer_src = buf_src; in dp_ppeds_tx_comp_handler()
1174 dp_ppeds_stats(soc, tx_desc->peer_id); in dp_ppeds_tx_comp_handler()
1176 nbuf = dp_ppeds_tx_desc_free(soc, tx_desc); in dp_ppeds_tx_comp_handler()
1179 tx_desc->tx_status = in dp_ppeds_tx_comp_handler()
1186 if (peer_id != tx_desc->peer_id) { in dp_ppeds_tx_comp_handler()
1194 peer_id = tx_desc->peer_id; in dp_ppeds_tx_comp_handler()
1209 tx_desc, in dp_ppeds_tx_comp_handler()
1213 &tx_desc->comp, 1); in dp_ppeds_tx_comp_handler()
1218 tx_desc, in dp_ppeds_tx_comp_handler()
1222 &tx_desc->comp, 1); in dp_ppeds_tx_comp_handler()
1227 head_desc = tx_desc; in dp_ppeds_tx_comp_handler()
1228 tail_desc = tx_desc; in dp_ppeds_tx_comp_handler()
1231 tail_desc->next = tx_desc; in dp_ppeds_tx_comp_handler()
1232 tx_desc->next = NULL; in dp_ppeds_tx_comp_handler()
1233 tail_desc = tx_desc; in dp_ppeds_tx_comp_handler()
1295 struct dp_tx_desc_s *tx_desc, uint16_t fw_metadata, in dp_tx_hw_enqueue_be() argument
1316 if (!dp_tx_is_desc_id_valid(soc, tx_desc->id)) { in dp_tx_hw_enqueue_be()
1317 dp_err_rl("Invalid tx desc id:%d", tx_desc->id); in dp_tx_hw_enqueue_be()
1339 if (dp_sawf_tag_valid_get(tx_desc->nbuf)) { in dp_tx_hw_enqueue_be()
1341 &fw_metadata, tx_desc->nbuf, msdu_info); in dp_tx_hw_enqueue_be()
1342 dp_sawf_tx_enqueue_peer_stats(soc, tx_desc); in dp_tx_hw_enqueue_be()
1346 tx_desc->dma_addr, bm_id, tx_desc->id, in dp_tx_hw_enqueue_be()
1347 (tx_desc->flags & DP_TX_DESC_FLAG_FRAG)); in dp_tx_hw_enqueue_be()
1362 hal_tx_desc_set_buf_length(hal_tx_desc_cached, tx_desc->length); in dp_tx_hw_enqueue_be()
1363 hal_tx_desc_set_buf_offset(hal_tx_desc_cached, tx_desc->pkt_offset); in dp_tx_hw_enqueue_be()
1365 if (tx_desc->flags & DP_TX_DESC_FLAG_TO_FW) in dp_tx_hw_enqueue_be()
1369 if ((qdf_nbuf_get_tx_cksum(tx_desc->nbuf) == in dp_tx_hw_enqueue_be()
1371 qdf_nbuf_is_tso(tx_desc->nbuf)) { in dp_tx_hw_enqueue_be()
1385 tx_desc->nbuf); in dp_tx_hw_enqueue_be()
1387 tx_desc->nbuf); in dp_tx_hw_enqueue_be()
1388 dp_tx_desc_set_ktimestamp(vdev, tx_desc); in dp_tx_hw_enqueue_be()
1398 dp_sawf_tx_enqueue_fail_peer_stats(soc, tx_desc); in dp_tx_hw_enqueue_be()
1409 dp_sawf_tx_enqueue_fail_peer_stats(soc, tx_desc); in dp_tx_hw_enqueue_be()
1413 tx_desc->flags |= DP_TX_DESC_FLAG_QUEUED_TX; in dp_tx_hw_enqueue_be()
1414 dp_vdev_peer_stats_update_protocol_cnt_tx(vdev, tx_desc->nbuf); in dp_tx_hw_enqueue_be()
1419 coalesce = dp_tx_attempt_coalescing(soc, vdev, tx_desc, tid, in dp_tx_hw_enqueue_be()
1423 dp_tx_get_pkt_len(tx_desc)); in dp_tx_hw_enqueue_be()
1425 dp_tx_update_stats(soc, tx_desc, ring_id); in dp_tx_hw_enqueue_be()
1434 qdf_get_log_timestamp(), tx_desc->nbuf); in dp_tx_hw_enqueue_be()
1683 struct dp_tx_desc_s *tx_desc; in dp_tx_desc_pool_init_be() local
1699 tx_desc = tx_desc_pool->freelist; in dp_tx_desc_pool_init_be()
1701 while (tx_desc) { in dp_tx_desc_pool_init_be()
1715 tx_desc); in dp_tx_desc_pool_init_be()
1716 tx_desc->id = in dp_tx_desc_pool_init_be()
1719 tx_desc->pool_id = pool_id; in dp_tx_desc_pool_init_be()
1720 dp_tx_desc_set_magic(tx_desc, DP_TX_MAGIC_PATTERN_FREE); in dp_tx_desc_pool_init_be()
1721 tx_desc = tx_desc->next; in dp_tx_desc_pool_init_be()
1847 struct dp_tx_desc_s *tx_desc, in dp_tx_nbuf_map_be() argument
1869 struct dp_tx_desc_s *tx_desc; in dp_tx_fast_send_be() local
1908 tx_desc = dp_tx_desc_alloc(soc, desc_pool_id); in dp_tx_fast_send_be()
1910 if (qdf_unlikely(!tx_desc)) { in dp_tx_fast_send_be()
1921 tx_desc->nbuf = nbuf; in dp_tx_fast_send_be()
1922 tx_desc->frm_type = dp_tx_frm_std; in dp_tx_fast_send_be()
1923 tx_desc->tx_encap_type = vdev->tx_encap_type; in dp_tx_fast_send_be()
1924 tx_desc->vdev_id = vdev_id; in dp_tx_fast_send_be()
1925 tx_desc->pdev = pdev; in dp_tx_fast_send_be()
1926 tx_desc->pkt_offset = 0; in dp_tx_fast_send_be()
1927 tx_desc->length = pkt_len; in dp_tx_fast_send_be()
1928 tx_desc->flags |= pdev->tx_fast_flag; in dp_tx_fast_send_be()
1930 tx_desc->nbuf->fast_recycled = 1; in dp_tx_fast_send_be()
1933 tx_desc->flags |= DP_TX_DESC_FLAG_FAST; in dp_tx_fast_send_be()
1935 paddr = dp_tx_nbuf_map_be(vdev, tx_desc, nbuf); in dp_tx_fast_send_be()
1943 tx_desc->dma_addr = paddr; in dp_tx_fast_send_be()
1946 hal_tx_desc_cached[0] = (uint32_t)tx_desc->dma_addr; in dp_tx_fast_send_be()
1947 hal_tx_desc_cached[1] = tx_desc->id << in dp_tx_fast_send_be()
1955 hal_tx_desc_cached[4] = tx_desc->length; in dp_tx_fast_send_be()
1997 tx_desc->flags |= DP_TX_DESC_FLAG_QUEUED_TX; in dp_tx_fast_send_be()
2003 DP_STATS_INC_PKT(vdev, tx_i[xmit_type].processed, 1, tx_desc->length); in dp_tx_fast_send_be()
2012 dp_tx_nbuf_unmap_be(soc, tx_desc); in dp_tx_fast_send_be()
2019 dp_tx_desc_release(soc, tx_desc, desc_pool_id); in dp_tx_fast_send_be()