Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0+ */
0002 // Copyright (c) 2021 Hisilicon Limited.
0003 
0004 #ifndef __HNS3_ETHTOOL_H
0005 #define __HNS3_ETHTOOL_H
0006 
0007 #include <linux/ethtool.h>
0008 #include <linux/netdevice.h>
0009 
0010 struct hns3_stats {
0011     char stats_string[ETH_GSTRING_LEN];
0012     int stats_offset;
0013 };
0014 
0015 struct hns3_sfp_type {
0016     u8 type;
0017     u8 ext_type;
0018 };
0019 
0020 struct hns3_pflag_desc {
0021     char name[ETH_GSTRING_LEN];
0022     void (*handler)(struct net_device *netdev, bool enable);
0023 };
0024 
0025 struct hns3_ethtool_link_ext_state_mapping {
0026     u32 status_code;
0027     enum ethtool_link_ext_state link_ext_state;
0028     u8 link_ext_substate;
0029 };
0030 
0031 struct hns3_ring_param {
0032     u32 tx_desc_num;
0033     u32 rx_desc_num;
0034     u32 rx_buf_len;
0035 };
0036 
0037 #endif