New upstream version 18.08
[deb_dpdk.git] / drivers / net / bnxt / bnxt_stats.h
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright(c) 2014-2018 Broadcom
3  * All rights reserved.
4  */
5
6 #ifndef _BNXT_STATS_H_
7 #define _BNXT_STATS_H_
8
9 #include <rte_ethdev_driver.h>
10
11 void bnxt_free_stats(struct bnxt *bp);
12 int bnxt_stats_get_op(struct rte_eth_dev *eth_dev,
13                            struct rte_eth_stats *bnxt_stats);
14 void bnxt_stats_reset_op(struct rte_eth_dev *eth_dev);
15 int bnxt_dev_xstats_get_names_op(__rte_unused struct rte_eth_dev *eth_dev,
16         struct rte_eth_xstat_name *xstats_names,
17         __rte_unused unsigned int limit);
18 int bnxt_dev_xstats_get_op(struct rte_eth_dev *eth_dev,
19                            struct rte_eth_xstat *xstats, unsigned int n);
20 void bnxt_dev_xstats_reset_op(struct rte_eth_dev *eth_dev);
21 int bnxt_dev_xstats_get_by_id_op(struct rte_eth_dev *dev, const uint64_t *ids,
22                                 uint64_t *values, unsigned int limit);
23 int bnxt_dev_xstats_get_names_by_id_op(struct rte_eth_dev *dev,
24                                 struct rte_eth_xstat_name *xstats_names,
25                                 const uint64_t *ids, unsigned int limit);
26
27 struct bnxt_xstats_name_off {
28         char name[RTE_ETH_XSTATS_NAME_SIZE];
29         uint64_t offset;
30 };
31 #endif