162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */ 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * include/uapi/linux/ethtool_netlink.h - netlink interface for ethtool 462306a36Sopenharmony_ci * 562306a36Sopenharmony_ci * See Documentation/networking/ethtool-netlink.rst in kernel source tree for 662306a36Sopenharmony_ci * doucumentation of the interface. 762306a36Sopenharmony_ci */ 862306a36Sopenharmony_ci 962306a36Sopenharmony_ci#ifndef _UAPI_LINUX_ETHTOOL_NETLINK_H_ 1062306a36Sopenharmony_ci#define _UAPI_LINUX_ETHTOOL_NETLINK_H_ 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_ci#include <linux/ethtool.h> 1362306a36Sopenharmony_ci 1462306a36Sopenharmony_ci/* message types - userspace to kernel */ 1562306a36Sopenharmony_cienum { 1662306a36Sopenharmony_ci ETHTOOL_MSG_USER_NONE, 1762306a36Sopenharmony_ci ETHTOOL_MSG_STRSET_GET, 1862306a36Sopenharmony_ci ETHTOOL_MSG_LINKINFO_GET, 1962306a36Sopenharmony_ci ETHTOOL_MSG_LINKINFO_SET, 2062306a36Sopenharmony_ci ETHTOOL_MSG_LINKMODES_GET, 2162306a36Sopenharmony_ci ETHTOOL_MSG_LINKMODES_SET, 2262306a36Sopenharmony_ci ETHTOOL_MSG_LINKSTATE_GET, 2362306a36Sopenharmony_ci ETHTOOL_MSG_DEBUG_GET, 2462306a36Sopenharmony_ci ETHTOOL_MSG_DEBUG_SET, 2562306a36Sopenharmony_ci ETHTOOL_MSG_WOL_GET, 2662306a36Sopenharmony_ci ETHTOOL_MSG_WOL_SET, 2762306a36Sopenharmony_ci ETHTOOL_MSG_FEATURES_GET, 2862306a36Sopenharmony_ci ETHTOOL_MSG_FEATURES_SET, 2962306a36Sopenharmony_ci ETHTOOL_MSG_PRIVFLAGS_GET, 3062306a36Sopenharmony_ci ETHTOOL_MSG_PRIVFLAGS_SET, 3162306a36Sopenharmony_ci ETHTOOL_MSG_RINGS_GET, 3262306a36Sopenharmony_ci ETHTOOL_MSG_RINGS_SET, 3362306a36Sopenharmony_ci ETHTOOL_MSG_CHANNELS_GET, 3462306a36Sopenharmony_ci ETHTOOL_MSG_CHANNELS_SET, 3562306a36Sopenharmony_ci ETHTOOL_MSG_COALESCE_GET, 3662306a36Sopenharmony_ci ETHTOOL_MSG_COALESCE_SET, 3762306a36Sopenharmony_ci ETHTOOL_MSG_PAUSE_GET, 3862306a36Sopenharmony_ci ETHTOOL_MSG_PAUSE_SET, 3962306a36Sopenharmony_ci ETHTOOL_MSG_EEE_GET, 4062306a36Sopenharmony_ci ETHTOOL_MSG_EEE_SET, 4162306a36Sopenharmony_ci ETHTOOL_MSG_TSINFO_GET, 4262306a36Sopenharmony_ci ETHTOOL_MSG_CABLE_TEST_ACT, 4362306a36Sopenharmony_ci ETHTOOL_MSG_CABLE_TEST_TDR_ACT, 4462306a36Sopenharmony_ci ETHTOOL_MSG_TUNNEL_INFO_GET, 4562306a36Sopenharmony_ci ETHTOOL_MSG_FEC_GET, 4662306a36Sopenharmony_ci ETHTOOL_MSG_FEC_SET, 4762306a36Sopenharmony_ci ETHTOOL_MSG_MODULE_EEPROM_GET, 4862306a36Sopenharmony_ci ETHTOOL_MSG_STATS_GET, 4962306a36Sopenharmony_ci ETHTOOL_MSG_PHC_VCLOCKS_GET, 5062306a36Sopenharmony_ci ETHTOOL_MSG_MODULE_GET, 5162306a36Sopenharmony_ci ETHTOOL_MSG_MODULE_SET, 5262306a36Sopenharmony_ci ETHTOOL_MSG_PSE_GET, 5362306a36Sopenharmony_ci ETHTOOL_MSG_PSE_SET, 5462306a36Sopenharmony_ci ETHTOOL_MSG_RSS_GET, 5562306a36Sopenharmony_ci ETHTOOL_MSG_PLCA_GET_CFG, 5662306a36Sopenharmony_ci ETHTOOL_MSG_PLCA_SET_CFG, 5762306a36Sopenharmony_ci ETHTOOL_MSG_PLCA_GET_STATUS, 5862306a36Sopenharmony_ci ETHTOOL_MSG_MM_GET, 5962306a36Sopenharmony_ci ETHTOOL_MSG_MM_SET, 6062306a36Sopenharmony_ci 6162306a36Sopenharmony_ci /* add new constants above here */ 6262306a36Sopenharmony_ci __ETHTOOL_MSG_USER_CNT, 6362306a36Sopenharmony_ci ETHTOOL_MSG_USER_MAX = __ETHTOOL_MSG_USER_CNT - 1 6462306a36Sopenharmony_ci}; 6562306a36Sopenharmony_ci 6662306a36Sopenharmony_ci/* message types - kernel to userspace */ 6762306a36Sopenharmony_cienum { 6862306a36Sopenharmony_ci ETHTOOL_MSG_KERNEL_NONE, 6962306a36Sopenharmony_ci ETHTOOL_MSG_STRSET_GET_REPLY, 7062306a36Sopenharmony_ci ETHTOOL_MSG_LINKINFO_GET_REPLY, 7162306a36Sopenharmony_ci ETHTOOL_MSG_LINKINFO_NTF, 7262306a36Sopenharmony_ci ETHTOOL_MSG_LINKMODES_GET_REPLY, 7362306a36Sopenharmony_ci ETHTOOL_MSG_LINKMODES_NTF, 7462306a36Sopenharmony_ci ETHTOOL_MSG_LINKSTATE_GET_REPLY, 7562306a36Sopenharmony_ci ETHTOOL_MSG_DEBUG_GET_REPLY, 7662306a36Sopenharmony_ci ETHTOOL_MSG_DEBUG_NTF, 7762306a36Sopenharmony_ci ETHTOOL_MSG_WOL_GET_REPLY, 7862306a36Sopenharmony_ci ETHTOOL_MSG_WOL_NTF, 7962306a36Sopenharmony_ci ETHTOOL_MSG_FEATURES_GET_REPLY, 8062306a36Sopenharmony_ci ETHTOOL_MSG_FEATURES_SET_REPLY, 8162306a36Sopenharmony_ci ETHTOOL_MSG_FEATURES_NTF, 8262306a36Sopenharmony_ci ETHTOOL_MSG_PRIVFLAGS_GET_REPLY, 8362306a36Sopenharmony_ci ETHTOOL_MSG_PRIVFLAGS_NTF, 8462306a36Sopenharmony_ci ETHTOOL_MSG_RINGS_GET_REPLY, 8562306a36Sopenharmony_ci ETHTOOL_MSG_RINGS_NTF, 8662306a36Sopenharmony_ci ETHTOOL_MSG_CHANNELS_GET_REPLY, 8762306a36Sopenharmony_ci ETHTOOL_MSG_CHANNELS_NTF, 8862306a36Sopenharmony_ci ETHTOOL_MSG_COALESCE_GET_REPLY, 8962306a36Sopenharmony_ci ETHTOOL_MSG_COALESCE_NTF, 9062306a36Sopenharmony_ci ETHTOOL_MSG_PAUSE_GET_REPLY, 9162306a36Sopenharmony_ci ETHTOOL_MSG_PAUSE_NTF, 9262306a36Sopenharmony_ci ETHTOOL_MSG_EEE_GET_REPLY, 9362306a36Sopenharmony_ci ETHTOOL_MSG_EEE_NTF, 9462306a36Sopenharmony_ci ETHTOOL_MSG_TSINFO_GET_REPLY, 9562306a36Sopenharmony_ci ETHTOOL_MSG_CABLE_TEST_NTF, 9662306a36Sopenharmony_ci ETHTOOL_MSG_CABLE_TEST_TDR_NTF, 9762306a36Sopenharmony_ci ETHTOOL_MSG_TUNNEL_INFO_GET_REPLY, 9862306a36Sopenharmony_ci ETHTOOL_MSG_FEC_GET_REPLY, 9962306a36Sopenharmony_ci ETHTOOL_MSG_FEC_NTF, 10062306a36Sopenharmony_ci ETHTOOL_MSG_MODULE_EEPROM_GET_REPLY, 10162306a36Sopenharmony_ci ETHTOOL_MSG_STATS_GET_REPLY, 10262306a36Sopenharmony_ci ETHTOOL_MSG_PHC_VCLOCKS_GET_REPLY, 10362306a36Sopenharmony_ci ETHTOOL_MSG_MODULE_GET_REPLY, 10462306a36Sopenharmony_ci ETHTOOL_MSG_MODULE_NTF, 10562306a36Sopenharmony_ci ETHTOOL_MSG_PSE_GET_REPLY, 10662306a36Sopenharmony_ci ETHTOOL_MSG_RSS_GET_REPLY, 10762306a36Sopenharmony_ci ETHTOOL_MSG_PLCA_GET_CFG_REPLY, 10862306a36Sopenharmony_ci ETHTOOL_MSG_PLCA_GET_STATUS_REPLY, 10962306a36Sopenharmony_ci ETHTOOL_MSG_PLCA_NTF, 11062306a36Sopenharmony_ci ETHTOOL_MSG_MM_GET_REPLY, 11162306a36Sopenharmony_ci ETHTOOL_MSG_MM_NTF, 11262306a36Sopenharmony_ci 11362306a36Sopenharmony_ci /* add new constants above here */ 11462306a36Sopenharmony_ci __ETHTOOL_MSG_KERNEL_CNT, 11562306a36Sopenharmony_ci ETHTOOL_MSG_KERNEL_MAX = __ETHTOOL_MSG_KERNEL_CNT - 1 11662306a36Sopenharmony_ci}; 11762306a36Sopenharmony_ci 11862306a36Sopenharmony_ci/* request header */ 11962306a36Sopenharmony_ci 12062306a36Sopenharmony_ci/* use compact bitsets in reply */ 12162306a36Sopenharmony_ci#define ETHTOOL_FLAG_COMPACT_BITSETS (1 << 0) 12262306a36Sopenharmony_ci/* provide optional reply for SET or ACT requests */ 12362306a36Sopenharmony_ci#define ETHTOOL_FLAG_OMIT_REPLY (1 << 1) 12462306a36Sopenharmony_ci/* request statistics, if supported by the driver */ 12562306a36Sopenharmony_ci#define ETHTOOL_FLAG_STATS (1 << 2) 12662306a36Sopenharmony_ci 12762306a36Sopenharmony_ci#define ETHTOOL_FLAG_ALL (ETHTOOL_FLAG_COMPACT_BITSETS | \ 12862306a36Sopenharmony_ci ETHTOOL_FLAG_OMIT_REPLY | \ 12962306a36Sopenharmony_ci ETHTOOL_FLAG_STATS) 13062306a36Sopenharmony_ci 13162306a36Sopenharmony_cienum { 13262306a36Sopenharmony_ci ETHTOOL_A_HEADER_UNSPEC, 13362306a36Sopenharmony_ci ETHTOOL_A_HEADER_DEV_INDEX, /* u32 */ 13462306a36Sopenharmony_ci ETHTOOL_A_HEADER_DEV_NAME, /* string */ 13562306a36Sopenharmony_ci ETHTOOL_A_HEADER_FLAGS, /* u32 - ETHTOOL_FLAG_* */ 13662306a36Sopenharmony_ci 13762306a36Sopenharmony_ci /* add new constants above here */ 13862306a36Sopenharmony_ci __ETHTOOL_A_HEADER_CNT, 13962306a36Sopenharmony_ci ETHTOOL_A_HEADER_MAX = __ETHTOOL_A_HEADER_CNT - 1 14062306a36Sopenharmony_ci}; 14162306a36Sopenharmony_ci 14262306a36Sopenharmony_ci/* bit sets */ 14362306a36Sopenharmony_ci 14462306a36Sopenharmony_cienum { 14562306a36Sopenharmony_ci ETHTOOL_A_BITSET_BIT_UNSPEC, 14662306a36Sopenharmony_ci ETHTOOL_A_BITSET_BIT_INDEX, /* u32 */ 14762306a36Sopenharmony_ci ETHTOOL_A_BITSET_BIT_NAME, /* string */ 14862306a36Sopenharmony_ci ETHTOOL_A_BITSET_BIT_VALUE, /* flag */ 14962306a36Sopenharmony_ci 15062306a36Sopenharmony_ci /* add new constants above here */ 15162306a36Sopenharmony_ci __ETHTOOL_A_BITSET_BIT_CNT, 15262306a36Sopenharmony_ci ETHTOOL_A_BITSET_BIT_MAX = __ETHTOOL_A_BITSET_BIT_CNT - 1 15362306a36Sopenharmony_ci}; 15462306a36Sopenharmony_ci 15562306a36Sopenharmony_cienum { 15662306a36Sopenharmony_ci ETHTOOL_A_BITSET_BITS_UNSPEC, 15762306a36Sopenharmony_ci ETHTOOL_A_BITSET_BITS_BIT, /* nest - _A_BITSET_BIT_* */ 15862306a36Sopenharmony_ci 15962306a36Sopenharmony_ci /* add new constants above here */ 16062306a36Sopenharmony_ci __ETHTOOL_A_BITSET_BITS_CNT, 16162306a36Sopenharmony_ci ETHTOOL_A_BITSET_BITS_MAX = __ETHTOOL_A_BITSET_BITS_CNT - 1 16262306a36Sopenharmony_ci}; 16362306a36Sopenharmony_ci 16462306a36Sopenharmony_cienum { 16562306a36Sopenharmony_ci ETHTOOL_A_BITSET_UNSPEC, 16662306a36Sopenharmony_ci ETHTOOL_A_BITSET_NOMASK, /* flag */ 16762306a36Sopenharmony_ci ETHTOOL_A_BITSET_SIZE, /* u32 */ 16862306a36Sopenharmony_ci ETHTOOL_A_BITSET_BITS, /* nest - _A_BITSET_BITS_* */ 16962306a36Sopenharmony_ci ETHTOOL_A_BITSET_VALUE, /* binary */ 17062306a36Sopenharmony_ci ETHTOOL_A_BITSET_MASK, /* binary */ 17162306a36Sopenharmony_ci 17262306a36Sopenharmony_ci /* add new constants above here */ 17362306a36Sopenharmony_ci __ETHTOOL_A_BITSET_CNT, 17462306a36Sopenharmony_ci ETHTOOL_A_BITSET_MAX = __ETHTOOL_A_BITSET_CNT - 1 17562306a36Sopenharmony_ci}; 17662306a36Sopenharmony_ci 17762306a36Sopenharmony_ci/* string sets */ 17862306a36Sopenharmony_ci 17962306a36Sopenharmony_cienum { 18062306a36Sopenharmony_ci ETHTOOL_A_STRING_UNSPEC, 18162306a36Sopenharmony_ci ETHTOOL_A_STRING_INDEX, /* u32 */ 18262306a36Sopenharmony_ci ETHTOOL_A_STRING_VALUE, /* string */ 18362306a36Sopenharmony_ci 18462306a36Sopenharmony_ci /* add new constants above here */ 18562306a36Sopenharmony_ci __ETHTOOL_A_STRING_CNT, 18662306a36Sopenharmony_ci ETHTOOL_A_STRING_MAX = __ETHTOOL_A_STRING_CNT - 1 18762306a36Sopenharmony_ci}; 18862306a36Sopenharmony_ci 18962306a36Sopenharmony_cienum { 19062306a36Sopenharmony_ci ETHTOOL_A_STRINGS_UNSPEC, 19162306a36Sopenharmony_ci ETHTOOL_A_STRINGS_STRING, /* nest - _A_STRINGS_* */ 19262306a36Sopenharmony_ci 19362306a36Sopenharmony_ci /* add new constants above here */ 19462306a36Sopenharmony_ci __ETHTOOL_A_STRINGS_CNT, 19562306a36Sopenharmony_ci ETHTOOL_A_STRINGS_MAX = __ETHTOOL_A_STRINGS_CNT - 1 19662306a36Sopenharmony_ci}; 19762306a36Sopenharmony_ci 19862306a36Sopenharmony_cienum { 19962306a36Sopenharmony_ci ETHTOOL_A_STRINGSET_UNSPEC, 20062306a36Sopenharmony_ci ETHTOOL_A_STRINGSET_ID, /* u32 */ 20162306a36Sopenharmony_ci ETHTOOL_A_STRINGSET_COUNT, /* u32 */ 20262306a36Sopenharmony_ci ETHTOOL_A_STRINGSET_STRINGS, /* nest - _A_STRINGS_* */ 20362306a36Sopenharmony_ci 20462306a36Sopenharmony_ci /* add new constants above here */ 20562306a36Sopenharmony_ci __ETHTOOL_A_STRINGSET_CNT, 20662306a36Sopenharmony_ci ETHTOOL_A_STRINGSET_MAX = __ETHTOOL_A_STRINGSET_CNT - 1 20762306a36Sopenharmony_ci}; 20862306a36Sopenharmony_ci 20962306a36Sopenharmony_cienum { 21062306a36Sopenharmony_ci ETHTOOL_A_STRINGSETS_UNSPEC, 21162306a36Sopenharmony_ci ETHTOOL_A_STRINGSETS_STRINGSET, /* nest - _A_STRINGSET_* */ 21262306a36Sopenharmony_ci 21362306a36Sopenharmony_ci /* add new constants above here */ 21462306a36Sopenharmony_ci __ETHTOOL_A_STRINGSETS_CNT, 21562306a36Sopenharmony_ci ETHTOOL_A_STRINGSETS_MAX = __ETHTOOL_A_STRINGSETS_CNT - 1 21662306a36Sopenharmony_ci}; 21762306a36Sopenharmony_ci 21862306a36Sopenharmony_ci/* STRSET */ 21962306a36Sopenharmony_ci 22062306a36Sopenharmony_cienum { 22162306a36Sopenharmony_ci ETHTOOL_A_STRSET_UNSPEC, 22262306a36Sopenharmony_ci ETHTOOL_A_STRSET_HEADER, /* nest - _A_HEADER_* */ 22362306a36Sopenharmony_ci ETHTOOL_A_STRSET_STRINGSETS, /* nest - _A_STRINGSETS_* */ 22462306a36Sopenharmony_ci ETHTOOL_A_STRSET_COUNTS_ONLY, /* flag */ 22562306a36Sopenharmony_ci 22662306a36Sopenharmony_ci /* add new constants above here */ 22762306a36Sopenharmony_ci __ETHTOOL_A_STRSET_CNT, 22862306a36Sopenharmony_ci ETHTOOL_A_STRSET_MAX = __ETHTOOL_A_STRSET_CNT - 1 22962306a36Sopenharmony_ci}; 23062306a36Sopenharmony_ci 23162306a36Sopenharmony_ci/* LINKINFO */ 23262306a36Sopenharmony_ci 23362306a36Sopenharmony_cienum { 23462306a36Sopenharmony_ci ETHTOOL_A_LINKINFO_UNSPEC, 23562306a36Sopenharmony_ci ETHTOOL_A_LINKINFO_HEADER, /* nest - _A_HEADER_* */ 23662306a36Sopenharmony_ci ETHTOOL_A_LINKINFO_PORT, /* u8 */ 23762306a36Sopenharmony_ci ETHTOOL_A_LINKINFO_PHYADDR, /* u8 */ 23862306a36Sopenharmony_ci ETHTOOL_A_LINKINFO_TP_MDIX, /* u8 */ 23962306a36Sopenharmony_ci ETHTOOL_A_LINKINFO_TP_MDIX_CTRL, /* u8 */ 24062306a36Sopenharmony_ci ETHTOOL_A_LINKINFO_TRANSCEIVER, /* u8 */ 24162306a36Sopenharmony_ci 24262306a36Sopenharmony_ci /* add new constants above here */ 24362306a36Sopenharmony_ci __ETHTOOL_A_LINKINFO_CNT, 24462306a36Sopenharmony_ci ETHTOOL_A_LINKINFO_MAX = __ETHTOOL_A_LINKINFO_CNT - 1 24562306a36Sopenharmony_ci}; 24662306a36Sopenharmony_ci 24762306a36Sopenharmony_ci/* LINKMODES */ 24862306a36Sopenharmony_ci 24962306a36Sopenharmony_cienum { 25062306a36Sopenharmony_ci ETHTOOL_A_LINKMODES_UNSPEC, 25162306a36Sopenharmony_ci ETHTOOL_A_LINKMODES_HEADER, /* nest - _A_HEADER_* */ 25262306a36Sopenharmony_ci ETHTOOL_A_LINKMODES_AUTONEG, /* u8 */ 25362306a36Sopenharmony_ci ETHTOOL_A_LINKMODES_OURS, /* bitset */ 25462306a36Sopenharmony_ci ETHTOOL_A_LINKMODES_PEER, /* bitset */ 25562306a36Sopenharmony_ci ETHTOOL_A_LINKMODES_SPEED, /* u32 */ 25662306a36Sopenharmony_ci ETHTOOL_A_LINKMODES_DUPLEX, /* u8 */ 25762306a36Sopenharmony_ci ETHTOOL_A_LINKMODES_MASTER_SLAVE_CFG, /* u8 */ 25862306a36Sopenharmony_ci ETHTOOL_A_LINKMODES_MASTER_SLAVE_STATE, /* u8 */ 25962306a36Sopenharmony_ci ETHTOOL_A_LINKMODES_LANES, /* u32 */ 26062306a36Sopenharmony_ci ETHTOOL_A_LINKMODES_RATE_MATCHING, /* u8 */ 26162306a36Sopenharmony_ci 26262306a36Sopenharmony_ci /* add new constants above here */ 26362306a36Sopenharmony_ci __ETHTOOL_A_LINKMODES_CNT, 26462306a36Sopenharmony_ci ETHTOOL_A_LINKMODES_MAX = __ETHTOOL_A_LINKMODES_CNT - 1 26562306a36Sopenharmony_ci}; 26662306a36Sopenharmony_ci 26762306a36Sopenharmony_ci/* LINKSTATE */ 26862306a36Sopenharmony_ci 26962306a36Sopenharmony_cienum { 27062306a36Sopenharmony_ci ETHTOOL_A_LINKSTATE_UNSPEC, 27162306a36Sopenharmony_ci ETHTOOL_A_LINKSTATE_HEADER, /* nest - _A_HEADER_* */ 27262306a36Sopenharmony_ci ETHTOOL_A_LINKSTATE_LINK, /* u8 */ 27362306a36Sopenharmony_ci ETHTOOL_A_LINKSTATE_SQI, /* u32 */ 27462306a36Sopenharmony_ci ETHTOOL_A_LINKSTATE_SQI_MAX, /* u32 */ 27562306a36Sopenharmony_ci ETHTOOL_A_LINKSTATE_EXT_STATE, /* u8 */ 27662306a36Sopenharmony_ci ETHTOOL_A_LINKSTATE_EXT_SUBSTATE, /* u8 */ 27762306a36Sopenharmony_ci ETHTOOL_A_LINKSTATE_EXT_DOWN_CNT, /* u32 */ 27862306a36Sopenharmony_ci 27962306a36Sopenharmony_ci /* add new constants above here */ 28062306a36Sopenharmony_ci __ETHTOOL_A_LINKSTATE_CNT, 28162306a36Sopenharmony_ci ETHTOOL_A_LINKSTATE_MAX = __ETHTOOL_A_LINKSTATE_CNT - 1 28262306a36Sopenharmony_ci}; 28362306a36Sopenharmony_ci 28462306a36Sopenharmony_ci/* DEBUG */ 28562306a36Sopenharmony_ci 28662306a36Sopenharmony_cienum { 28762306a36Sopenharmony_ci ETHTOOL_A_DEBUG_UNSPEC, 28862306a36Sopenharmony_ci ETHTOOL_A_DEBUG_HEADER, /* nest - _A_HEADER_* */ 28962306a36Sopenharmony_ci ETHTOOL_A_DEBUG_MSGMASK, /* bitset */ 29062306a36Sopenharmony_ci 29162306a36Sopenharmony_ci /* add new constants above here */ 29262306a36Sopenharmony_ci __ETHTOOL_A_DEBUG_CNT, 29362306a36Sopenharmony_ci ETHTOOL_A_DEBUG_MAX = __ETHTOOL_A_DEBUG_CNT - 1 29462306a36Sopenharmony_ci}; 29562306a36Sopenharmony_ci 29662306a36Sopenharmony_ci/* WOL */ 29762306a36Sopenharmony_ci 29862306a36Sopenharmony_cienum { 29962306a36Sopenharmony_ci ETHTOOL_A_WOL_UNSPEC, 30062306a36Sopenharmony_ci ETHTOOL_A_WOL_HEADER, /* nest - _A_HEADER_* */ 30162306a36Sopenharmony_ci ETHTOOL_A_WOL_MODES, /* bitset */ 30262306a36Sopenharmony_ci ETHTOOL_A_WOL_SOPASS, /* binary */ 30362306a36Sopenharmony_ci 30462306a36Sopenharmony_ci /* add new constants above here */ 30562306a36Sopenharmony_ci __ETHTOOL_A_WOL_CNT, 30662306a36Sopenharmony_ci ETHTOOL_A_WOL_MAX = __ETHTOOL_A_WOL_CNT - 1 30762306a36Sopenharmony_ci}; 30862306a36Sopenharmony_ci 30962306a36Sopenharmony_ci/* FEATURES */ 31062306a36Sopenharmony_ci 31162306a36Sopenharmony_cienum { 31262306a36Sopenharmony_ci ETHTOOL_A_FEATURES_UNSPEC, 31362306a36Sopenharmony_ci ETHTOOL_A_FEATURES_HEADER, /* nest - _A_HEADER_* */ 31462306a36Sopenharmony_ci ETHTOOL_A_FEATURES_HW, /* bitset */ 31562306a36Sopenharmony_ci ETHTOOL_A_FEATURES_WANTED, /* bitset */ 31662306a36Sopenharmony_ci ETHTOOL_A_FEATURES_ACTIVE, /* bitset */ 31762306a36Sopenharmony_ci ETHTOOL_A_FEATURES_NOCHANGE, /* bitset */ 31862306a36Sopenharmony_ci 31962306a36Sopenharmony_ci /* add new constants above here */ 32062306a36Sopenharmony_ci __ETHTOOL_A_FEATURES_CNT, 32162306a36Sopenharmony_ci ETHTOOL_A_FEATURES_MAX = __ETHTOOL_A_FEATURES_CNT - 1 32262306a36Sopenharmony_ci}; 32362306a36Sopenharmony_ci 32462306a36Sopenharmony_ci/* PRIVFLAGS */ 32562306a36Sopenharmony_ci 32662306a36Sopenharmony_cienum { 32762306a36Sopenharmony_ci ETHTOOL_A_PRIVFLAGS_UNSPEC, 32862306a36Sopenharmony_ci ETHTOOL_A_PRIVFLAGS_HEADER, /* nest - _A_HEADER_* */ 32962306a36Sopenharmony_ci ETHTOOL_A_PRIVFLAGS_FLAGS, /* bitset */ 33062306a36Sopenharmony_ci 33162306a36Sopenharmony_ci /* add new constants above here */ 33262306a36Sopenharmony_ci __ETHTOOL_A_PRIVFLAGS_CNT, 33362306a36Sopenharmony_ci ETHTOOL_A_PRIVFLAGS_MAX = __ETHTOOL_A_PRIVFLAGS_CNT - 1 33462306a36Sopenharmony_ci}; 33562306a36Sopenharmony_ci 33662306a36Sopenharmony_ci/* RINGS */ 33762306a36Sopenharmony_ci 33862306a36Sopenharmony_cienum { 33962306a36Sopenharmony_ci ETHTOOL_TCP_DATA_SPLIT_UNKNOWN = 0, 34062306a36Sopenharmony_ci ETHTOOL_TCP_DATA_SPLIT_DISABLED, 34162306a36Sopenharmony_ci ETHTOOL_TCP_DATA_SPLIT_ENABLED, 34262306a36Sopenharmony_ci}; 34362306a36Sopenharmony_ci 34462306a36Sopenharmony_cienum { 34562306a36Sopenharmony_ci ETHTOOL_A_RINGS_UNSPEC, 34662306a36Sopenharmony_ci ETHTOOL_A_RINGS_HEADER, /* nest - _A_HEADER_* */ 34762306a36Sopenharmony_ci ETHTOOL_A_RINGS_RX_MAX, /* u32 */ 34862306a36Sopenharmony_ci ETHTOOL_A_RINGS_RX_MINI_MAX, /* u32 */ 34962306a36Sopenharmony_ci ETHTOOL_A_RINGS_RX_JUMBO_MAX, /* u32 */ 35062306a36Sopenharmony_ci ETHTOOL_A_RINGS_TX_MAX, /* u32 */ 35162306a36Sopenharmony_ci ETHTOOL_A_RINGS_RX, /* u32 */ 35262306a36Sopenharmony_ci ETHTOOL_A_RINGS_RX_MINI, /* u32 */ 35362306a36Sopenharmony_ci ETHTOOL_A_RINGS_RX_JUMBO, /* u32 */ 35462306a36Sopenharmony_ci ETHTOOL_A_RINGS_TX, /* u32 */ 35562306a36Sopenharmony_ci ETHTOOL_A_RINGS_RX_BUF_LEN, /* u32 */ 35662306a36Sopenharmony_ci ETHTOOL_A_RINGS_TCP_DATA_SPLIT, /* u8 */ 35762306a36Sopenharmony_ci ETHTOOL_A_RINGS_CQE_SIZE, /* u32 */ 35862306a36Sopenharmony_ci ETHTOOL_A_RINGS_TX_PUSH, /* u8 */ 35962306a36Sopenharmony_ci ETHTOOL_A_RINGS_RX_PUSH, /* u8 */ 36062306a36Sopenharmony_ci ETHTOOL_A_RINGS_TX_PUSH_BUF_LEN, /* u32 */ 36162306a36Sopenharmony_ci ETHTOOL_A_RINGS_TX_PUSH_BUF_LEN_MAX, /* u32 */ 36262306a36Sopenharmony_ci 36362306a36Sopenharmony_ci /* add new constants above here */ 36462306a36Sopenharmony_ci __ETHTOOL_A_RINGS_CNT, 36562306a36Sopenharmony_ci ETHTOOL_A_RINGS_MAX = (__ETHTOOL_A_RINGS_CNT - 1) 36662306a36Sopenharmony_ci}; 36762306a36Sopenharmony_ci 36862306a36Sopenharmony_ci/* CHANNELS */ 36962306a36Sopenharmony_ci 37062306a36Sopenharmony_cienum { 37162306a36Sopenharmony_ci ETHTOOL_A_CHANNELS_UNSPEC, 37262306a36Sopenharmony_ci ETHTOOL_A_CHANNELS_HEADER, /* nest - _A_HEADER_* */ 37362306a36Sopenharmony_ci ETHTOOL_A_CHANNELS_RX_MAX, /* u32 */ 37462306a36Sopenharmony_ci ETHTOOL_A_CHANNELS_TX_MAX, /* u32 */ 37562306a36Sopenharmony_ci ETHTOOL_A_CHANNELS_OTHER_MAX, /* u32 */ 37662306a36Sopenharmony_ci ETHTOOL_A_CHANNELS_COMBINED_MAX, /* u32 */ 37762306a36Sopenharmony_ci ETHTOOL_A_CHANNELS_RX_COUNT, /* u32 */ 37862306a36Sopenharmony_ci ETHTOOL_A_CHANNELS_TX_COUNT, /* u32 */ 37962306a36Sopenharmony_ci ETHTOOL_A_CHANNELS_OTHER_COUNT, /* u32 */ 38062306a36Sopenharmony_ci ETHTOOL_A_CHANNELS_COMBINED_COUNT, /* u32 */ 38162306a36Sopenharmony_ci 38262306a36Sopenharmony_ci /* add new constants above here */ 38362306a36Sopenharmony_ci __ETHTOOL_A_CHANNELS_CNT, 38462306a36Sopenharmony_ci ETHTOOL_A_CHANNELS_MAX = (__ETHTOOL_A_CHANNELS_CNT - 1) 38562306a36Sopenharmony_ci}; 38662306a36Sopenharmony_ci 38762306a36Sopenharmony_ci/* COALESCE */ 38862306a36Sopenharmony_ci 38962306a36Sopenharmony_cienum { 39062306a36Sopenharmony_ci ETHTOOL_A_COALESCE_UNSPEC, 39162306a36Sopenharmony_ci ETHTOOL_A_COALESCE_HEADER, /* nest - _A_HEADER_* */ 39262306a36Sopenharmony_ci ETHTOOL_A_COALESCE_RX_USECS, /* u32 */ 39362306a36Sopenharmony_ci ETHTOOL_A_COALESCE_RX_MAX_FRAMES, /* u32 */ 39462306a36Sopenharmony_ci ETHTOOL_A_COALESCE_RX_USECS_IRQ, /* u32 */ 39562306a36Sopenharmony_ci ETHTOOL_A_COALESCE_RX_MAX_FRAMES_IRQ, /* u32 */ 39662306a36Sopenharmony_ci ETHTOOL_A_COALESCE_TX_USECS, /* u32 */ 39762306a36Sopenharmony_ci ETHTOOL_A_COALESCE_TX_MAX_FRAMES, /* u32 */ 39862306a36Sopenharmony_ci ETHTOOL_A_COALESCE_TX_USECS_IRQ, /* u32 */ 39962306a36Sopenharmony_ci ETHTOOL_A_COALESCE_TX_MAX_FRAMES_IRQ, /* u32 */ 40062306a36Sopenharmony_ci ETHTOOL_A_COALESCE_STATS_BLOCK_USECS, /* u32 */ 40162306a36Sopenharmony_ci ETHTOOL_A_COALESCE_USE_ADAPTIVE_RX, /* u8 */ 40262306a36Sopenharmony_ci ETHTOOL_A_COALESCE_USE_ADAPTIVE_TX, /* u8 */ 40362306a36Sopenharmony_ci ETHTOOL_A_COALESCE_PKT_RATE_LOW, /* u32 */ 40462306a36Sopenharmony_ci ETHTOOL_A_COALESCE_RX_USECS_LOW, /* u32 */ 40562306a36Sopenharmony_ci ETHTOOL_A_COALESCE_RX_MAX_FRAMES_LOW, /* u32 */ 40662306a36Sopenharmony_ci ETHTOOL_A_COALESCE_TX_USECS_LOW, /* u32 */ 40762306a36Sopenharmony_ci ETHTOOL_A_COALESCE_TX_MAX_FRAMES_LOW, /* u32 */ 40862306a36Sopenharmony_ci ETHTOOL_A_COALESCE_PKT_RATE_HIGH, /* u32 */ 40962306a36Sopenharmony_ci ETHTOOL_A_COALESCE_RX_USECS_HIGH, /* u32 */ 41062306a36Sopenharmony_ci ETHTOOL_A_COALESCE_RX_MAX_FRAMES_HIGH, /* u32 */ 41162306a36Sopenharmony_ci ETHTOOL_A_COALESCE_TX_USECS_HIGH, /* u32 */ 41262306a36Sopenharmony_ci ETHTOOL_A_COALESCE_TX_MAX_FRAMES_HIGH, /* u32 */ 41362306a36Sopenharmony_ci ETHTOOL_A_COALESCE_RATE_SAMPLE_INTERVAL, /* u32 */ 41462306a36Sopenharmony_ci ETHTOOL_A_COALESCE_USE_CQE_MODE_TX, /* u8 */ 41562306a36Sopenharmony_ci ETHTOOL_A_COALESCE_USE_CQE_MODE_RX, /* u8 */ 41662306a36Sopenharmony_ci ETHTOOL_A_COALESCE_TX_AGGR_MAX_BYTES, /* u32 */ 41762306a36Sopenharmony_ci ETHTOOL_A_COALESCE_TX_AGGR_MAX_FRAMES, /* u32 */ 41862306a36Sopenharmony_ci ETHTOOL_A_COALESCE_TX_AGGR_TIME_USECS, /* u32 */ 41962306a36Sopenharmony_ci 42062306a36Sopenharmony_ci /* add new constants above here */ 42162306a36Sopenharmony_ci __ETHTOOL_A_COALESCE_CNT, 42262306a36Sopenharmony_ci ETHTOOL_A_COALESCE_MAX = (__ETHTOOL_A_COALESCE_CNT - 1) 42362306a36Sopenharmony_ci}; 42462306a36Sopenharmony_ci 42562306a36Sopenharmony_ci/* PAUSE */ 42662306a36Sopenharmony_ci 42762306a36Sopenharmony_cienum { 42862306a36Sopenharmony_ci ETHTOOL_A_PAUSE_UNSPEC, 42962306a36Sopenharmony_ci ETHTOOL_A_PAUSE_HEADER, /* nest - _A_HEADER_* */ 43062306a36Sopenharmony_ci ETHTOOL_A_PAUSE_AUTONEG, /* u8 */ 43162306a36Sopenharmony_ci ETHTOOL_A_PAUSE_RX, /* u8 */ 43262306a36Sopenharmony_ci ETHTOOL_A_PAUSE_TX, /* u8 */ 43362306a36Sopenharmony_ci ETHTOOL_A_PAUSE_STATS, /* nest - _PAUSE_STAT_* */ 43462306a36Sopenharmony_ci ETHTOOL_A_PAUSE_STATS_SRC, /* u32 */ 43562306a36Sopenharmony_ci 43662306a36Sopenharmony_ci /* add new constants above here */ 43762306a36Sopenharmony_ci __ETHTOOL_A_PAUSE_CNT, 43862306a36Sopenharmony_ci ETHTOOL_A_PAUSE_MAX = (__ETHTOOL_A_PAUSE_CNT - 1) 43962306a36Sopenharmony_ci}; 44062306a36Sopenharmony_ci 44162306a36Sopenharmony_cienum { 44262306a36Sopenharmony_ci ETHTOOL_A_PAUSE_STAT_UNSPEC, 44362306a36Sopenharmony_ci ETHTOOL_A_PAUSE_STAT_PAD, 44462306a36Sopenharmony_ci 44562306a36Sopenharmony_ci ETHTOOL_A_PAUSE_STAT_TX_FRAMES, 44662306a36Sopenharmony_ci ETHTOOL_A_PAUSE_STAT_RX_FRAMES, 44762306a36Sopenharmony_ci 44862306a36Sopenharmony_ci /* add new constants above here 44962306a36Sopenharmony_ci * adjust ETHTOOL_PAUSE_STAT_CNT if adding non-stats! 45062306a36Sopenharmony_ci */ 45162306a36Sopenharmony_ci __ETHTOOL_A_PAUSE_STAT_CNT, 45262306a36Sopenharmony_ci ETHTOOL_A_PAUSE_STAT_MAX = (__ETHTOOL_A_PAUSE_STAT_CNT - 1) 45362306a36Sopenharmony_ci}; 45462306a36Sopenharmony_ci 45562306a36Sopenharmony_ci/* EEE */ 45662306a36Sopenharmony_ci 45762306a36Sopenharmony_cienum { 45862306a36Sopenharmony_ci ETHTOOL_A_EEE_UNSPEC, 45962306a36Sopenharmony_ci ETHTOOL_A_EEE_HEADER, /* nest - _A_HEADER_* */ 46062306a36Sopenharmony_ci ETHTOOL_A_EEE_MODES_OURS, /* bitset */ 46162306a36Sopenharmony_ci ETHTOOL_A_EEE_MODES_PEER, /* bitset */ 46262306a36Sopenharmony_ci ETHTOOL_A_EEE_ACTIVE, /* u8 */ 46362306a36Sopenharmony_ci ETHTOOL_A_EEE_ENABLED, /* u8 */ 46462306a36Sopenharmony_ci ETHTOOL_A_EEE_TX_LPI_ENABLED, /* u8 */ 46562306a36Sopenharmony_ci ETHTOOL_A_EEE_TX_LPI_TIMER, /* u32 */ 46662306a36Sopenharmony_ci 46762306a36Sopenharmony_ci /* add new constants above here */ 46862306a36Sopenharmony_ci __ETHTOOL_A_EEE_CNT, 46962306a36Sopenharmony_ci ETHTOOL_A_EEE_MAX = (__ETHTOOL_A_EEE_CNT - 1) 47062306a36Sopenharmony_ci}; 47162306a36Sopenharmony_ci 47262306a36Sopenharmony_ci/* TSINFO */ 47362306a36Sopenharmony_ci 47462306a36Sopenharmony_cienum { 47562306a36Sopenharmony_ci ETHTOOL_A_TSINFO_UNSPEC, 47662306a36Sopenharmony_ci ETHTOOL_A_TSINFO_HEADER, /* nest - _A_HEADER_* */ 47762306a36Sopenharmony_ci ETHTOOL_A_TSINFO_TIMESTAMPING, /* bitset */ 47862306a36Sopenharmony_ci ETHTOOL_A_TSINFO_TX_TYPES, /* bitset */ 47962306a36Sopenharmony_ci ETHTOOL_A_TSINFO_RX_FILTERS, /* bitset */ 48062306a36Sopenharmony_ci ETHTOOL_A_TSINFO_PHC_INDEX, /* u32 */ 48162306a36Sopenharmony_ci 48262306a36Sopenharmony_ci /* add new constants above here */ 48362306a36Sopenharmony_ci __ETHTOOL_A_TSINFO_CNT, 48462306a36Sopenharmony_ci ETHTOOL_A_TSINFO_MAX = (__ETHTOOL_A_TSINFO_CNT - 1) 48562306a36Sopenharmony_ci}; 48662306a36Sopenharmony_ci 48762306a36Sopenharmony_ci/* PHC VCLOCKS */ 48862306a36Sopenharmony_ci 48962306a36Sopenharmony_cienum { 49062306a36Sopenharmony_ci ETHTOOL_A_PHC_VCLOCKS_UNSPEC, 49162306a36Sopenharmony_ci ETHTOOL_A_PHC_VCLOCKS_HEADER, /* nest - _A_HEADER_* */ 49262306a36Sopenharmony_ci ETHTOOL_A_PHC_VCLOCKS_NUM, /* u32 */ 49362306a36Sopenharmony_ci ETHTOOL_A_PHC_VCLOCKS_INDEX, /* array, s32 */ 49462306a36Sopenharmony_ci 49562306a36Sopenharmony_ci /* add new constants above here */ 49662306a36Sopenharmony_ci __ETHTOOL_A_PHC_VCLOCKS_CNT, 49762306a36Sopenharmony_ci ETHTOOL_A_PHC_VCLOCKS_MAX = (__ETHTOOL_A_PHC_VCLOCKS_CNT - 1) 49862306a36Sopenharmony_ci}; 49962306a36Sopenharmony_ci 50062306a36Sopenharmony_ci/* CABLE TEST */ 50162306a36Sopenharmony_ci 50262306a36Sopenharmony_cienum { 50362306a36Sopenharmony_ci ETHTOOL_A_CABLE_TEST_UNSPEC, 50462306a36Sopenharmony_ci ETHTOOL_A_CABLE_TEST_HEADER, /* nest - _A_HEADER_* */ 50562306a36Sopenharmony_ci 50662306a36Sopenharmony_ci /* add new constants above here */ 50762306a36Sopenharmony_ci __ETHTOOL_A_CABLE_TEST_CNT, 50862306a36Sopenharmony_ci ETHTOOL_A_CABLE_TEST_MAX = __ETHTOOL_A_CABLE_TEST_CNT - 1 50962306a36Sopenharmony_ci}; 51062306a36Sopenharmony_ci 51162306a36Sopenharmony_ci/* CABLE TEST NOTIFY */ 51262306a36Sopenharmony_cienum { 51362306a36Sopenharmony_ci ETHTOOL_A_CABLE_RESULT_CODE_UNSPEC, 51462306a36Sopenharmony_ci ETHTOOL_A_CABLE_RESULT_CODE_OK, 51562306a36Sopenharmony_ci ETHTOOL_A_CABLE_RESULT_CODE_OPEN, 51662306a36Sopenharmony_ci ETHTOOL_A_CABLE_RESULT_CODE_SAME_SHORT, 51762306a36Sopenharmony_ci ETHTOOL_A_CABLE_RESULT_CODE_CROSS_SHORT, 51862306a36Sopenharmony_ci}; 51962306a36Sopenharmony_ci 52062306a36Sopenharmony_cienum { 52162306a36Sopenharmony_ci ETHTOOL_A_CABLE_PAIR_A, 52262306a36Sopenharmony_ci ETHTOOL_A_CABLE_PAIR_B, 52362306a36Sopenharmony_ci ETHTOOL_A_CABLE_PAIR_C, 52462306a36Sopenharmony_ci ETHTOOL_A_CABLE_PAIR_D, 52562306a36Sopenharmony_ci}; 52662306a36Sopenharmony_ci 52762306a36Sopenharmony_cienum { 52862306a36Sopenharmony_ci ETHTOOL_A_CABLE_RESULT_UNSPEC, 52962306a36Sopenharmony_ci ETHTOOL_A_CABLE_RESULT_PAIR, /* u8 ETHTOOL_A_CABLE_PAIR_ */ 53062306a36Sopenharmony_ci ETHTOOL_A_CABLE_RESULT_CODE, /* u8 ETHTOOL_A_CABLE_RESULT_CODE_ */ 53162306a36Sopenharmony_ci 53262306a36Sopenharmony_ci __ETHTOOL_A_CABLE_RESULT_CNT, 53362306a36Sopenharmony_ci ETHTOOL_A_CABLE_RESULT_MAX = (__ETHTOOL_A_CABLE_RESULT_CNT - 1) 53462306a36Sopenharmony_ci}; 53562306a36Sopenharmony_ci 53662306a36Sopenharmony_cienum { 53762306a36Sopenharmony_ci ETHTOOL_A_CABLE_FAULT_LENGTH_UNSPEC, 53862306a36Sopenharmony_ci ETHTOOL_A_CABLE_FAULT_LENGTH_PAIR, /* u8 ETHTOOL_A_CABLE_PAIR_ */ 53962306a36Sopenharmony_ci ETHTOOL_A_CABLE_FAULT_LENGTH_CM, /* u32 */ 54062306a36Sopenharmony_ci 54162306a36Sopenharmony_ci __ETHTOOL_A_CABLE_FAULT_LENGTH_CNT, 54262306a36Sopenharmony_ci ETHTOOL_A_CABLE_FAULT_LENGTH_MAX = (__ETHTOOL_A_CABLE_FAULT_LENGTH_CNT - 1) 54362306a36Sopenharmony_ci}; 54462306a36Sopenharmony_ci 54562306a36Sopenharmony_cienum { 54662306a36Sopenharmony_ci ETHTOOL_A_CABLE_TEST_NTF_STATUS_UNSPEC, 54762306a36Sopenharmony_ci ETHTOOL_A_CABLE_TEST_NTF_STATUS_STARTED, 54862306a36Sopenharmony_ci ETHTOOL_A_CABLE_TEST_NTF_STATUS_COMPLETED 54962306a36Sopenharmony_ci}; 55062306a36Sopenharmony_ci 55162306a36Sopenharmony_cienum { 55262306a36Sopenharmony_ci ETHTOOL_A_CABLE_NEST_UNSPEC, 55362306a36Sopenharmony_ci ETHTOOL_A_CABLE_NEST_RESULT, /* nest - ETHTOOL_A_CABLE_RESULT_ */ 55462306a36Sopenharmony_ci ETHTOOL_A_CABLE_NEST_FAULT_LENGTH, /* nest - ETHTOOL_A_CABLE_FAULT_LENGTH_ */ 55562306a36Sopenharmony_ci __ETHTOOL_A_CABLE_NEST_CNT, 55662306a36Sopenharmony_ci ETHTOOL_A_CABLE_NEST_MAX = (__ETHTOOL_A_CABLE_NEST_CNT - 1) 55762306a36Sopenharmony_ci}; 55862306a36Sopenharmony_ci 55962306a36Sopenharmony_cienum { 56062306a36Sopenharmony_ci ETHTOOL_A_CABLE_TEST_NTF_UNSPEC, 56162306a36Sopenharmony_ci ETHTOOL_A_CABLE_TEST_NTF_HEADER, /* nest - ETHTOOL_A_HEADER_* */ 56262306a36Sopenharmony_ci ETHTOOL_A_CABLE_TEST_NTF_STATUS, /* u8 - _STARTED/_COMPLETE */ 56362306a36Sopenharmony_ci ETHTOOL_A_CABLE_TEST_NTF_NEST, /* nest - of results: */ 56462306a36Sopenharmony_ci 56562306a36Sopenharmony_ci __ETHTOOL_A_CABLE_TEST_NTF_CNT, 56662306a36Sopenharmony_ci ETHTOOL_A_CABLE_TEST_NTF_MAX = (__ETHTOOL_A_CABLE_TEST_NTF_CNT - 1) 56762306a36Sopenharmony_ci}; 56862306a36Sopenharmony_ci 56962306a36Sopenharmony_ci/* CABLE TEST TDR */ 57062306a36Sopenharmony_ci 57162306a36Sopenharmony_cienum { 57262306a36Sopenharmony_ci ETHTOOL_A_CABLE_TEST_TDR_CFG_UNSPEC, 57362306a36Sopenharmony_ci ETHTOOL_A_CABLE_TEST_TDR_CFG_FIRST, /* u32 */ 57462306a36Sopenharmony_ci ETHTOOL_A_CABLE_TEST_TDR_CFG_LAST, /* u32 */ 57562306a36Sopenharmony_ci ETHTOOL_A_CABLE_TEST_TDR_CFG_STEP, /* u32 */ 57662306a36Sopenharmony_ci ETHTOOL_A_CABLE_TEST_TDR_CFG_PAIR, /* u8 */ 57762306a36Sopenharmony_ci 57862306a36Sopenharmony_ci /* add new constants above here */ 57962306a36Sopenharmony_ci __ETHTOOL_A_CABLE_TEST_TDR_CFG_CNT, 58062306a36Sopenharmony_ci ETHTOOL_A_CABLE_TEST_TDR_CFG_MAX = __ETHTOOL_A_CABLE_TEST_TDR_CFG_CNT - 1 58162306a36Sopenharmony_ci}; 58262306a36Sopenharmony_ci 58362306a36Sopenharmony_cienum { 58462306a36Sopenharmony_ci ETHTOOL_A_CABLE_TEST_TDR_UNSPEC, 58562306a36Sopenharmony_ci ETHTOOL_A_CABLE_TEST_TDR_HEADER, /* nest - _A_HEADER_* */ 58662306a36Sopenharmony_ci ETHTOOL_A_CABLE_TEST_TDR_CFG, /* nest - *_TDR_CFG_* */ 58762306a36Sopenharmony_ci 58862306a36Sopenharmony_ci /* add new constants above here */ 58962306a36Sopenharmony_ci __ETHTOOL_A_CABLE_TEST_TDR_CNT, 59062306a36Sopenharmony_ci ETHTOOL_A_CABLE_TEST_TDR_MAX = __ETHTOOL_A_CABLE_TEST_TDR_CNT - 1 59162306a36Sopenharmony_ci}; 59262306a36Sopenharmony_ci 59362306a36Sopenharmony_ci/* CABLE TEST TDR NOTIFY */ 59462306a36Sopenharmony_ci 59562306a36Sopenharmony_cienum { 59662306a36Sopenharmony_ci ETHTOOL_A_CABLE_AMPLITUDE_UNSPEC, 59762306a36Sopenharmony_ci ETHTOOL_A_CABLE_AMPLITUDE_PAIR, /* u8 */ 59862306a36Sopenharmony_ci ETHTOOL_A_CABLE_AMPLITUDE_mV, /* s16 */ 59962306a36Sopenharmony_ci 60062306a36Sopenharmony_ci __ETHTOOL_A_CABLE_AMPLITUDE_CNT, 60162306a36Sopenharmony_ci ETHTOOL_A_CABLE_AMPLITUDE_MAX = (__ETHTOOL_A_CABLE_AMPLITUDE_CNT - 1) 60262306a36Sopenharmony_ci}; 60362306a36Sopenharmony_ci 60462306a36Sopenharmony_cienum { 60562306a36Sopenharmony_ci ETHTOOL_A_CABLE_PULSE_UNSPEC, 60662306a36Sopenharmony_ci ETHTOOL_A_CABLE_PULSE_mV, /* s16 */ 60762306a36Sopenharmony_ci 60862306a36Sopenharmony_ci __ETHTOOL_A_CABLE_PULSE_CNT, 60962306a36Sopenharmony_ci ETHTOOL_A_CABLE_PULSE_MAX = (__ETHTOOL_A_CABLE_PULSE_CNT - 1) 61062306a36Sopenharmony_ci}; 61162306a36Sopenharmony_ci 61262306a36Sopenharmony_cienum { 61362306a36Sopenharmony_ci ETHTOOL_A_CABLE_STEP_UNSPEC, 61462306a36Sopenharmony_ci ETHTOOL_A_CABLE_STEP_FIRST_DISTANCE, /* u32 */ 61562306a36Sopenharmony_ci ETHTOOL_A_CABLE_STEP_LAST_DISTANCE, /* u32 */ 61662306a36Sopenharmony_ci ETHTOOL_A_CABLE_STEP_STEP_DISTANCE, /* u32 */ 61762306a36Sopenharmony_ci 61862306a36Sopenharmony_ci __ETHTOOL_A_CABLE_STEP_CNT, 61962306a36Sopenharmony_ci ETHTOOL_A_CABLE_STEP_MAX = (__ETHTOOL_A_CABLE_STEP_CNT - 1) 62062306a36Sopenharmony_ci}; 62162306a36Sopenharmony_ci 62262306a36Sopenharmony_cienum { 62362306a36Sopenharmony_ci ETHTOOL_A_CABLE_TDR_NEST_UNSPEC, 62462306a36Sopenharmony_ci ETHTOOL_A_CABLE_TDR_NEST_STEP, /* nest - ETHTTOOL_A_CABLE_STEP */ 62562306a36Sopenharmony_ci ETHTOOL_A_CABLE_TDR_NEST_AMPLITUDE, /* nest - ETHTOOL_A_CABLE_AMPLITUDE */ 62662306a36Sopenharmony_ci ETHTOOL_A_CABLE_TDR_NEST_PULSE, /* nest - ETHTOOL_A_CABLE_PULSE */ 62762306a36Sopenharmony_ci 62862306a36Sopenharmony_ci __ETHTOOL_A_CABLE_TDR_NEST_CNT, 62962306a36Sopenharmony_ci ETHTOOL_A_CABLE_TDR_NEST_MAX = (__ETHTOOL_A_CABLE_TDR_NEST_CNT - 1) 63062306a36Sopenharmony_ci}; 63162306a36Sopenharmony_ci 63262306a36Sopenharmony_cienum { 63362306a36Sopenharmony_ci ETHTOOL_A_CABLE_TEST_TDR_NTF_UNSPEC, 63462306a36Sopenharmony_ci ETHTOOL_A_CABLE_TEST_TDR_NTF_HEADER, /* nest - ETHTOOL_A_HEADER_* */ 63562306a36Sopenharmony_ci ETHTOOL_A_CABLE_TEST_TDR_NTF_STATUS, /* u8 - _STARTED/_COMPLETE */ 63662306a36Sopenharmony_ci ETHTOOL_A_CABLE_TEST_TDR_NTF_NEST, /* nest - of results: */ 63762306a36Sopenharmony_ci 63862306a36Sopenharmony_ci /* add new constants above here */ 63962306a36Sopenharmony_ci __ETHTOOL_A_CABLE_TEST_TDR_NTF_CNT, 64062306a36Sopenharmony_ci ETHTOOL_A_CABLE_TEST_TDR_NTF_MAX = __ETHTOOL_A_CABLE_TEST_TDR_NTF_CNT - 1 64162306a36Sopenharmony_ci}; 64262306a36Sopenharmony_ci 64362306a36Sopenharmony_ci/* TUNNEL INFO */ 64462306a36Sopenharmony_ci 64562306a36Sopenharmony_cienum { 64662306a36Sopenharmony_ci ETHTOOL_UDP_TUNNEL_TYPE_VXLAN, 64762306a36Sopenharmony_ci ETHTOOL_UDP_TUNNEL_TYPE_GENEVE, 64862306a36Sopenharmony_ci ETHTOOL_UDP_TUNNEL_TYPE_VXLAN_GPE, 64962306a36Sopenharmony_ci 65062306a36Sopenharmony_ci __ETHTOOL_UDP_TUNNEL_TYPE_CNT 65162306a36Sopenharmony_ci}; 65262306a36Sopenharmony_ci 65362306a36Sopenharmony_cienum { 65462306a36Sopenharmony_ci ETHTOOL_A_TUNNEL_UDP_ENTRY_UNSPEC, 65562306a36Sopenharmony_ci 65662306a36Sopenharmony_ci ETHTOOL_A_TUNNEL_UDP_ENTRY_PORT, /* be16 */ 65762306a36Sopenharmony_ci ETHTOOL_A_TUNNEL_UDP_ENTRY_TYPE, /* u32 */ 65862306a36Sopenharmony_ci 65962306a36Sopenharmony_ci /* add new constants above here */ 66062306a36Sopenharmony_ci __ETHTOOL_A_TUNNEL_UDP_ENTRY_CNT, 66162306a36Sopenharmony_ci ETHTOOL_A_TUNNEL_UDP_ENTRY_MAX = (__ETHTOOL_A_TUNNEL_UDP_ENTRY_CNT - 1) 66262306a36Sopenharmony_ci}; 66362306a36Sopenharmony_ci 66462306a36Sopenharmony_cienum { 66562306a36Sopenharmony_ci ETHTOOL_A_TUNNEL_UDP_TABLE_UNSPEC, 66662306a36Sopenharmony_ci 66762306a36Sopenharmony_ci ETHTOOL_A_TUNNEL_UDP_TABLE_SIZE, /* u32 */ 66862306a36Sopenharmony_ci ETHTOOL_A_TUNNEL_UDP_TABLE_TYPES, /* bitset */ 66962306a36Sopenharmony_ci ETHTOOL_A_TUNNEL_UDP_TABLE_ENTRY, /* nest - _UDP_ENTRY_* */ 67062306a36Sopenharmony_ci 67162306a36Sopenharmony_ci /* add new constants above here */ 67262306a36Sopenharmony_ci __ETHTOOL_A_TUNNEL_UDP_TABLE_CNT, 67362306a36Sopenharmony_ci ETHTOOL_A_TUNNEL_UDP_TABLE_MAX = (__ETHTOOL_A_TUNNEL_UDP_TABLE_CNT - 1) 67462306a36Sopenharmony_ci}; 67562306a36Sopenharmony_ci 67662306a36Sopenharmony_cienum { 67762306a36Sopenharmony_ci ETHTOOL_A_TUNNEL_UDP_UNSPEC, 67862306a36Sopenharmony_ci 67962306a36Sopenharmony_ci ETHTOOL_A_TUNNEL_UDP_TABLE, /* nest - _UDP_TABLE_* */ 68062306a36Sopenharmony_ci 68162306a36Sopenharmony_ci /* add new constants above here */ 68262306a36Sopenharmony_ci __ETHTOOL_A_TUNNEL_UDP_CNT, 68362306a36Sopenharmony_ci ETHTOOL_A_TUNNEL_UDP_MAX = (__ETHTOOL_A_TUNNEL_UDP_CNT - 1) 68462306a36Sopenharmony_ci}; 68562306a36Sopenharmony_ci 68662306a36Sopenharmony_cienum { 68762306a36Sopenharmony_ci ETHTOOL_A_TUNNEL_INFO_UNSPEC, 68862306a36Sopenharmony_ci ETHTOOL_A_TUNNEL_INFO_HEADER, /* nest - _A_HEADER_* */ 68962306a36Sopenharmony_ci 69062306a36Sopenharmony_ci ETHTOOL_A_TUNNEL_INFO_UDP_PORTS, /* nest - _UDP_TABLE */ 69162306a36Sopenharmony_ci 69262306a36Sopenharmony_ci /* add new constants above here */ 69362306a36Sopenharmony_ci __ETHTOOL_A_TUNNEL_INFO_CNT, 69462306a36Sopenharmony_ci ETHTOOL_A_TUNNEL_INFO_MAX = (__ETHTOOL_A_TUNNEL_INFO_CNT - 1) 69562306a36Sopenharmony_ci}; 69662306a36Sopenharmony_ci 69762306a36Sopenharmony_ci/* FEC */ 69862306a36Sopenharmony_ci 69962306a36Sopenharmony_cienum { 70062306a36Sopenharmony_ci ETHTOOL_A_FEC_UNSPEC, 70162306a36Sopenharmony_ci ETHTOOL_A_FEC_HEADER, /* nest - _A_HEADER_* */ 70262306a36Sopenharmony_ci ETHTOOL_A_FEC_MODES, /* bitset */ 70362306a36Sopenharmony_ci ETHTOOL_A_FEC_AUTO, /* u8 */ 70462306a36Sopenharmony_ci ETHTOOL_A_FEC_ACTIVE, /* u32 */ 70562306a36Sopenharmony_ci ETHTOOL_A_FEC_STATS, /* nest - _A_FEC_STAT */ 70662306a36Sopenharmony_ci 70762306a36Sopenharmony_ci __ETHTOOL_A_FEC_CNT, 70862306a36Sopenharmony_ci ETHTOOL_A_FEC_MAX = (__ETHTOOL_A_FEC_CNT - 1) 70962306a36Sopenharmony_ci}; 71062306a36Sopenharmony_ci 71162306a36Sopenharmony_cienum { 71262306a36Sopenharmony_ci ETHTOOL_A_FEC_STAT_UNSPEC, 71362306a36Sopenharmony_ci ETHTOOL_A_FEC_STAT_PAD, 71462306a36Sopenharmony_ci 71562306a36Sopenharmony_ci ETHTOOL_A_FEC_STAT_CORRECTED, /* array, u64 */ 71662306a36Sopenharmony_ci ETHTOOL_A_FEC_STAT_UNCORR, /* array, u64 */ 71762306a36Sopenharmony_ci ETHTOOL_A_FEC_STAT_CORR_BITS, /* array, u64 */ 71862306a36Sopenharmony_ci 71962306a36Sopenharmony_ci /* add new constants above here */ 72062306a36Sopenharmony_ci __ETHTOOL_A_FEC_STAT_CNT, 72162306a36Sopenharmony_ci ETHTOOL_A_FEC_STAT_MAX = (__ETHTOOL_A_FEC_STAT_CNT - 1) 72262306a36Sopenharmony_ci}; 72362306a36Sopenharmony_ci 72462306a36Sopenharmony_ci/* MODULE EEPROM */ 72562306a36Sopenharmony_ci 72662306a36Sopenharmony_cienum { 72762306a36Sopenharmony_ci ETHTOOL_A_MODULE_EEPROM_UNSPEC, 72862306a36Sopenharmony_ci ETHTOOL_A_MODULE_EEPROM_HEADER, /* nest - _A_HEADER_* */ 72962306a36Sopenharmony_ci 73062306a36Sopenharmony_ci ETHTOOL_A_MODULE_EEPROM_OFFSET, /* u32 */ 73162306a36Sopenharmony_ci ETHTOOL_A_MODULE_EEPROM_LENGTH, /* u32 */ 73262306a36Sopenharmony_ci ETHTOOL_A_MODULE_EEPROM_PAGE, /* u8 */ 73362306a36Sopenharmony_ci ETHTOOL_A_MODULE_EEPROM_BANK, /* u8 */ 73462306a36Sopenharmony_ci ETHTOOL_A_MODULE_EEPROM_I2C_ADDRESS, /* u8 */ 73562306a36Sopenharmony_ci ETHTOOL_A_MODULE_EEPROM_DATA, /* binary */ 73662306a36Sopenharmony_ci 73762306a36Sopenharmony_ci __ETHTOOL_A_MODULE_EEPROM_CNT, 73862306a36Sopenharmony_ci ETHTOOL_A_MODULE_EEPROM_MAX = (__ETHTOOL_A_MODULE_EEPROM_CNT - 1) 73962306a36Sopenharmony_ci}; 74062306a36Sopenharmony_ci 74162306a36Sopenharmony_ci/* STATS */ 74262306a36Sopenharmony_ci 74362306a36Sopenharmony_cienum { 74462306a36Sopenharmony_ci ETHTOOL_A_STATS_UNSPEC, 74562306a36Sopenharmony_ci ETHTOOL_A_STATS_PAD, 74662306a36Sopenharmony_ci ETHTOOL_A_STATS_HEADER, /* nest - _A_HEADER_* */ 74762306a36Sopenharmony_ci ETHTOOL_A_STATS_GROUPS, /* bitset */ 74862306a36Sopenharmony_ci 74962306a36Sopenharmony_ci ETHTOOL_A_STATS_GRP, /* nest - _A_STATS_GRP_* */ 75062306a36Sopenharmony_ci 75162306a36Sopenharmony_ci ETHTOOL_A_STATS_SRC, /* u32 */ 75262306a36Sopenharmony_ci 75362306a36Sopenharmony_ci /* add new constants above here */ 75462306a36Sopenharmony_ci __ETHTOOL_A_STATS_CNT, 75562306a36Sopenharmony_ci ETHTOOL_A_STATS_MAX = (__ETHTOOL_A_STATS_CNT - 1) 75662306a36Sopenharmony_ci}; 75762306a36Sopenharmony_ci 75862306a36Sopenharmony_cienum { 75962306a36Sopenharmony_ci ETHTOOL_STATS_ETH_PHY, 76062306a36Sopenharmony_ci ETHTOOL_STATS_ETH_MAC, 76162306a36Sopenharmony_ci ETHTOOL_STATS_ETH_CTRL, 76262306a36Sopenharmony_ci ETHTOOL_STATS_RMON, 76362306a36Sopenharmony_ci 76462306a36Sopenharmony_ci /* add new constants above here */ 76562306a36Sopenharmony_ci __ETHTOOL_STATS_CNT 76662306a36Sopenharmony_ci}; 76762306a36Sopenharmony_ci 76862306a36Sopenharmony_cienum { 76962306a36Sopenharmony_ci ETHTOOL_A_STATS_GRP_UNSPEC, 77062306a36Sopenharmony_ci ETHTOOL_A_STATS_GRP_PAD, 77162306a36Sopenharmony_ci 77262306a36Sopenharmony_ci ETHTOOL_A_STATS_GRP_ID, /* u32 */ 77362306a36Sopenharmony_ci ETHTOOL_A_STATS_GRP_SS_ID, /* u32 */ 77462306a36Sopenharmony_ci 77562306a36Sopenharmony_ci ETHTOOL_A_STATS_GRP_STAT, /* nest */ 77662306a36Sopenharmony_ci 77762306a36Sopenharmony_ci ETHTOOL_A_STATS_GRP_HIST_RX, /* nest */ 77862306a36Sopenharmony_ci ETHTOOL_A_STATS_GRP_HIST_TX, /* nest */ 77962306a36Sopenharmony_ci 78062306a36Sopenharmony_ci ETHTOOL_A_STATS_GRP_HIST_BKT_LOW, /* u32 */ 78162306a36Sopenharmony_ci ETHTOOL_A_STATS_GRP_HIST_BKT_HI, /* u32 */ 78262306a36Sopenharmony_ci ETHTOOL_A_STATS_GRP_HIST_VAL, /* u64 */ 78362306a36Sopenharmony_ci 78462306a36Sopenharmony_ci /* add new constants above here */ 78562306a36Sopenharmony_ci __ETHTOOL_A_STATS_GRP_CNT, 78662306a36Sopenharmony_ci ETHTOOL_A_STATS_GRP_MAX = (__ETHTOOL_A_STATS_GRP_CNT - 1) 78762306a36Sopenharmony_ci}; 78862306a36Sopenharmony_ci 78962306a36Sopenharmony_cienum { 79062306a36Sopenharmony_ci /* 30.3.2.1.5 aSymbolErrorDuringCarrier */ 79162306a36Sopenharmony_ci ETHTOOL_A_STATS_ETH_PHY_5_SYM_ERR, 79262306a36Sopenharmony_ci 79362306a36Sopenharmony_ci /* add new constants above here */ 79462306a36Sopenharmony_ci __ETHTOOL_A_STATS_ETH_PHY_CNT, 79562306a36Sopenharmony_ci ETHTOOL_A_STATS_ETH_PHY_MAX = (__ETHTOOL_A_STATS_ETH_PHY_CNT - 1) 79662306a36Sopenharmony_ci}; 79762306a36Sopenharmony_ci 79862306a36Sopenharmony_cienum { 79962306a36Sopenharmony_ci /* 30.3.1.1.2 aFramesTransmittedOK */ 80062306a36Sopenharmony_ci ETHTOOL_A_STATS_ETH_MAC_2_TX_PKT, 80162306a36Sopenharmony_ci /* 30.3.1.1.3 aSingleCollisionFrames */ 80262306a36Sopenharmony_ci ETHTOOL_A_STATS_ETH_MAC_3_SINGLE_COL, 80362306a36Sopenharmony_ci /* 30.3.1.1.4 aMultipleCollisionFrames */ 80462306a36Sopenharmony_ci ETHTOOL_A_STATS_ETH_MAC_4_MULTI_COL, 80562306a36Sopenharmony_ci /* 30.3.1.1.5 aFramesReceivedOK */ 80662306a36Sopenharmony_ci ETHTOOL_A_STATS_ETH_MAC_5_RX_PKT, 80762306a36Sopenharmony_ci /* 30.3.1.1.6 aFrameCheckSequenceErrors */ 80862306a36Sopenharmony_ci ETHTOOL_A_STATS_ETH_MAC_6_FCS_ERR, 80962306a36Sopenharmony_ci /* 30.3.1.1.7 aAlignmentErrors */ 81062306a36Sopenharmony_ci ETHTOOL_A_STATS_ETH_MAC_7_ALIGN_ERR, 81162306a36Sopenharmony_ci /* 30.3.1.1.8 aOctetsTransmittedOK */ 81262306a36Sopenharmony_ci ETHTOOL_A_STATS_ETH_MAC_8_TX_BYTES, 81362306a36Sopenharmony_ci /* 30.3.1.1.9 aFramesWithDeferredXmissions */ 81462306a36Sopenharmony_ci ETHTOOL_A_STATS_ETH_MAC_9_TX_DEFER, 81562306a36Sopenharmony_ci /* 30.3.1.1.10 aLateCollisions */ 81662306a36Sopenharmony_ci ETHTOOL_A_STATS_ETH_MAC_10_LATE_COL, 81762306a36Sopenharmony_ci /* 30.3.1.1.11 aFramesAbortedDueToXSColls */ 81862306a36Sopenharmony_ci ETHTOOL_A_STATS_ETH_MAC_11_XS_COL, 81962306a36Sopenharmony_ci /* 30.3.1.1.12 aFramesLostDueToIntMACXmitError */ 82062306a36Sopenharmony_ci ETHTOOL_A_STATS_ETH_MAC_12_TX_INT_ERR, 82162306a36Sopenharmony_ci /* 30.3.1.1.13 aCarrierSenseErrors */ 82262306a36Sopenharmony_ci ETHTOOL_A_STATS_ETH_MAC_13_CS_ERR, 82362306a36Sopenharmony_ci /* 30.3.1.1.14 aOctetsReceivedOK */ 82462306a36Sopenharmony_ci ETHTOOL_A_STATS_ETH_MAC_14_RX_BYTES, 82562306a36Sopenharmony_ci /* 30.3.1.1.15 aFramesLostDueToIntMACRcvError */ 82662306a36Sopenharmony_ci ETHTOOL_A_STATS_ETH_MAC_15_RX_INT_ERR, 82762306a36Sopenharmony_ci 82862306a36Sopenharmony_ci /* 30.3.1.1.18 aMulticastFramesXmittedOK */ 82962306a36Sopenharmony_ci ETHTOOL_A_STATS_ETH_MAC_18_TX_MCAST, 83062306a36Sopenharmony_ci /* 30.3.1.1.19 aBroadcastFramesXmittedOK */ 83162306a36Sopenharmony_ci ETHTOOL_A_STATS_ETH_MAC_19_TX_BCAST, 83262306a36Sopenharmony_ci /* 30.3.1.1.20 aFramesWithExcessiveDeferral */ 83362306a36Sopenharmony_ci ETHTOOL_A_STATS_ETH_MAC_20_XS_DEFER, 83462306a36Sopenharmony_ci /* 30.3.1.1.21 aMulticastFramesReceivedOK */ 83562306a36Sopenharmony_ci ETHTOOL_A_STATS_ETH_MAC_21_RX_MCAST, 83662306a36Sopenharmony_ci /* 30.3.1.1.22 aBroadcastFramesReceivedOK */ 83762306a36Sopenharmony_ci ETHTOOL_A_STATS_ETH_MAC_22_RX_BCAST, 83862306a36Sopenharmony_ci /* 30.3.1.1.23 aInRangeLengthErrors */ 83962306a36Sopenharmony_ci ETHTOOL_A_STATS_ETH_MAC_23_IR_LEN_ERR, 84062306a36Sopenharmony_ci /* 30.3.1.1.24 aOutOfRangeLengthField */ 84162306a36Sopenharmony_ci ETHTOOL_A_STATS_ETH_MAC_24_OOR_LEN, 84262306a36Sopenharmony_ci /* 30.3.1.1.25 aFrameTooLongErrors */ 84362306a36Sopenharmony_ci ETHTOOL_A_STATS_ETH_MAC_25_TOO_LONG_ERR, 84462306a36Sopenharmony_ci 84562306a36Sopenharmony_ci /* add new constants above here */ 84662306a36Sopenharmony_ci __ETHTOOL_A_STATS_ETH_MAC_CNT, 84762306a36Sopenharmony_ci ETHTOOL_A_STATS_ETH_MAC_MAX = (__ETHTOOL_A_STATS_ETH_MAC_CNT - 1) 84862306a36Sopenharmony_ci}; 84962306a36Sopenharmony_ci 85062306a36Sopenharmony_cienum { 85162306a36Sopenharmony_ci /* 30.3.3.3 aMACControlFramesTransmitted */ 85262306a36Sopenharmony_ci ETHTOOL_A_STATS_ETH_CTRL_3_TX, 85362306a36Sopenharmony_ci /* 30.3.3.4 aMACControlFramesReceived */ 85462306a36Sopenharmony_ci ETHTOOL_A_STATS_ETH_CTRL_4_RX, 85562306a36Sopenharmony_ci /* 30.3.3.5 aUnsupportedOpcodesReceived */ 85662306a36Sopenharmony_ci ETHTOOL_A_STATS_ETH_CTRL_5_RX_UNSUP, 85762306a36Sopenharmony_ci 85862306a36Sopenharmony_ci /* add new constants above here */ 85962306a36Sopenharmony_ci __ETHTOOL_A_STATS_ETH_CTRL_CNT, 86062306a36Sopenharmony_ci ETHTOOL_A_STATS_ETH_CTRL_MAX = (__ETHTOOL_A_STATS_ETH_CTRL_CNT - 1) 86162306a36Sopenharmony_ci}; 86262306a36Sopenharmony_ci 86362306a36Sopenharmony_cienum { 86462306a36Sopenharmony_ci /* etherStatsUndersizePkts */ 86562306a36Sopenharmony_ci ETHTOOL_A_STATS_RMON_UNDERSIZE, 86662306a36Sopenharmony_ci /* etherStatsOversizePkts */ 86762306a36Sopenharmony_ci ETHTOOL_A_STATS_RMON_OVERSIZE, 86862306a36Sopenharmony_ci /* etherStatsFragments */ 86962306a36Sopenharmony_ci ETHTOOL_A_STATS_RMON_FRAG, 87062306a36Sopenharmony_ci /* etherStatsJabbers */ 87162306a36Sopenharmony_ci ETHTOOL_A_STATS_RMON_JABBER, 87262306a36Sopenharmony_ci 87362306a36Sopenharmony_ci /* add new constants above here */ 87462306a36Sopenharmony_ci __ETHTOOL_A_STATS_RMON_CNT, 87562306a36Sopenharmony_ci ETHTOOL_A_STATS_RMON_MAX = (__ETHTOOL_A_STATS_RMON_CNT - 1) 87662306a36Sopenharmony_ci}; 87762306a36Sopenharmony_ci 87862306a36Sopenharmony_ci/* MODULE */ 87962306a36Sopenharmony_ci 88062306a36Sopenharmony_cienum { 88162306a36Sopenharmony_ci ETHTOOL_A_MODULE_UNSPEC, 88262306a36Sopenharmony_ci ETHTOOL_A_MODULE_HEADER, /* nest - _A_HEADER_* */ 88362306a36Sopenharmony_ci ETHTOOL_A_MODULE_POWER_MODE_POLICY, /* u8 */ 88462306a36Sopenharmony_ci ETHTOOL_A_MODULE_POWER_MODE, /* u8 */ 88562306a36Sopenharmony_ci 88662306a36Sopenharmony_ci /* add new constants above here */ 88762306a36Sopenharmony_ci __ETHTOOL_A_MODULE_CNT, 88862306a36Sopenharmony_ci ETHTOOL_A_MODULE_MAX = (__ETHTOOL_A_MODULE_CNT - 1) 88962306a36Sopenharmony_ci}; 89062306a36Sopenharmony_ci 89162306a36Sopenharmony_ci/* Power Sourcing Equipment */ 89262306a36Sopenharmony_cienum { 89362306a36Sopenharmony_ci ETHTOOL_A_PSE_UNSPEC, 89462306a36Sopenharmony_ci ETHTOOL_A_PSE_HEADER, /* nest - _A_HEADER_* */ 89562306a36Sopenharmony_ci ETHTOOL_A_PODL_PSE_ADMIN_STATE, /* u32 */ 89662306a36Sopenharmony_ci ETHTOOL_A_PODL_PSE_ADMIN_CONTROL, /* u32 */ 89762306a36Sopenharmony_ci ETHTOOL_A_PODL_PSE_PW_D_STATUS, /* u32 */ 89862306a36Sopenharmony_ci 89962306a36Sopenharmony_ci /* add new constants above here */ 90062306a36Sopenharmony_ci __ETHTOOL_A_PSE_CNT, 90162306a36Sopenharmony_ci ETHTOOL_A_PSE_MAX = (__ETHTOOL_A_PSE_CNT - 1) 90262306a36Sopenharmony_ci}; 90362306a36Sopenharmony_ci 90462306a36Sopenharmony_cienum { 90562306a36Sopenharmony_ci ETHTOOL_A_RSS_UNSPEC, 90662306a36Sopenharmony_ci ETHTOOL_A_RSS_HEADER, 90762306a36Sopenharmony_ci ETHTOOL_A_RSS_CONTEXT, /* u32 */ 90862306a36Sopenharmony_ci ETHTOOL_A_RSS_HFUNC, /* u32 */ 90962306a36Sopenharmony_ci ETHTOOL_A_RSS_INDIR, /* binary */ 91062306a36Sopenharmony_ci ETHTOOL_A_RSS_HKEY, /* binary */ 91162306a36Sopenharmony_ci 91262306a36Sopenharmony_ci __ETHTOOL_A_RSS_CNT, 91362306a36Sopenharmony_ci ETHTOOL_A_RSS_MAX = (__ETHTOOL_A_RSS_CNT - 1), 91462306a36Sopenharmony_ci}; 91562306a36Sopenharmony_ci 91662306a36Sopenharmony_ci/* PLCA */ 91762306a36Sopenharmony_ci 91862306a36Sopenharmony_cienum { 91962306a36Sopenharmony_ci ETHTOOL_A_PLCA_UNSPEC, 92062306a36Sopenharmony_ci ETHTOOL_A_PLCA_HEADER, /* nest - _A_HEADER_* */ 92162306a36Sopenharmony_ci ETHTOOL_A_PLCA_VERSION, /* u16 */ 92262306a36Sopenharmony_ci ETHTOOL_A_PLCA_ENABLED, /* u8 */ 92362306a36Sopenharmony_ci ETHTOOL_A_PLCA_STATUS, /* u8 */ 92462306a36Sopenharmony_ci ETHTOOL_A_PLCA_NODE_CNT, /* u32 */ 92562306a36Sopenharmony_ci ETHTOOL_A_PLCA_NODE_ID, /* u32 */ 92662306a36Sopenharmony_ci ETHTOOL_A_PLCA_TO_TMR, /* u32 */ 92762306a36Sopenharmony_ci ETHTOOL_A_PLCA_BURST_CNT, /* u32 */ 92862306a36Sopenharmony_ci ETHTOOL_A_PLCA_BURST_TMR, /* u32 */ 92962306a36Sopenharmony_ci 93062306a36Sopenharmony_ci /* add new constants above here */ 93162306a36Sopenharmony_ci __ETHTOOL_A_PLCA_CNT, 93262306a36Sopenharmony_ci ETHTOOL_A_PLCA_MAX = (__ETHTOOL_A_PLCA_CNT - 1) 93362306a36Sopenharmony_ci}; 93462306a36Sopenharmony_ci 93562306a36Sopenharmony_ci/* MAC Merge (802.3) */ 93662306a36Sopenharmony_ci 93762306a36Sopenharmony_cienum { 93862306a36Sopenharmony_ci ETHTOOL_A_MM_STAT_UNSPEC, 93962306a36Sopenharmony_ci ETHTOOL_A_MM_STAT_PAD, 94062306a36Sopenharmony_ci 94162306a36Sopenharmony_ci /* aMACMergeFrameAssErrorCount */ 94262306a36Sopenharmony_ci ETHTOOL_A_MM_STAT_REASSEMBLY_ERRORS, /* u64 */ 94362306a36Sopenharmony_ci /* aMACMergeFrameSmdErrorCount */ 94462306a36Sopenharmony_ci ETHTOOL_A_MM_STAT_SMD_ERRORS, /* u64 */ 94562306a36Sopenharmony_ci /* aMACMergeFrameAssOkCount */ 94662306a36Sopenharmony_ci ETHTOOL_A_MM_STAT_REASSEMBLY_OK, /* u64 */ 94762306a36Sopenharmony_ci /* aMACMergeFragCountRx */ 94862306a36Sopenharmony_ci ETHTOOL_A_MM_STAT_RX_FRAG_COUNT, /* u64 */ 94962306a36Sopenharmony_ci /* aMACMergeFragCountTx */ 95062306a36Sopenharmony_ci ETHTOOL_A_MM_STAT_TX_FRAG_COUNT, /* u64 */ 95162306a36Sopenharmony_ci /* aMACMergeHoldCount */ 95262306a36Sopenharmony_ci ETHTOOL_A_MM_STAT_HOLD_COUNT, /* u64 */ 95362306a36Sopenharmony_ci 95462306a36Sopenharmony_ci /* add new constants above here */ 95562306a36Sopenharmony_ci __ETHTOOL_A_MM_STAT_CNT, 95662306a36Sopenharmony_ci ETHTOOL_A_MM_STAT_MAX = (__ETHTOOL_A_MM_STAT_CNT - 1) 95762306a36Sopenharmony_ci}; 95862306a36Sopenharmony_ci 95962306a36Sopenharmony_cienum { 96062306a36Sopenharmony_ci ETHTOOL_A_MM_UNSPEC, 96162306a36Sopenharmony_ci ETHTOOL_A_MM_HEADER, /* nest - _A_HEADER_* */ 96262306a36Sopenharmony_ci ETHTOOL_A_MM_PMAC_ENABLED, /* u8 */ 96362306a36Sopenharmony_ci ETHTOOL_A_MM_TX_ENABLED, /* u8 */ 96462306a36Sopenharmony_ci ETHTOOL_A_MM_TX_ACTIVE, /* u8 */ 96562306a36Sopenharmony_ci ETHTOOL_A_MM_TX_MIN_FRAG_SIZE, /* u32 */ 96662306a36Sopenharmony_ci ETHTOOL_A_MM_RX_MIN_FRAG_SIZE, /* u32 */ 96762306a36Sopenharmony_ci ETHTOOL_A_MM_VERIFY_ENABLED, /* u8 */ 96862306a36Sopenharmony_ci ETHTOOL_A_MM_VERIFY_STATUS, /* u8 */ 96962306a36Sopenharmony_ci ETHTOOL_A_MM_VERIFY_TIME, /* u32 */ 97062306a36Sopenharmony_ci ETHTOOL_A_MM_MAX_VERIFY_TIME, /* u32 */ 97162306a36Sopenharmony_ci ETHTOOL_A_MM_STATS, /* nest - _A_MM_STAT_* */ 97262306a36Sopenharmony_ci 97362306a36Sopenharmony_ci /* add new constants above here */ 97462306a36Sopenharmony_ci __ETHTOOL_A_MM_CNT, 97562306a36Sopenharmony_ci ETHTOOL_A_MM_MAX = (__ETHTOOL_A_MM_CNT - 1) 97662306a36Sopenharmony_ci}; 97762306a36Sopenharmony_ci 97862306a36Sopenharmony_ci/* generic netlink info */ 97962306a36Sopenharmony_ci#define ETHTOOL_GENL_NAME "ethtool" 98062306a36Sopenharmony_ci#define ETHTOOL_GENL_VERSION 1 98162306a36Sopenharmony_ci 98262306a36Sopenharmony_ci#define ETHTOOL_MCGRP_MONITOR_NAME "monitor" 98362306a36Sopenharmony_ci 98462306a36Sopenharmony_ci#endif /* _UAPI_LINUX_ETHTOOL_NETLINK_H_ */ 985