Lines Matching refs:ts

317 				 struct ath11k_dp_htt_wbm_tx_status *ts)  in ath11k_dp_tx_htt_tx_complete_buf()  argument
327 msdu = idr_remove(&tx_ring->txbuf_idr, ts->msdu_id); in ath11k_dp_tx_htt_tx_complete_buf()
332 ts->msdu_id); in ath11k_dp_tx_htt_tx_complete_buf()
353 if (ts->acked) { in ath11k_dp_tx_htt_tx_complete_buf()
357 ts->ack_rssi; in ath11k_dp_tx_htt_tx_complete_buf()
366 peer = ath11k_peer_find_by_id(ab, ts->peer_id); in ath11k_dp_tx_htt_tx_complete_buf()
370 ts->peer_id); in ath11k_dp_tx_htt_tx_complete_buf()
390 struct ath11k_dp_htt_wbm_tx_status ts = {0}; in ath11k_dp_tx_process_htt_tx_complete() local
401 ts.acked = (wbm_status == HAL_WBM_REL_HTT_TX_COMP_STATUS_OK); in ath11k_dp_tx_process_htt_tx_complete()
402 ts.msdu_id = msdu_id; in ath11k_dp_tx_process_htt_tx_complete()
403 ts.ack_rssi = FIELD_GET(HTT_TX_WBM_COMP_INFO1_ACK_RSSI, in ath11k_dp_tx_process_htt_tx_complete()
407 ts.peer_id = FIELD_GET(HTT_TX_WBM_COMP_INFO2_SW_PEER_ID, in ath11k_dp_tx_process_htt_tx_complete()
410 ts.peer_id = HTT_INVALID_PEER_ID; in ath11k_dp_tx_process_htt_tx_complete()
412 ath11k_dp_tx_htt_tx_complete_buf(ab, tx_ring, &ts); in ath11k_dp_tx_process_htt_tx_complete()
432 struct hal_tx_status *ts) in ath11k_dp_tx_cache_peer_stats() argument
436 if (ts->try_cnt > 1) { in ath11k_dp_tx_cache_peer_stats()
437 peer_stats->retry_pkts += ts->try_cnt - 1; in ath11k_dp_tx_cache_peer_stats()
438 peer_stats->retry_bytes += (ts->try_cnt - 1) * msdu->len; in ath11k_dp_tx_cache_peer_stats()
440 if (ts->status != HAL_WBM_TQM_REL_REASON_FRAME_ACKED) { in ath11k_dp_tx_cache_peer_stats()
447 void ath11k_dp_tx_update_txcompl(struct ath11k *ar, struct hal_tx_status *ts) in ath11k_dp_tx_update_txcompl() argument
462 peer = ath11k_peer_find_by_id(ab, ts->peer_id); in ath11k_dp_tx_update_txcompl()
465 "failed to find the peer by id %u\n", ts->peer_id); in ath11k_dp_tx_update_txcompl()
474 ts->rate_stats); in ath11k_dp_tx_update_txcompl()
476 ts->rate_stats); in ath11k_dp_tx_update_txcompl()
478 ts->rate_stats); in ath11k_dp_tx_update_txcompl()
479 bw = FIELD_GET(HAL_TX_RATE_STATS_INFO0_BW, ts->rate_stats); in ath11k_dp_tx_update_txcompl()
480 ru_tones = FIELD_GET(HAL_TX_RATE_STATS_INFO0_TONES_IN_RU, ts->rate_stats); in ath11k_dp_tx_update_txcompl()
481 ofdma = FIELD_GET(HAL_TX_RATE_STATS_INFO0_OFDMA_TX, ts->rate_stats); in ath11k_dp_tx_update_txcompl()
548 struct hal_tx_status *ts) in ath11k_dp_tx_complete_msdu() argument
559 if (WARN_ON_ONCE(ts->buf_rel_source != HAL_WBM_REL_SRC_MODULE_TQM)) { in ath11k_dp_tx_complete_msdu()
584 if (ts->status == HAL_WBM_TQM_REL_REASON_FRAME_ACKED && in ath11k_dp_tx_complete_msdu()
588 ts->ack_rssi; in ath11k_dp_tx_complete_msdu()
592 if (ts->status == HAL_WBM_TQM_REL_REASON_CMD_REMOVE_TX && in ath11k_dp_tx_complete_msdu()
598 if (ts->flags & HAL_TX_STATUS_FLAGS_FIRST_MSDU) { in ath11k_dp_tx_complete_msdu()
600 ar->last_ppdu_id = ts->ppdu_id; in ath11k_dp_tx_complete_msdu()
601 } else if (ar->last_ppdu_id == ts->ppdu_id || in ath11k_dp_tx_complete_msdu()
605 ath11k_dp_tx_update_txcompl(ar, ts); in ath11k_dp_tx_complete_msdu()
610 ath11k_dp_tx_update_txcompl(ar, ts); in ath11k_dp_tx_complete_msdu()
614 ar->last_ppdu_id = ts->ppdu_id; in ath11k_dp_tx_complete_msdu()
617 ath11k_dp_tx_cache_peer_stats(ar, msdu, ts); in ath11k_dp_tx_complete_msdu()
621 peer = ath11k_peer_find_by_id(ab, ts->peer_id); in ath11k_dp_tx_complete_msdu()
625 ts->peer_id); in ath11k_dp_tx_complete_msdu()
649 struct hal_tx_status *ts) in ath11k_dp_tx_status_parse() argument
651 ts->buf_rel_source = in ath11k_dp_tx_status_parse()
653 if (unlikely(ts->buf_rel_source != HAL_WBM_REL_SRC_MODULE_FW && in ath11k_dp_tx_status_parse()
654 ts->buf_rel_source != HAL_WBM_REL_SRC_MODULE_TQM)) in ath11k_dp_tx_status_parse()
657 if (unlikely(ts->buf_rel_source == HAL_WBM_REL_SRC_MODULE_FW)) in ath11k_dp_tx_status_parse()
660 ts->status = FIELD_GET(HAL_WBM_RELEASE_INFO0_TQM_RELEASE_REASON, in ath11k_dp_tx_status_parse()
662 ts->ppdu_id = FIELD_GET(HAL_WBM_RELEASE_INFO1_TQM_STATUS_NUMBER, in ath11k_dp_tx_status_parse()
664 ts->try_cnt = FIELD_GET(HAL_WBM_RELEASE_INFO1_TRANSMIT_COUNT, in ath11k_dp_tx_status_parse()
666 ts->ack_rssi = FIELD_GET(HAL_WBM_RELEASE_INFO2_ACK_FRAME_RSSI, in ath11k_dp_tx_status_parse()
669 ts->flags |= HAL_TX_STATUS_FLAGS_FIRST_MSDU; in ath11k_dp_tx_status_parse()
670 ts->peer_id = FIELD_GET(HAL_WBM_RELEASE_INFO3_PEER_ID, desc->info3); in ath11k_dp_tx_status_parse()
671 ts->tid = FIELD_GET(HAL_WBM_RELEASE_INFO3_TID, desc->info3); in ath11k_dp_tx_status_parse()
673 ts->rate_stats = desc->rate_stats.info0; in ath11k_dp_tx_status_parse()
675 ts->rate_stats = 0; in ath11k_dp_tx_status_parse()
685 struct hal_tx_status ts = { 0 }; in ath11k_dp_tx_completion_handler() local
722 ath11k_dp_tx_status_parse(ab, tx_status, &ts); in ath11k_dp_tx_completion_handler()
729 if (unlikely(ts.buf_rel_source == HAL_WBM_REL_SRC_MODULE_FW)) { in ath11k_dp_tx_completion_handler()
753 ath11k_dp_tx_complete_msdu(ar, msdu, &ts); in ath11k_dp_tx_completion_handler()