115885Sjulian/* SPDX-License-Identifier: GPL-2.0 */ 215885Sjulian/* Copyright (c) 2015 - 2023 Beijing WangXun Technology Co., Ltd. */ 315885Sjulian 415885Sjulian#ifndef _WX_ETHTOOL_H_ 515885Sjulian#define _WX_ETHTOOL_H_ 615885Sjulian 715885Sjulianint wx_get_sset_count(struct net_device *netdev, int sset); 815885Sjulianvoid wx_get_strings(struct net_device *netdev, u32 stringset, u8 *data); 915885Sjulianvoid wx_get_ethtool_stats(struct net_device *netdev, 1015885Sjulian struct ethtool_stats *stats, u64 *data); 1115885Sjulianvoid wx_get_mac_stats(struct net_device *netdev, 1215885Sjulian struct ethtool_eth_mac_stats *mac_stats); 1315885Sjulianvoid wx_get_pause_stats(struct net_device *netdev, 1415885Sjulian struct ethtool_pause_stats *stats); 1515885Sjulianvoid wx_get_drvinfo(struct net_device *netdev, struct ethtool_drvinfo *info); 1615885Sjulianint wx_nway_reset(struct net_device *netdev); 1715885Sjulianint wx_get_link_ksettings(struct net_device *netdev, 1815885Sjulian struct ethtool_link_ksettings *cmd); 1915885Sjulianint wx_set_link_ksettings(struct net_device *netdev, 2015885Sjulian const struct ethtool_link_ksettings *cmd); 2115885Sjulianvoid wx_get_pauseparam(struct net_device *netdev, 2215885Sjulian struct ethtool_pauseparam *pause); 2315885Sjulianint wx_set_pauseparam(struct net_device *netdev, 2415885Sjulian struct ethtool_pauseparam *pause); 2515885Sjulianvoid wx_get_ringparam(struct net_device *netdev, 2615885Sjulian struct ethtool_ringparam *ring, 2715885Sjulian struct kernel_ethtool_ringparam *kernel_ring, 2817967Sjulian struct netlink_ext_ack *extack); 2917967Sjulianint wx_get_coalesce(struct net_device *netdev, 3017254Sjulian struct ethtool_coalesce *ec, 3117254Sjulian struct kernel_ethtool_coalesce *kernel_coal, 3217254Sjulian struct netlink_ext_ack *extack); 3317254Sjulianint wx_set_coalesce(struct net_device *netdev, 3417254Sjulian struct ethtool_coalesce *ec, 3517254Sjulian struct kernel_ethtool_coalesce *kernel_coal, 3615885Sjulian struct netlink_ext_ack *extack); 3715885Sjulianvoid wx_get_channels(struct net_device *dev, 3815885Sjulian struct ethtool_channels *ch); 3915885Sjulianint wx_set_channels(struct net_device *dev, 4015885Sjulian struct ethtool_channels *ch); 4115885Sjulianu32 wx_get_msglevel(struct net_device *netdev); 4215885Sjulianvoid wx_set_msglevel(struct net_device *netdev, u32 data); 4315885Sjulian#endif /* _WX_ETHTOOL_H_ */ 4415885Sjulian