xref: /dpdk/lib/ethdev/rte_ethdev_trace.h (revision 1bb4a528)
199a2dd95SBruce Richardson /* SPDX-License-Identifier: BSD-3-Clause
299a2dd95SBruce Richardson  * Copyright(C) 2020 Marvell International Ltd.
399a2dd95SBruce Richardson  */
499a2dd95SBruce Richardson 
599a2dd95SBruce Richardson #ifndef _RTE_ETHDEV_TRACE_H_
699a2dd95SBruce Richardson #define _RTE_ETHDEV_TRACE_H_
799a2dd95SBruce Richardson 
899a2dd95SBruce Richardson /**
999a2dd95SBruce Richardson  * @file
1099a2dd95SBruce Richardson  *
1199a2dd95SBruce Richardson  * API for ethdev trace support
1299a2dd95SBruce Richardson  */
1399a2dd95SBruce Richardson 
1499a2dd95SBruce Richardson #ifdef __cplusplus
1599a2dd95SBruce Richardson extern "C" {
1699a2dd95SBruce Richardson #endif
1799a2dd95SBruce Richardson 
1899a2dd95SBruce Richardson #include <rte_trace_point.h>
1999a2dd95SBruce Richardson 
2099a2dd95SBruce Richardson #include "rte_ethdev.h"
2199a2dd95SBruce Richardson 
2299a2dd95SBruce Richardson RTE_TRACE_POINT(
2399a2dd95SBruce Richardson 	rte_ethdev_trace_configure,
2499a2dd95SBruce Richardson 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t nb_rx_q,
2599a2dd95SBruce Richardson 		uint16_t nb_tx_q, const struct rte_eth_conf *dev_conf, int rc),
2699a2dd95SBruce Richardson 	rte_trace_point_emit_u16(port_id);
2799a2dd95SBruce Richardson 	rte_trace_point_emit_u16(nb_rx_q);
2899a2dd95SBruce Richardson 	rte_trace_point_emit_u16(nb_tx_q);
2999a2dd95SBruce Richardson 	rte_trace_point_emit_u32(dev_conf->link_speeds);
3099a2dd95SBruce Richardson 	rte_trace_point_emit_u32(dev_conf->rxmode.mq_mode);
31*1bb4a528SFerruh Yigit 	rte_trace_point_emit_u32(dev_conf->rxmode.mtu);
3299a2dd95SBruce Richardson 	rte_trace_point_emit_u64(dev_conf->rxmode.offloads);
3399a2dd95SBruce Richardson 	rte_trace_point_emit_u32(dev_conf->txmode.mq_mode);
3499a2dd95SBruce Richardson 	rte_trace_point_emit_u64(dev_conf->txmode.offloads);
3599a2dd95SBruce Richardson 	rte_trace_point_emit_u32(dev_conf->lpbk_mode);
3699a2dd95SBruce Richardson 	rte_trace_point_emit_int(rc);
3799a2dd95SBruce Richardson )
3899a2dd95SBruce Richardson 
3999a2dd95SBruce Richardson RTE_TRACE_POINT(
4099a2dd95SBruce Richardson 	rte_ethdev_trace_rxq_setup,
4199a2dd95SBruce Richardson 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t rx_queue_id,
4299a2dd95SBruce Richardson 		uint16_t nb_rx_desc, void *mp,
4399a2dd95SBruce Richardson 		const struct rte_eth_rxconf *rx_conf, int rc),
4499a2dd95SBruce Richardson 	rte_trace_point_emit_u16(port_id);
4599a2dd95SBruce Richardson 	rte_trace_point_emit_u16(rx_queue_id);
4699a2dd95SBruce Richardson 	rte_trace_point_emit_u16(nb_rx_desc);
4799a2dd95SBruce Richardson 	rte_trace_point_emit_ptr(mp);
4899a2dd95SBruce Richardson 	rte_trace_point_emit_u8(rx_conf->rx_thresh.pthresh);
4999a2dd95SBruce Richardson 	rte_trace_point_emit_u8(rx_conf->rx_thresh.hthresh);
5099a2dd95SBruce Richardson 	rte_trace_point_emit_u8(rx_conf->rx_thresh.wthresh);
5199a2dd95SBruce Richardson 	rte_trace_point_emit_u8(rx_conf->rx_drop_en);
5299a2dd95SBruce Richardson 	rte_trace_point_emit_u8(rx_conf->rx_deferred_start);
5399a2dd95SBruce Richardson 	rte_trace_point_emit_u64(rx_conf->offloads);
5499a2dd95SBruce Richardson 	rte_trace_point_emit_int(rc);
5599a2dd95SBruce Richardson )
5699a2dd95SBruce Richardson 
5799a2dd95SBruce Richardson RTE_TRACE_POINT(
5899a2dd95SBruce Richardson 	rte_ethdev_trace_txq_setup,
5999a2dd95SBruce Richardson 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t tx_queue_id,
6099a2dd95SBruce Richardson 		uint16_t nb_tx_desc, const struct rte_eth_txconf *tx_conf),
6199a2dd95SBruce Richardson 	rte_trace_point_emit_u16(port_id);
6299a2dd95SBruce Richardson 	rte_trace_point_emit_u16(tx_queue_id);
6399a2dd95SBruce Richardson 	rte_trace_point_emit_u16(nb_tx_desc);
6499a2dd95SBruce Richardson 	rte_trace_point_emit_u8(tx_conf->tx_thresh.pthresh);
6599a2dd95SBruce Richardson 	rte_trace_point_emit_u8(tx_conf->tx_thresh.hthresh);
6699a2dd95SBruce Richardson 	rte_trace_point_emit_u8(tx_conf->tx_thresh.wthresh);
6799a2dd95SBruce Richardson 	rte_trace_point_emit_u8(tx_conf->tx_deferred_start);
6899a2dd95SBruce Richardson 	rte_trace_point_emit_u16(tx_conf->tx_free_thresh);
6999a2dd95SBruce Richardson 	rte_trace_point_emit_u64(tx_conf->offloads);
7099a2dd95SBruce Richardson )
7199a2dd95SBruce Richardson 
7299a2dd95SBruce Richardson RTE_TRACE_POINT(
7399a2dd95SBruce Richardson 	rte_ethdev_trace_start,
7499a2dd95SBruce Richardson 	RTE_TRACE_POINT_ARGS(uint16_t port_id),
7599a2dd95SBruce Richardson 	rte_trace_point_emit_u16(port_id);
7699a2dd95SBruce Richardson )
7799a2dd95SBruce Richardson 
7899a2dd95SBruce Richardson RTE_TRACE_POINT(
7999a2dd95SBruce Richardson 	rte_ethdev_trace_stop,
8099a2dd95SBruce Richardson 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int ret),
8199a2dd95SBruce Richardson 	rte_trace_point_emit_u16(port_id);
8299a2dd95SBruce Richardson 	rte_trace_point_emit_int(ret);
8399a2dd95SBruce Richardson )
8499a2dd95SBruce Richardson 
8599a2dd95SBruce Richardson RTE_TRACE_POINT(
8699a2dd95SBruce Richardson 	rte_ethdev_trace_close,
8799a2dd95SBruce Richardson 	RTE_TRACE_POINT_ARGS(uint16_t port_id),
8899a2dd95SBruce Richardson 	rte_trace_point_emit_u16(port_id);
8999a2dd95SBruce Richardson )
9099a2dd95SBruce Richardson 
9199a2dd95SBruce Richardson #ifdef __cplusplus
9299a2dd95SBruce Richardson }
9399a2dd95SBruce Richardson #endif
9499a2dd95SBruce Richardson 
9599a2dd95SBruce Richardson #endif /* _RTE_ETHDEV_TRACE_H_ */
96