xref: /dpdk/lib/ethdev/ethdev_profile.h (revision 8c9e97ddbedd735f70a2e6b1d5d4ffef02a9b0b9)
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright(c) 2010-2018 Intel Corporation
3  */
4 
5 #ifndef _RTE_ETHDEV_PROFILE_H_
6 #define _RTE_ETHDEV_PROFILE_H_
7 
8 #include "rte_ethdev.h"
9 #include "ethdev_driver.h"
10 
11 /**
12  * Initialization of the Ethernet device profiling.
13  * Implementation of this function depends on chosen profiling method,
14  * defined in configs.
15  *
16  * @param port_id
17  *  The port identifier of the Ethernet device.
18  * @param dev
19  *  Pointer to struct rte_eth_dev corresponding to given port_id.
20  *
21  * @return
22  *  - On success, zero.
23  *  - On failure, a negative value.
24  */
25 int
26 __rte_eth_dev_profile_init(uint16_t port_id, struct rte_eth_dev *dev);
27 
28 #ifdef RTE_ETHDEV_PROFILE_WITH_VTUNE
29 
30 uint16_t
31 profile_hook_rx_burst_cb(uint16_t port_id, uint16_t queue_id,
32 	struct rte_mbuf *pkts[], uint16_t nb_pkts,
33 	uint16_t max_pkts, void *user_param);
34 
35 #endif /* RTE_ETHDEV_PROFILE_WITH_VTUNE */
36 
37 #endif
38