ath10k: add tracing for rx descriptor
Upon the reception of frame, the descriptor status are reported to user space by tracepoint. This is useful for collecting rx statistics. Signed-off-by: Rajkumar Manoharan <rmanohar@qti.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
This commit is contained in:
parent
bfdd7937ab
commit
a0883cf7e7
|
@ -316,6 +316,7 @@ static int ath10k_htt_rx_amsdu_pop(struct ath10k_htt *htt,
|
|||
int msdu_len, msdu_chaining = 0;
|
||||
struct sk_buff *msdu, *next;
|
||||
struct htt_rx_desc *rx_desc;
|
||||
u32 tsf;
|
||||
|
||||
lockdep_assert_held(&htt->rx_ring.lock);
|
||||
|
||||
|
@ -447,6 +448,9 @@ static int ath10k_htt_rx_amsdu_pop(struct ath10k_htt *htt,
|
|||
last_msdu = __le32_to_cpu(rx_desc->msdu_end.info0) &
|
||||
RX_MSDU_END_INFO0_LAST_MSDU;
|
||||
|
||||
tsf = __le32_to_cpu(rx_desc->ppdu_end.tsf_timestamp);
|
||||
trace_ath10k_htt_rx_desc(ar, tsf, &rx_desc->attention,
|
||||
sizeof(*rx_desc) - sizeof(u32));
|
||||
if (last_msdu) {
|
||||
msdu->next = NULL;
|
||||
break;
|
||||
|
|
|
@ -281,6 +281,35 @@ TRACE_EVENT(ath10k_htt_pktlog,
|
|||
)
|
||||
);
|
||||
|
||||
TRACE_EVENT(ath10k_htt_rx_desc,
|
||||
TP_PROTO(struct ath10k *ar, u32 tsf, void *rxdesc, u16 len),
|
||||
|
||||
TP_ARGS(ar, tsf, rxdesc, len),
|
||||
|
||||
TP_STRUCT__entry(
|
||||
__string(device, dev_name(ar->dev))
|
||||
__string(driver, dev_driver_string(ar->dev))
|
||||
__field(u32, tsf)
|
||||
__field(u16, len)
|
||||
__dynamic_array(u8, rxdesc, len)
|
||||
),
|
||||
|
||||
TP_fast_assign(
|
||||
__assign_str(device, dev_name(ar->dev));
|
||||
__assign_str(driver, dev_driver_string(ar->dev));
|
||||
__entry->tsf = tsf;
|
||||
__entry->len = len;
|
||||
memcpy(__get_dynamic_array(rxdesc), rxdesc, len);
|
||||
),
|
||||
|
||||
TP_printk(
|
||||
"%s %s %u len %hu",
|
||||
__get_str(driver),
|
||||
__get_str(device),
|
||||
__entry->tsf,
|
||||
__entry->len
|
||||
)
|
||||
);
|
||||
#endif /* _TRACE_H_ || TRACE_HEADER_MULTI_READ*/
|
||||
|
||||
/* we don't want to use include/trace/events */
|
||||
|
|
Loading…
Reference in New Issue