Home | History | Annotate | Download | only in linux
      1 /****************************************************************************
      2  ****************************************************************************
      3  ***
      4  ***   This header was automatically generated from a Linux kernel header
      5  ***   of the same name, to make information necessary for userspace to
      6  ***   call into the kernel available to libc.  It contains only constants,
      7  ***   structures, and macros generated from the original header, and thus,
      8  ***   contains no copyrightable information.
      9  ***
     10  ***   To edit the content of this header, modify the corresponding
     11  ***   source file (e.g. under external/kernel-headers/original/) then
     12  ***   run bionic/libc/kernel/tools/update_all.py
     13  ***
     14  ***   Any manual change here will be lost the next time this script will
     15  ***   be run. You've been warned!
     16  ***
     17  ****************************************************************************
     18  ****************************************************************************/
     19 #ifndef _UAPI_LINUX_ETHTOOL_H
     20 #define _UAPI_LINUX_ETHTOOL_H
     21 #include <linux/types.h>
     22 #include <linux/if_ether.h>
     23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     24 struct ethtool_cmd {
     25  __u32 cmd;
     26  __u32 supported;
     27  __u32 advertising;
     28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     29  __u16 speed;
     30  __u8 duplex;
     31  __u8 port;
     32  __u8 phy_address;
     33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     34  __u8 transceiver;
     35  __u8 autoneg;
     36  __u8 mdio_support;
     37  __u32 maxtxpkt;
     38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     39  __u32 maxrxpkt;
     40  __u16 speed_hi;
     41  __u8 eth_tp_mdix;
     42  __u8 eth_tp_mdix_ctrl;
     43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     44  __u32 lp_advertising;
     45  __u32 reserved[2];
     46 };
     47 #define ETH_MDIO_SUPPORTS_C22 1
     48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     49 #define ETH_MDIO_SUPPORTS_C45 2
     50 #define ETHTOOL_FWVERS_LEN 32
     51 #define ETHTOOL_BUSINFO_LEN 32
     52 struct ethtool_drvinfo {
     53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     54  __u32 cmd;
     55  char driver[32];
     56  char version[32];
     57  char fw_version[ETHTOOL_FWVERS_LEN];
     58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     59  char bus_info[ETHTOOL_BUSINFO_LEN];
     60  char reserved1[32];
     61  char reserved2[12];
     62  __u32 n_priv_flags;
     63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     64  __u32 n_stats;
     65  __u32 testinfo_len;
     66  __u32 eedump_len;
     67  __u32 regdump_len;
     68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     69 };
     70 #define SOPASS_MAX 6
     71 struct ethtool_wolinfo {
     72  __u32 cmd;
     73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     74  __u32 supported;
     75  __u32 wolopts;
     76  __u8 sopass[SOPASS_MAX];
     77 };
     78 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     79 struct ethtool_value {
     80  __u32 cmd;
     81  __u32 data;
     82 };
     83 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     84 struct ethtool_regs {
     85  __u32 cmd;
     86  __u32 version;
     87  __u32 len;
     88 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     89  __u8 data[0];
     90 };
     91 struct ethtool_eeprom {
     92  __u32 cmd;
     93 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     94  __u32 magic;
     95  __u32 offset;
     96  __u32 len;
     97  __u8 data[0];
     98 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     99 };
    100 struct ethtool_eee {
    101  __u32 cmd;
    102  __u32 supported;
    103 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    104  __u32 advertised;
    105  __u32 lp_advertised;
    106  __u32 eee_active;
    107  __u32 eee_enabled;
    108 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    109  __u32 tx_lpi_enabled;
    110  __u32 tx_lpi_timer;
    111  __u32 reserved[2];
    112 };
    113 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    114 struct ethtool_modinfo {
    115  __u32 cmd;
    116  __u32 type;
    117  __u32 eeprom_len;
    118 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    119  __u32 reserved[8];
    120 };
    121 struct ethtool_coalesce {
    122  __u32 cmd;
    123 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    124  __u32 rx_coalesce_usecs;
    125  __u32 rx_max_coalesced_frames;
    126  __u32 rx_coalesce_usecs_irq;
    127  __u32 rx_max_coalesced_frames_irq;
    128 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    129  __u32 tx_coalesce_usecs;
    130  __u32 tx_max_coalesced_frames;
    131  __u32 tx_coalesce_usecs_irq;
    132  __u32 tx_max_coalesced_frames_irq;
    133 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    134  __u32 stats_block_coalesce_usecs;
    135  __u32 use_adaptive_rx_coalesce;
    136  __u32 use_adaptive_tx_coalesce;
    137  __u32 pkt_rate_low;
    138 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    139  __u32 rx_coalesce_usecs_low;
    140  __u32 rx_max_coalesced_frames_low;
    141  __u32 tx_coalesce_usecs_low;
    142  __u32 tx_max_coalesced_frames_low;
    143 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    144  __u32 pkt_rate_high;
    145  __u32 rx_coalesce_usecs_high;
    146  __u32 rx_max_coalesced_frames_high;
    147  __u32 tx_coalesce_usecs_high;
    148 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    149  __u32 tx_max_coalesced_frames_high;
    150  __u32 rate_sample_interval;
    151 };
    152 struct ethtool_ringparam {
    153 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    154  __u32 cmd;
    155  __u32 rx_max_pending;
    156  __u32 rx_mini_max_pending;
    157  __u32 rx_jumbo_max_pending;
    158 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    159  __u32 tx_max_pending;
    160  __u32 rx_pending;
    161  __u32 rx_mini_pending;
    162  __u32 rx_jumbo_pending;
    163 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    164  __u32 tx_pending;
    165 };
    166 struct ethtool_channels {
    167  __u32 cmd;
    168 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    169  __u32 max_rx;
    170  __u32 max_tx;
    171  __u32 max_other;
    172  __u32 max_combined;
    173 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    174  __u32 rx_count;
    175  __u32 tx_count;
    176  __u32 other_count;
    177  __u32 combined_count;
    178 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    179 };
    180 struct ethtool_pauseparam {
    181  __u32 cmd;
    182  __u32 autoneg;
    183 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    184  __u32 rx_pause;
    185  __u32 tx_pause;
    186 };
    187 #define ETH_GSTRING_LEN 32
    188 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    189 enum ethtool_stringset {
    190  ETH_SS_TEST = 0,
    191  ETH_SS_STATS,
    192  ETH_SS_PRIV_FLAGS,
    193 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    194  ETH_SS_NTUPLE_FILTERS,
    195  ETH_SS_FEATURES,
    196 };
    197 struct ethtool_gstrings {
    198 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    199  __u32 cmd;
    200  __u32 string_set;
    201  __u32 len;
    202  __u8 data[0];
    203 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    204 };
    205 struct ethtool_sset_info {
    206  __u32 cmd;
    207  __u32 reserved;
    208 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    209  __u64 sset_mask;
    210  __u32 data[0];
    211 };
    212 enum ethtool_test_flags {
    213 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    214  ETH_TEST_FL_OFFLINE = (1 << 0),
    215  ETH_TEST_FL_FAILED = (1 << 1),
    216  ETH_TEST_FL_EXTERNAL_LB = (1 << 2),
    217  ETH_TEST_FL_EXTERNAL_LB_DONE = (1 << 3),
    218 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    219 };
    220 struct ethtool_test {
    221  __u32 cmd;
    222  __u32 flags;
    223 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    224  __u32 reserved;
    225  __u32 len;
    226  __u64 data[0];
    227 };
    228 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    229 struct ethtool_stats {
    230  __u32 cmd;
    231  __u32 n_stats;
    232  __u64 data[0];
    233 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    234 };
    235 struct ethtool_perm_addr {
    236  __u32 cmd;
    237  __u32 size;
    238 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    239  __u8 data[0];
    240 };
    241 enum ethtool_flags {
    242  ETH_FLAG_TXVLAN = (1 << 7),
    243 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    244  ETH_FLAG_RXVLAN = (1 << 8),
    245  ETH_FLAG_LRO = (1 << 15),
    246  ETH_FLAG_NTUPLE = (1 << 27),
    247  ETH_FLAG_RXHASH = (1 << 28),
    248 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    249 };
    250 struct ethtool_tcpip4_spec {
    251  __be32 ip4src;
    252  __be32 ip4dst;
    253 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    254  __be16 psrc;
    255  __be16 pdst;
    256  __u8 tos;
    257 };
    258 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    259 struct ethtool_ah_espip4_spec {
    260  __be32 ip4src;
    261  __be32 ip4dst;
    262  __be32 spi;
    263 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    264  __u8 tos;
    265 };
    266 #define ETH_RX_NFC_IP4 1
    267 struct ethtool_usrip4_spec {
    268 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    269  __be32 ip4src;
    270  __be32 ip4dst;
    271  __be32 l4_4_bytes;
    272  __u8 tos;
    273 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    274  __u8 ip_ver;
    275  __u8 proto;
    276 };
    277 union ethtool_flow_union {
    278 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    279  struct ethtool_tcpip4_spec tcp_ip4_spec;
    280  struct ethtool_tcpip4_spec udp_ip4_spec;
    281  struct ethtool_tcpip4_spec sctp_ip4_spec;
    282  struct ethtool_ah_espip4_spec ah_ip4_spec;
    283 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    284  struct ethtool_ah_espip4_spec esp_ip4_spec;
    285  struct ethtool_usrip4_spec usr_ip4_spec;
    286  struct ethhdr ether_spec;
    287  __u8 hdata[52];
    288 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    289 };
    290 struct ethtool_flow_ext {
    291  __u8 padding[2];
    292  unsigned char h_dest[ETH_ALEN];
    293 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    294  __be16 vlan_etype;
    295  __be16 vlan_tci;
    296  __be32 data[2];
    297 };
    298 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    299 struct ethtool_rx_flow_spec {
    300  __u32 flow_type;
    301  union ethtool_flow_union h_u;
    302  struct ethtool_flow_ext h_ext;
    303 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    304  union ethtool_flow_union m_u;
    305  struct ethtool_flow_ext m_ext;
    306  __u64 ring_cookie;
    307  __u32 location;
    308 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    309 };
    310 struct ethtool_rxnfc {
    311  __u32 cmd;
    312  __u32 flow_type;
    313 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    314  __u64 data;
    315  struct ethtool_rx_flow_spec fs;
    316  __u32 rule_cnt;
    317  __u32 rule_locs[0];
    318 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    319 };
    320 struct ethtool_rxfh_indir {
    321  __u32 cmd;
    322  __u32 size;
    323 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    324  __u32 ring_index[0];
    325 };
    326 struct ethtool_rx_ntuple_flow_spec {
    327  __u32 flow_type;
    328 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    329  union {
    330  struct ethtool_tcpip4_spec tcp_ip4_spec;
    331  struct ethtool_tcpip4_spec udp_ip4_spec;
    332  struct ethtool_tcpip4_spec sctp_ip4_spec;
    333 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    334  struct ethtool_ah_espip4_spec ah_ip4_spec;
    335  struct ethtool_ah_espip4_spec esp_ip4_spec;
    336  struct ethtool_usrip4_spec usr_ip4_spec;
    337  struct ethhdr ether_spec;
    338 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    339  __u8 hdata[72];
    340  } h_u, m_u;
    341  __u16 vlan_tag;
    342  __u16 vlan_tag_mask;
    343 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    344  __u64 data;
    345  __u64 data_mask;
    346  __s32 action;
    347 #define ETHTOOL_RXNTUPLE_ACTION_DROP (-1)
    348 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    349 #define ETHTOOL_RXNTUPLE_ACTION_CLEAR (-2)
    350 };
    351 struct ethtool_rx_ntuple {
    352  __u32 cmd;
    353 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    354  struct ethtool_rx_ntuple_flow_spec fs;
    355 };
    356 #define ETHTOOL_FLASH_MAX_FILENAME 128
    357 enum ethtool_flash_op_type {
    358 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    359  ETHTOOL_FLASH_ALL_REGIONS = 0,
    360 };
    361 struct ethtool_flash {
    362  __u32 cmd;
    363 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    364  __u32 region;
    365  char data[ETHTOOL_FLASH_MAX_FILENAME];
    366 };
    367 #define ETH_FW_DUMP_DISABLE 0
    368 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    369 struct ethtool_dump {
    370  __u32 cmd;
    371  __u32 version;
    372  __u32 flag;
    373 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    374  __u32 len;
    375  __u8 data[0];
    376 };
    377 struct ethtool_get_features_block {
    378 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    379  __u32 available;
    380  __u32 requested;
    381  __u32 active;
    382  __u32 never_changed;
    383 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    384 };
    385 struct ethtool_gfeatures {
    386  __u32 cmd;
    387  __u32 size;
    388 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    389  struct ethtool_get_features_block features[0];
    390 };
    391 struct ethtool_set_features_block {
    392  __u32 valid;
    393 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    394  __u32 requested;
    395 };
    396 struct ethtool_sfeatures {
    397  __u32 cmd;
    398 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    399  __u32 size;
    400  struct ethtool_set_features_block features[0];
    401 };
    402 struct ethtool_ts_info {
    403 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    404  __u32 cmd;
    405  __u32 so_timestamping;
    406  __s32 phc_index;
    407  __u32 tx_types;
    408 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    409  __u32 tx_reserved[3];
    410  __u32 rx_filters;
    411  __u32 rx_reserved[3];
    412 };
    413 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    414 enum ethtool_sfeatures_retval_bits {
    415  ETHTOOL_F_UNSUPPORTED__BIT,
    416  ETHTOOL_F_WISH__BIT,
    417  ETHTOOL_F_COMPAT__BIT,
    418 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    419 };
    420 #define ETHTOOL_F_UNSUPPORTED (1 << ETHTOOL_F_UNSUPPORTED__BIT)
    421 #define ETHTOOL_F_WISH (1 << ETHTOOL_F_WISH__BIT)
    422 #define ETHTOOL_F_COMPAT (1 << ETHTOOL_F_COMPAT__BIT)
    423 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    424 #define ETHTOOL_GSET 0x00000001
    425 #define ETHTOOL_SSET 0x00000002
    426 #define ETHTOOL_GDRVINFO 0x00000003
    427 #define ETHTOOL_GREGS 0x00000004
    428 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    429 #define ETHTOOL_GWOL 0x00000005
    430 #define ETHTOOL_SWOL 0x00000006
    431 #define ETHTOOL_GMSGLVL 0x00000007
    432 #define ETHTOOL_SMSGLVL 0x00000008
    433 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    434 #define ETHTOOL_NWAY_RST 0x00000009
    435 #define ETHTOOL_GLINK 0x0000000a
    436 #define ETHTOOL_GEEPROM 0x0000000b
    437 #define ETHTOOL_SEEPROM 0x0000000c
    438 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    439 #define ETHTOOL_GCOALESCE 0x0000000e
    440 #define ETHTOOL_SCOALESCE 0x0000000f
    441 #define ETHTOOL_GRINGPARAM 0x00000010
    442 #define ETHTOOL_SRINGPARAM 0x00000011
    443 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    444 #define ETHTOOL_GPAUSEPARAM 0x00000012
    445 #define ETHTOOL_SPAUSEPARAM 0x00000013
    446 #define ETHTOOL_GRXCSUM 0x00000014
    447 #define ETHTOOL_SRXCSUM 0x00000015
    448 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    449 #define ETHTOOL_GTXCSUM 0x00000016
    450 #define ETHTOOL_STXCSUM 0x00000017
    451 #define ETHTOOL_GSG 0x00000018
    452 #define ETHTOOL_SSG 0x00000019
    453 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    454 #define ETHTOOL_TEST 0x0000001a
    455 #define ETHTOOL_GSTRINGS 0x0000001b
    456 #define ETHTOOL_PHYS_ID 0x0000001c
    457 #define ETHTOOL_GSTATS 0x0000001d
    458 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    459 #define ETHTOOL_GTSO 0x0000001e
    460 #define ETHTOOL_STSO 0x0000001f
    461 #define ETHTOOL_GPERMADDR 0x00000020
    462 #define ETHTOOL_GUFO 0x00000021
    463 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    464 #define ETHTOOL_SUFO 0x00000022
    465 #define ETHTOOL_GGSO 0x00000023
    466 #define ETHTOOL_SGSO 0x00000024
    467 #define ETHTOOL_GFLAGS 0x00000025
    468 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    469 #define ETHTOOL_SFLAGS 0x00000026
    470 #define ETHTOOL_GPFLAGS 0x00000027
    471 #define ETHTOOL_SPFLAGS 0x00000028
    472 #define ETHTOOL_GRXFH 0x00000029
    473 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    474 #define ETHTOOL_SRXFH 0x0000002a
    475 #define ETHTOOL_GGRO 0x0000002b
    476 #define ETHTOOL_SGRO 0x0000002c
    477 #define ETHTOOL_GRXRINGS 0x0000002d
    478 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    479 #define ETHTOOL_GRXCLSRLCNT 0x0000002e
    480 #define ETHTOOL_GRXCLSRULE 0x0000002f
    481 #define ETHTOOL_GRXCLSRLALL 0x00000030
    482 #define ETHTOOL_SRXCLSRLDEL 0x00000031
    483 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    484 #define ETHTOOL_SRXCLSRLINS 0x00000032
    485 #define ETHTOOL_FLASHDEV 0x00000033
    486 #define ETHTOOL_RESET 0x00000034
    487 #define ETHTOOL_SRXNTUPLE 0x00000035
    488 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    489 #define ETHTOOL_GRXNTUPLE 0x00000036
    490 #define ETHTOOL_GSSET_INFO 0x00000037
    491 #define ETHTOOL_GRXFHINDIR 0x00000038
    492 #define ETHTOOL_SRXFHINDIR 0x00000039
    493 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    494 #define ETHTOOL_GFEATURES 0x0000003a
    495 #define ETHTOOL_SFEATURES 0x0000003b
    496 #define ETHTOOL_GCHANNELS 0x0000003c
    497 #define ETHTOOL_SCHANNELS 0x0000003d
    498 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    499 #define ETHTOOL_SET_DUMP 0x0000003e
    500 #define ETHTOOL_GET_DUMP_FLAG 0x0000003f
    501 #define ETHTOOL_GET_DUMP_DATA 0x00000040
    502 #define ETHTOOL_GET_TS_INFO 0x00000041
    503 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    504 #define ETHTOOL_GMODULEINFO 0x00000042
    505 #define ETHTOOL_GMODULEEEPROM 0x00000043
    506 #define ETHTOOL_GEEE 0x00000044
    507 #define ETHTOOL_SEEE 0x00000045
    508 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    509 #define SPARC_ETH_GSET ETHTOOL_GSET
    510 #define SPARC_ETH_SSET ETHTOOL_SSET
    511 #define SUPPORTED_10baseT_Half (1 << 0)
    512 #define SUPPORTED_10baseT_Full (1 << 1)
    513 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    514 #define SUPPORTED_100baseT_Half (1 << 2)
    515 #define SUPPORTED_100baseT_Full (1 << 3)
    516 #define SUPPORTED_1000baseT_Half (1 << 4)
    517 #define SUPPORTED_1000baseT_Full (1 << 5)
    518 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    519 #define SUPPORTED_Autoneg (1 << 6)
    520 #define SUPPORTED_TP (1 << 7)
    521 #define SUPPORTED_AUI (1 << 8)
    522 #define SUPPORTED_MII (1 << 9)
    523 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    524 #define SUPPORTED_FIBRE (1 << 10)
    525 #define SUPPORTED_BNC (1 << 11)
    526 #define SUPPORTED_10000baseT_Full (1 << 12)
    527 #define SUPPORTED_Pause (1 << 13)
    528 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    529 #define SUPPORTED_Asym_Pause (1 << 14)
    530 #define SUPPORTED_2500baseX_Full (1 << 15)
    531 #define SUPPORTED_Backplane (1 << 16)
    532 #define SUPPORTED_1000baseKX_Full (1 << 17)
    533 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    534 #define SUPPORTED_10000baseKX4_Full (1 << 18)
    535 #define SUPPORTED_10000baseKR_Full (1 << 19)
    536 #define SUPPORTED_10000baseR_FEC (1 << 20)
    537 #define SUPPORTED_20000baseMLD2_Full (1 << 21)
    538 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    539 #define SUPPORTED_20000baseKR2_Full (1 << 22)
    540 #define SUPPORTED_40000baseKR4_Full (1 << 23)
    541 #define SUPPORTED_40000baseCR4_Full (1 << 24)
    542 #define SUPPORTED_40000baseSR4_Full (1 << 25)
    543 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    544 #define SUPPORTED_40000baseLR4_Full (1 << 26)
    545 #define ADVERTISED_10baseT_Half (1 << 0)
    546 #define ADVERTISED_10baseT_Full (1 << 1)
    547 #define ADVERTISED_100baseT_Half (1 << 2)
    548 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    549 #define ADVERTISED_100baseT_Full (1 << 3)
    550 #define ADVERTISED_1000baseT_Half (1 << 4)
    551 #define ADVERTISED_1000baseT_Full (1 << 5)
    552 #define ADVERTISED_Autoneg (1 << 6)
    553 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    554 #define ADVERTISED_TP (1 << 7)
    555 #define ADVERTISED_AUI (1 << 8)
    556 #define ADVERTISED_MII (1 << 9)
    557 #define ADVERTISED_FIBRE (1 << 10)
    558 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    559 #define ADVERTISED_BNC (1 << 11)
    560 #define ADVERTISED_10000baseT_Full (1 << 12)
    561 #define ADVERTISED_Pause (1 << 13)
    562 #define ADVERTISED_Asym_Pause (1 << 14)
    563 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    564 #define ADVERTISED_2500baseX_Full (1 << 15)
    565 #define ADVERTISED_Backplane (1 << 16)
    566 #define ADVERTISED_1000baseKX_Full (1 << 17)
    567 #define ADVERTISED_10000baseKX4_Full (1 << 18)
    568 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    569 #define ADVERTISED_10000baseKR_Full (1 << 19)
    570 #define ADVERTISED_10000baseR_FEC (1 << 20)
    571 #define ADVERTISED_20000baseMLD2_Full (1 << 21)
    572 #define ADVERTISED_20000baseKR2_Full (1 << 22)
    573 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    574 #define ADVERTISED_40000baseKR4_Full (1 << 23)
    575 #define ADVERTISED_40000baseCR4_Full (1 << 24)
    576 #define ADVERTISED_40000baseSR4_Full (1 << 25)
    577 #define ADVERTISED_40000baseLR4_Full (1 << 26)
    578 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    579 #define SPEED_10 10
    580 #define SPEED_100 100
    581 #define SPEED_1000 1000
    582 #define SPEED_2500 2500
    583 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    584 #define SPEED_10000 10000
    585 #define SPEED_UNKNOWN -1
    586 #define DUPLEX_HALF 0x00
    587 #define DUPLEX_FULL 0x01
    588 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    589 #define DUPLEX_UNKNOWN 0xff
    590 #define PORT_TP 0x00
    591 #define PORT_AUI 0x01
    592 #define PORT_MII 0x02
    593 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    594 #define PORT_FIBRE 0x03
    595 #define PORT_BNC 0x04
    596 #define PORT_DA 0x05
    597 #define PORT_NONE 0xef
    598 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    599 #define PORT_OTHER 0xff
    600 #define XCVR_INTERNAL 0x00
    601 #define XCVR_EXTERNAL 0x01
    602 #define XCVR_DUMMY1 0x02
    603 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    604 #define XCVR_DUMMY2 0x03
    605 #define XCVR_DUMMY3 0x04
    606 #define AUTONEG_DISABLE 0x00
    607 #define AUTONEG_ENABLE 0x01
    608 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    609 #define ETH_TP_MDI_INVALID 0x00
    610 #define ETH_TP_MDI 0x01
    611 #define ETH_TP_MDI_X 0x02
    612 #define ETH_TP_MDI_AUTO 0x03
    613 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    614 #define WAKE_PHY (1 << 0)
    615 #define WAKE_UCAST (1 << 1)
    616 #define WAKE_MCAST (1 << 2)
    617 #define WAKE_BCAST (1 << 3)
    618 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    619 #define WAKE_ARP (1 << 4)
    620 #define WAKE_MAGIC (1 << 5)
    621 #define WAKE_MAGICSECURE (1 << 6)
    622 #define TCP_V4_FLOW 0x01
    623 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    624 #define UDP_V4_FLOW 0x02
    625 #define SCTP_V4_FLOW 0x03
    626 #define AH_ESP_V4_FLOW 0x04
    627 #define TCP_V6_FLOW 0x05
    628 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    629 #define UDP_V6_FLOW 0x06
    630 #define SCTP_V6_FLOW 0x07
    631 #define AH_ESP_V6_FLOW 0x08
    632 #define AH_V4_FLOW 0x09
    633 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    634 #define ESP_V4_FLOW 0x0a
    635 #define AH_V6_FLOW 0x0b
    636 #define ESP_V6_FLOW 0x0c
    637 #define IP_USER_FLOW 0x0d
    638 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    639 #define IPV4_FLOW 0x10
    640 #define IPV6_FLOW 0x11
    641 #define ETHER_FLOW 0x12
    642 #define FLOW_EXT 0x80000000
    643 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    644 #define FLOW_MAC_EXT 0x40000000
    645 #define RXH_L2DA (1 << 1)
    646 #define RXH_VLAN (1 << 2)
    647 #define RXH_L3_PROTO (1 << 3)
    648 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    649 #define RXH_IP_SRC (1 << 4)
    650 #define RXH_IP_DST (1 << 5)
    651 #define RXH_L4_B_0_1 (1 << 6)
    652 #define RXH_L4_B_2_3 (1 << 7)
    653 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    654 #define RXH_DISCARD (1 << 31)
    655 #define RX_CLS_FLOW_DISC 0xffffffffffffffffULL
    656 #define RX_CLS_LOC_SPECIAL 0x80000000
    657 #define RX_CLS_LOC_ANY 0xffffffff
    658 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    659 #define RX_CLS_LOC_FIRST 0xfffffffe
    660 #define RX_CLS_LOC_LAST 0xfffffffd
    661 #define ETH_MODULE_SFF_8079 0x1
    662 #define ETH_MODULE_SFF_8079_LEN 256
    663 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    664 #define ETH_MODULE_SFF_8472 0x2
    665 #define ETH_MODULE_SFF_8472_LEN 512
    666 enum ethtool_reset_flags {
    667  ETH_RESET_MGMT = 1 << 0,
    668 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    669  ETH_RESET_IRQ = 1 << 1,
    670  ETH_RESET_DMA = 1 << 2,
    671  ETH_RESET_FILTER = 1 << 3,
    672  ETH_RESET_OFFLOAD = 1 << 4,
    673 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    674  ETH_RESET_MAC = 1 << 5,
    675  ETH_RESET_PHY = 1 << 6,
    676  ETH_RESET_RAM = 1 << 7,
    677  ETH_RESET_DEDICATED = 0x0000ffff,
    678 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    679  ETH_RESET_ALL = 0xffffffff,
    680 };
    681 #define ETH_RESET_SHARED_SHIFT 16
    682 #endif
    683 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    684