xref: /freebsd/sys/dev/enic/vnic_stats.h (revision 9c067b844f85a224f0416e6eb46ba3ef82aec5c4)
1*9c067b84SDoug Ambrisko /* SPDX-License-Identifier: BSD-3-Clause
2*9c067b84SDoug Ambrisko  * Copyright 2008-2017 Cisco Systems, Inc.  All rights reserved.
3*9c067b84SDoug Ambrisko  * Copyright 2007 Nuova Systems, Inc.  All rights reserved.
4*9c067b84SDoug Ambrisko  */
5*9c067b84SDoug Ambrisko 
6*9c067b84SDoug Ambrisko #ifndef _VNIC_STATS_H_
7*9c067b84SDoug Ambrisko #define _VNIC_STATS_H_
8*9c067b84SDoug Ambrisko 
9*9c067b84SDoug Ambrisko /* Tx statistics */
10*9c067b84SDoug Ambrisko struct vnic_tx_stats {
11*9c067b84SDoug Ambrisko 	u64 tx_frames_ok;
12*9c067b84SDoug Ambrisko 	u64 tx_unicast_frames_ok;
13*9c067b84SDoug Ambrisko 	u64 tx_multicast_frames_ok;
14*9c067b84SDoug Ambrisko 	u64 tx_broadcast_frames_ok;
15*9c067b84SDoug Ambrisko 	u64 tx_bytes_ok;
16*9c067b84SDoug Ambrisko 	u64 tx_unicast_bytes_ok;
17*9c067b84SDoug Ambrisko 	u64 tx_multicast_bytes_ok;
18*9c067b84SDoug Ambrisko 	u64 tx_broadcast_bytes_ok;
19*9c067b84SDoug Ambrisko 	u64 tx_drops;
20*9c067b84SDoug Ambrisko 	u64 tx_errors;
21*9c067b84SDoug Ambrisko 	u64 tx_tso;
22*9c067b84SDoug Ambrisko 	u64 rsvd[16];
23*9c067b84SDoug Ambrisko };
24*9c067b84SDoug Ambrisko 
25*9c067b84SDoug Ambrisko /* Rx statistics */
26*9c067b84SDoug Ambrisko struct vnic_rx_stats {
27*9c067b84SDoug Ambrisko 	u64 rx_frames_ok;
28*9c067b84SDoug Ambrisko 	u64 rx_frames_total;
29*9c067b84SDoug Ambrisko 	u64 rx_unicast_frames_ok;
30*9c067b84SDoug Ambrisko 	u64 rx_multicast_frames_ok;
31*9c067b84SDoug Ambrisko 	u64 rx_broadcast_frames_ok;
32*9c067b84SDoug Ambrisko 	u64 rx_bytes_ok;
33*9c067b84SDoug Ambrisko 	u64 rx_unicast_bytes_ok;
34*9c067b84SDoug Ambrisko 	u64 rx_multicast_bytes_ok;
35*9c067b84SDoug Ambrisko 	u64 rx_broadcast_bytes_ok;
36*9c067b84SDoug Ambrisko 	u64 rx_drop;
37*9c067b84SDoug Ambrisko 	u64 rx_no_bufs;
38*9c067b84SDoug Ambrisko 	u64 rx_errors;
39*9c067b84SDoug Ambrisko 	u64 rx_rss;
40*9c067b84SDoug Ambrisko 	u64 rx_crc_errors;
41*9c067b84SDoug Ambrisko 	u64 rx_frames_64;
42*9c067b84SDoug Ambrisko 	u64 rx_frames_127;
43*9c067b84SDoug Ambrisko 	u64 rx_frames_255;
44*9c067b84SDoug Ambrisko 	u64 rx_frames_511;
45*9c067b84SDoug Ambrisko 	u64 rx_frames_1023;
46*9c067b84SDoug Ambrisko 	u64 rx_frames_1518;
47*9c067b84SDoug Ambrisko 	u64 rx_frames_to_max;
48*9c067b84SDoug Ambrisko 	u64 rsvd[16];
49*9c067b84SDoug Ambrisko };
50*9c067b84SDoug Ambrisko 
51*9c067b84SDoug Ambrisko struct vnic_stats {
52*9c067b84SDoug Ambrisko 	struct vnic_tx_stats tx;
53*9c067b84SDoug Ambrisko 	struct vnic_rx_stats rx;
54*9c067b84SDoug Ambrisko };
55*9c067b84SDoug Ambrisko 
56*9c067b84SDoug Ambrisko #endif /* _VNIC_STATS_H_ */
57