xref: /linux/drivers/net/ethernet/alibaba/eea/eea_ethtool.h (revision 5f4f7bc0ed1180a1bff423c39e05256172805b5d)
1*5f4f7bc0SXuan Zhuo /* SPDX-License-Identifier: GPL-2.0-or-later */
2*5f4f7bc0SXuan Zhuo /*
3*5f4f7bc0SXuan Zhuo  * Driver for Alibaba Elastic Ethernet Adapter.
4*5f4f7bc0SXuan Zhuo  *
5*5f4f7bc0SXuan Zhuo  * Copyright (C) 2025 Alibaba Inc.
6*5f4f7bc0SXuan Zhuo  */
7*5f4f7bc0SXuan Zhuo 
8*5f4f7bc0SXuan Zhuo #ifndef __EEA_ETHTOOL_H__
9*5f4f7bc0SXuan Zhuo #define __EEA_ETHTOOL_H__
10*5f4f7bc0SXuan Zhuo 
11*5f4f7bc0SXuan Zhuo struct eea_tx_stats {
12*5f4f7bc0SXuan Zhuo 	struct u64_stats_sync syncp;
13*5f4f7bc0SXuan Zhuo 	u64_stats_t descs;
14*5f4f7bc0SXuan Zhuo 	u64_stats_t packets;
15*5f4f7bc0SXuan Zhuo 	u64_stats_t bytes;
16*5f4f7bc0SXuan Zhuo 	u64_stats_t drops;
17*5f4f7bc0SXuan Zhuo 	u64_stats_t kicks;
18*5f4f7bc0SXuan Zhuo };
19*5f4f7bc0SXuan Zhuo 
20*5f4f7bc0SXuan Zhuo struct eea_rx_ctx_stats {
21*5f4f7bc0SXuan Zhuo 	u64 descs;
22*5f4f7bc0SXuan Zhuo 	u64 packets;
23*5f4f7bc0SXuan Zhuo 	u64 bytes;
24*5f4f7bc0SXuan Zhuo 	u64 drops;
25*5f4f7bc0SXuan Zhuo 	u64 split_hdr_bytes;
26*5f4f7bc0SXuan Zhuo 	u64 split_hdr_packets;
27*5f4f7bc0SXuan Zhuo 	u64 kicks;
28*5f4f7bc0SXuan Zhuo 	u64 length_errors;
29*5f4f7bc0SXuan Zhuo };
30*5f4f7bc0SXuan Zhuo 
31*5f4f7bc0SXuan Zhuo struct eea_rx_stats {
32*5f4f7bc0SXuan Zhuo 	struct u64_stats_sync syncp;
33*5f4f7bc0SXuan Zhuo 	u64_stats_t descs;
34*5f4f7bc0SXuan Zhuo 	u64_stats_t packets;
35*5f4f7bc0SXuan Zhuo 	u64_stats_t bytes;
36*5f4f7bc0SXuan Zhuo 	u64_stats_t drops;
37*5f4f7bc0SXuan Zhuo 	u64_stats_t kicks;
38*5f4f7bc0SXuan Zhuo 	u64_stats_t split_hdr_bytes;
39*5f4f7bc0SXuan Zhuo 	u64_stats_t split_hdr_packets;
40*5f4f7bc0SXuan Zhuo 
41*5f4f7bc0SXuan Zhuo 	u64_stats_t length_errors;
42*5f4f7bc0SXuan Zhuo };
43*5f4f7bc0SXuan Zhuo 
44*5f4f7bc0SXuan Zhuo void eea_update_rx_stats(struct eea_rx_stats *rx_stats,
45*5f4f7bc0SXuan Zhuo 			 struct eea_rx_ctx_stats *stats);
46*5f4f7bc0SXuan Zhuo 
47*5f4f7bc0SXuan Zhuo extern const struct ethtool_ops eea_ethtool_ops;
48*5f4f7bc0SXuan Zhuo #endif
49