wx_ethtool.h 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. /* Copyright (c) 2015 - 2023 Beijing WangXun Technology Co., Ltd. */
  3. #ifndef _WX_ETHTOOL_H_
  4. #define _WX_ETHTOOL_H_
  5. int wx_get_sset_count(struct net_device *netdev, int sset);
  6. void wx_get_strings(struct net_device *netdev, u32 stringset, u8 *data);
  7. void wx_get_ethtool_stats(struct net_device *netdev,
  8. struct ethtool_stats *stats, u64 *data);
  9. void wx_get_mac_stats(struct net_device *netdev,
  10. struct ethtool_eth_mac_stats *mac_stats);
  11. void wx_get_pause_stats(struct net_device *netdev,
  12. struct ethtool_pause_stats *stats);
  13. void wx_get_drvinfo(struct net_device *netdev, struct ethtool_drvinfo *info);
  14. int wx_nway_reset(struct net_device *netdev);
  15. int wx_get_link_ksettings(struct net_device *netdev,
  16. struct ethtool_link_ksettings *cmd);
  17. int wx_set_link_ksettings(struct net_device *netdev,
  18. const struct ethtool_link_ksettings *cmd);
  19. void wx_get_pauseparam(struct net_device *netdev,
  20. struct ethtool_pauseparam *pause);
  21. int wx_set_pauseparam(struct net_device *netdev,
  22. struct ethtool_pauseparam *pause);
  23. void wx_get_ringparam(struct net_device *netdev,
  24. struct ethtool_ringparam *ring,
  25. struct kernel_ethtool_ringparam *kernel_ring,
  26. struct netlink_ext_ack *extack);
  27. int wx_get_coalesce(struct net_device *netdev,
  28. struct ethtool_coalesce *ec,
  29. struct kernel_ethtool_coalesce *kernel_coal,
  30. struct netlink_ext_ack *extack);
  31. int wx_set_coalesce(struct net_device *netdev,
  32. struct ethtool_coalesce *ec,
  33. struct kernel_ethtool_coalesce *kernel_coal,
  34. struct netlink_ext_ack *extack);
  35. void wx_get_channels(struct net_device *dev,
  36. struct ethtool_channels *ch);
  37. int wx_set_channels(struct net_device *dev,
  38. struct ethtool_channels *ch);
  39. u32 wx_get_msglevel(struct net_device *netdev);
  40. void wx_set_msglevel(struct net_device *netdev, u32 data);
  41. #endif /* _WX_ETHTOOL_H_ */