xref: /dpdk/drivers/net/octeontx/octeontx_stats.h (revision c6b97d678699d194b54e1833e5e1c5e01ebdeca6)
1*c6b97d67SHarman Kalra /* SPDX-License-Identifier: BSD-3-Clause
2*c6b97d67SHarman Kalra  * Copyright(C) 2022 Marvell.
3*c6b97d67SHarman Kalra  */
4*c6b97d67SHarman Kalra 
5*c6b97d67SHarman Kalra #ifndef __OCTEONTX_STATS_H__
6*c6b97d67SHarman Kalra #define __OCTEONTX_STATS_H__
7*c6b97d67SHarman Kalra 
8*c6b97d67SHarman Kalra #define BGX_XSTAT(stat) \
9*c6b97d67SHarman Kalra 	{#stat, offsetof(octeontx_mbox_bgx_port_stats_t, stat)}
10*c6b97d67SHarman Kalra struct octeontx_xstats {
11*c6b97d67SHarman Kalra 	char sname[RTE_ETH_XSTATS_NAME_SIZE];
12*c6b97d67SHarman Kalra 	uint32_t soffset;
13*c6b97d67SHarman Kalra };
14*c6b97d67SHarman Kalra 
15*c6b97d67SHarman Kalra struct octeontx_xstats octeontx_bgx_xstats[] = {
16*c6b97d67SHarman Kalra 	BGX_XSTAT(rx_packets),
17*c6b97d67SHarman Kalra 	BGX_XSTAT(tx_packets),
18*c6b97d67SHarman Kalra 	BGX_XSTAT(rx_broadcast_packets),
19*c6b97d67SHarman Kalra 	BGX_XSTAT(multicast),
20*c6b97d67SHarman Kalra 	BGX_XSTAT(tx_multicast_packets),
21*c6b97d67SHarman Kalra 	BGX_XSTAT(tx_broadcast_packets),
22*c6b97d67SHarman Kalra 	BGX_XSTAT(rx_undersized_errors),
23*c6b97d67SHarman Kalra 	BGX_XSTAT(rx_oversize_errors),
24*c6b97d67SHarman Kalra 	BGX_XSTAT(rx_jabber_errors),
25*c6b97d67SHarman Kalra 	BGX_XSTAT(rx_crc_errors),
26*c6b97d67SHarman Kalra 	BGX_XSTAT(collisions),
27*c6b97d67SHarman Kalra 	BGX_XSTAT(tx_1_to_64_packets),
28*c6b97d67SHarman Kalra 	BGX_XSTAT(tx_65_to_127_packets),
29*c6b97d67SHarman Kalra 	BGX_XSTAT(tx_128_to_255_packets),
30*c6b97d67SHarman Kalra 	BGX_XSTAT(tx_256_to_511_packets),
31*c6b97d67SHarman Kalra 	BGX_XSTAT(tx_512_to_1023_packets),
32*c6b97d67SHarman Kalra 	BGX_XSTAT(tx_1024_to_1522_packets),
33*c6b97d67SHarman Kalra 	BGX_XSTAT(tx_1523_to_max_packets),
34*c6b97d67SHarman Kalra 	BGX_XSTAT(rx_fragmented_errors),
35*c6b97d67SHarman Kalra 	BGX_XSTAT(rx_pause_packets),
36*c6b97d67SHarman Kalra 	BGX_XSTAT(tx_pause_packets),
37*c6b97d67SHarman Kalra };
38*c6b97d67SHarman Kalra 
39*c6b97d67SHarman Kalra #define NUM_BGX_XSTAT \
40*c6b97d67SHarman Kalra 	(sizeof(octeontx_bgx_xstats) / sizeof(struct octeontx_xstats))
41*c6b97d67SHarman Kalra #endif /* __OCTEONTX_STATS_H__ */
42