Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1/* SPDX-License-Identifier: GPL-2.0 */
2/* Copyright (c) 2015 - 2023 Beijing WangXun Technology Co., Ltd. */
3
4#ifndef _WX_ETHTOOL_H_
5#define _WX_ETHTOOL_H_
6
7int wx_get_sset_count(struct net_device *netdev, int sset);
8void wx_get_strings(struct net_device *netdev, u32 stringset, u8 *data);
9void wx_get_ethtool_stats(struct net_device *netdev,
10 struct ethtool_stats *stats, u64 *data);
11void wx_get_mac_stats(struct net_device *netdev,
12 struct ethtool_eth_mac_stats *mac_stats);
13void wx_get_pause_stats(struct net_device *netdev,
14 struct ethtool_pause_stats *stats);
15void wx_get_drvinfo(struct net_device *netdev, struct ethtool_drvinfo *info);
16int wx_nway_reset(struct net_device *netdev);
17int wx_get_link_ksettings(struct net_device *netdev,
18 struct ethtool_link_ksettings *cmd);
19int wx_set_link_ksettings(struct net_device *netdev,
20 const struct ethtool_link_ksettings *cmd);
21void wx_get_pauseparam(struct net_device *netdev,
22 struct ethtool_pauseparam *pause);
23int wx_set_pauseparam(struct net_device *netdev,
24 struct ethtool_pauseparam *pause);
25void wx_get_ringparam(struct net_device *netdev,
26 struct ethtool_ringparam *ring,
27 struct kernel_ethtool_ringparam *kernel_ring,
28 struct netlink_ext_ack *extack);
29int wx_get_coalesce(struct net_device *netdev,
30 struct ethtool_coalesce *ec,
31 struct kernel_ethtool_coalesce *kernel_coal,
32 struct netlink_ext_ack *extack);
33int wx_set_coalesce(struct net_device *netdev,
34 struct ethtool_coalesce *ec,
35 struct kernel_ethtool_coalesce *kernel_coal,
36 struct netlink_ext_ack *extack);
37void wx_get_channels(struct net_device *dev,
38 struct ethtool_channels *ch);
39int wx_set_channels(struct net_device *dev,
40 struct ethtool_channels *ch);
41u32 wx_rss_indir_size(struct net_device *netdev);
42u32 wx_get_rxfh_key_size(struct net_device *netdev);
43int wx_get_rxfh(struct net_device *netdev,
44 struct ethtool_rxfh_param *rxfh);
45int wx_set_rxfh(struct net_device *netdev,
46 struct ethtool_rxfh_param *rxfh,
47 struct netlink_ext_ack *extack);
48int wx_get_rxfh_fields(struct net_device *dev,
49 struct ethtool_rxfh_fields *cmd);
50int wx_set_rxfh_fields(struct net_device *dev,
51 const struct ethtool_rxfh_fields *nfc,
52 struct netlink_ext_ack *extack);
53u32 wx_get_msglevel(struct net_device *netdev);
54void wx_set_msglevel(struct net_device *netdev, u32 data);
55int wx_get_ts_info(struct net_device *dev,
56 struct kernel_ethtool_ts_info *info);
57void wx_get_ptp_stats(struct net_device *dev,
58 struct ethtool_ts_stats *ts_stats);
59void wx_set_ethtool_ops_vf(struct net_device *netdev);
60#endif /* _WX_ETHTOOL_H_ */