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