1 /* SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) */
4 #define TRACE_SYSTEM funeth
6 #if !defined(_TRACE_FUNETH_H) || defined(TRACE_HEADER_MULTI_READ)
7 #define _TRACE_FUNETH_H
9 #include <linux/tracepoint.h>
11 #include "funeth_txrx.h"
13 TRACE_EVENT(funeth_tx,
15 TP_PROTO(const struct funeth_txq *txq,
20 TP_ARGS(txq, len, sqe_idx, ngle),
27 __string(devname, txq->netdev->name)
31 __entry->qidx = txq->qidx;
33 __entry->sqe_idx = sqe_idx;
35 __assign_str(devname, txq->netdev->name);
38 TP_printk("%s: Txq %u, SQE idx %u, len %u, num GLEs %u",
39 __get_str(devname), __entry->qidx, __entry->sqe_idx,
40 __entry->len, __entry->ngle)
43 TRACE_EVENT(funeth_tx_free,
45 TP_PROTO(const struct funeth_txq *txq,
50 TP_ARGS(txq, sqe_idx, num_sqes, hw_head),
55 __field(u32, num_sqes)
57 __string(devname, txq->netdev->name)
61 __entry->qidx = txq->qidx;
62 __entry->sqe_idx = sqe_idx;
63 __entry->num_sqes = num_sqes;
64 __entry->hw_head = hw_head;
65 __assign_str(devname, txq->netdev->name);
68 TP_printk("%s: Txq %u, SQE idx %u, SQEs %u, HW head %u",
69 __get_str(devname), __entry->qidx, __entry->sqe_idx,
70 __entry->num_sqes, __entry->hw_head)
73 TRACE_EVENT(funeth_rx,
75 TP_PROTO(const struct funeth_rxq *rxq,
81 TP_ARGS(rxq, num_rqes, pkt_len, hash, cls_vec),
86 __field(u32, num_rqes)
90 __string(devname, rxq->netdev->name)
94 __entry->qidx = rxq->qidx;
95 __entry->cq_head = rxq->cq_head;
96 __entry->num_rqes = num_rqes;
97 __entry->len = pkt_len;
99 __entry->cls_vec = cls_vec;
100 __assign_str(devname, rxq->netdev->name);
103 TP_printk("%s: Rxq %u, CQ head %u, RQEs %u, len %u, hash %u, CV %#x",
104 __get_str(devname), __entry->qidx, __entry->cq_head,
105 __entry->num_rqes, __entry->len, __entry->hash,
109 #endif /* _TRACE_FUNETH_H */
111 /* Below must be outside protection. */
112 #undef TRACE_INCLUDE_PATH
113 #define TRACE_INCLUDE_PATH .
114 #undef TRACE_INCLUDE_FILE
115 #define TRACE_INCLUDE_FILE funeth_trace
117 #include <trace/define_trace.h>