# SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause) --- name: ethtool protocol: genetlink-legacy doc: Partial family for Ethtool Netlink. uapi-header: linux/ethtool_netlink_generated.h c-family-name: ethtool-genl-name c-version-name: ethtool-genl-version definitions: - name: udp-tunnel-type enum-name: type: enum entries: [vxlan, geneve, vxlan-gpe] enum-cnt-name: __ethtool-udp-tunnel-type-cnt render-max: true - name: stringset type: enum entries: [] header: linux/ethtool.h # skip rendering, no actual definition - name: header-flags type: flags name-prefix: ethtool-flag- doc: common ethtool header flags entries: - name: compact-bitsets doc: use compact bitsets in reply - name: omit-reply doc: provide optional reply for SET or ACT requests - name: stats doc: request statistics, if supported by the driver - name: module-fw-flash-status type: enum doc: plug-in module firmware flashing status header: linux/ethtool.h entries: - name: started doc: The firmware flashing process has started. - name: in-progress doc: The firmware flashing process is in progress. - name: completed doc: The firmware flashing process was completed successfully. - name: error doc: The firmware flashing process was stopped due to an error. - name: c33-pse-ext-state doc: | "groups of PSE extended states functions. IEEE 802.3-2022 33.2.4.4 Variables" type: enum name-prefix: ethtool-c33-pse-ext-state- header: linux/ethtool.h entries: - name: none doc: none - name: error-condition doc: Group of error_condition states - name: mr-mps-valid doc: Group of mr_mps_valid states - name: mr-pse-enable doc: Group of mr_pse_enable states - name: option-detect-ted doc: Group of option_detect_ted states - name: option-vport-lim doc: Group of option_vport_lim states - name: ovld-detected doc: Group of ovld_detected states - name: power-not-available doc: Group of power_not_available states - name: short-detected doc: Group of short_detected states - name: phy-upstream-type enum-name: phy-upstream header: linux/ethtool.h type: enum name-prefix: phy-upstream entries: [mac, phy] - name: tcp-data-split type: enum entries: [unknown, disabled, enabled] - name: hwtstamp-source doc: Source of the hardware timestamp enum-name: hwtstamp-source name-prefix: hwtstamp-source- type: enum entries: - name: netdev doc: | Hardware timestamp comes from a MAC or a device which has MAC and PHY integrated value: 1 - name: phylib doc: | Hardware timestamp comes from one PHY device of the network topology - name: pse-event doc: PSE event list for the PSE controller type: flags name-prefix: ethtool- entries: - name: pse-event-over-current doc: PSE output current is too high - name: pse-event-over-temp doc: PSE in over temperature state - name: c33-pse-event-detection doc: | detection process occur on the PSE. IEEE 802.3-2022 33.2.5 and 145.2.6 PSE detection of PDs. IEEE 802.3-202 30.9.1.1.5 aPSEPowerDetectionStatus - name: c33-pse-event-classification doc: | classification process occur on the PSE. IEEE 802.3-2022 33.2.6 and 145.2.8 classification of PDs mutual identification. IEEE 802.3-2022 30.9.1.1.8 aPSEPowerClassification. - name: c33-pse-event-disconnection doc: | PD has been disconnected on the PSE. IEEE 802.3-2022 33.3.8 and 145.3.9 PD Maintain Power Signature. IEEE 802.3-2022 33.5.1.2.9 MPS Absent. IEEE 802.3-2022 30.9.1.1.20 aPSEMPSAbsentCounter. - name: pse-event-over-budget doc: PSE turned off due to over budget situation - name: pse-event-sw-pw-control-error doc: PSE faced an error managing the power control from software - name: input-xfrm doc: RSS hash function transformations. type: flags enum-name: name-prefix: rxh-xfrm- header: linux/ethtool.h entries: - name: sym-xor doc: >- XOR the corresponding source and destination fields of each specified protocol. Both copies of the XOR'ed fields are fed into the RSS and RXHASH calculation. Note that this XORing reduces the input set entropy and could be exploited to reduce the RSS queue spread. - name: sym-or-xor doc: >- Similar to SYM_XOR, except that one copy of the XOR'ed fields is replaced by an OR of the same fields. - name: rxfh-fields name-prefix: rxh- enum-name: header: linux/ethtool.h type: flags entries: - name: l2da value: 1 - name: vlan - name: l3-proto - name: ip-src - name: ip-dst - name: l4-b-0-1 doc: src port in case of TCP/UDP/SCTP - name: l4-b-2-3 doc: dst port in case of TCP/UDP/SCTP - name: gtp-teid - name: discard value: 31 attribute-sets: - name: header attr-cnt-name: __ethtool-a-header-cnt attributes: - name: unspec type: unused value: 0 - name: dev-index type: u32 - name: dev-name type: string - name: flags type: u32 enum: header-flags - name: phy-index type: u32 - name: bitset-bit attr-cnt-name: __ethtool-a-bitset-bit-cnt attributes: - name: unspec type: unused value: 0 - name: index type: u32 - name: name type: string - name: value type: flag - name: bitset-bits attr-cnt-name: __ethtool-a-bitset-bits-cnt attributes: - name: unspec type: unused value: 0 - name: bit type: nest multi-attr: true nested-attributes: bitset-bit - name: bitset attr-cnt-name: __ethtool-a-bitset-cnt attributes: - name: unspec type: unused value: 0 - name: nomask type: flag - name: size type: u32 - name: bits type: nest nested-attributes: bitset-bits - name: value type: binary - name: mask type: binary - name: string attr-cnt-name: __ethtool-a-string-cnt attributes: - name: unspec type: unused value: 0 - name: index type: u32 - name: value type: string - name: strings attr-cnt-name: __ethtool-a-strings-cnt attributes: - name: unspec type: unused value: 0 - name: unspec type: unused value: 0 - name: string type: nest multi-attr: true nested-attributes: string - name: stringset attr-cnt-name: __ethtool-a-stringset-cnt attributes: - name: unspec type: unused value: 0 - name: id type: u32 - name: count type: u32 - name: strings type: nest multi-attr: true nested-attributes: strings - name: stringsets attr-cnt-name: __ethtool-a-stringsets-cnt attributes: - name: unspec type: unused value: 0 - name: stringset type: nest multi-attr: true nested-attributes: stringset - name: strset attr-cnt-name: __ethtool-a-strset-cnt attributes: - name: unspec type: unused value: 0 - name: header type: nest nested-attributes: header - name: stringsets type: nest nested-attributes: stringsets - name: counts-only type: flag - name: privflags attr-cnt-name: __ethtool-a-privflags-cnt attributes: - name: unspec type: unused value: 0 - name: header type: nest nested-attributes: header - name: flags type: nest nested-attributes: bitset - name: rings attr-cnt-name: __ethtool-a-rings-cnt attributes: - name: unspec type: unused value: 0 - name: header type: nest nested-attributes: header - name: rx-max type: u32 - name: rx-mini-max type: u32 - name: rx-jumbo-max type: u32 - name: tx-max type: u32 - name: rx type: u32 - name: rx-mini type: u32 - name: rx-jumbo type: u32 - name: tx type: u32 - name: rx-buf-len type: u32 - name: tcp-data-split type: u8 enum: tcp-data-split - name: cqe-size type: u32 - name: tx-push type: u8 - name: rx-push type: u8 - name: tx-push-buf-len type: u32 - name: tx-push-buf-len-max type: u32 - name: hds-thresh type: u32 - name: hds-thresh-max type: u32 - name: mm-stat attr-cnt-name: __ethtool-a-mm-stat-cnt doc: MAC Merge (802.3) attributes: - name: unspec type: unused value: 0 - name: pad type: pad - name: reassembly-errors doc: aMACMergeFrameAssErrorCount type: u64 - name: smd-errors doc: aMACMergeFrameSmdErrorCount type: u64 - name: reassembly-ok doc: aMACMergeFrameAssOkCount type: u64 - name: rx-frag-count doc: aMACMergeFragCountRx type: u64 - name: tx-frag-count doc: aMACMergeFragCountTx type: u64 - name: hold-count doc: aMACMergeHoldCount type: u64 - name: mm attr-cnt-name: __ethtool-a-mm-cnt attributes: - name: unspec type: unused value: 0 - name: header type: nest nested-attributes: header - name: pmac-enabled type: u8 - name: tx-enabled type: u8 - name: tx-active type: u8 - name: tx-min-frag-size type: u32 - name: rx-min-frag-size type: u32 - name: verify-enabled type: u8 - name: verify-status type: u8 - name: verify-time type: u32 - name: max-verify-time type: u32 - name: stats type: nest nested-attributes: mm-stat - name: linkinfo attr-cnt-name: __ethtool-a-linkinfo-cnt attributes: - name: unspec type: unused value: 0 - name: header type: nest nested-attributes: header - name: port type: u8 - name: phyaddr type: u8 - name: tp-mdix type: u8 - name: tp-mdix-ctrl type: u8 - name: transceiver type: u8 - name: linkmodes attr-cnt-name: __ethtool-a-linkmodes-cnt attributes: - name: unspec type: unused value: 0 - name: header type: nest nested-attributes: header - name: autoneg type: u8 - name: ours type: nest nested-attributes: bitset - name: peer type: nest nested-attributes: bitset - name: speed type: u32 - name: duplex type: u8 - name: master-slave-cfg type: u8 - name: master-slave-state type: u8 - name: lanes type: u32 - name: rate-matching type: u8 - name: linkstate attr-cnt-name: __ethtool-a-linkstate-cnt attributes: - name: unspec type: unused value: 0 - name: header type: nest nested-attributes: header - name: link type: u8 - name: sqi type: u32 - name: sqi-max type: u32 - name: ext-state type: u8 - name: ext-substate type: u8 - name: ext-down-cnt type: u32 - name: debug attr-cnt-name: __ethtool-a-debug-cnt attributes: - name: unspec type: unused value: 0 - name: header type: nest nested-attributes: header - name: msgmask type: nest nested-attributes: bitset - name: wol attr-cnt-name: __ethtool-a-wol-cnt attributes: - name: unspec type: unused value: 0 - name: header type: nest nested-attributes: header - name: modes type: nest nested-attributes: bitset - name: sopass type: binary - name: features attr-cnt-name: __ethtool-a-features-cnt attributes: - name: unspec type: unused value: 0 - name: header type: nest nested-attributes: header - name: hw type: nest nested-attributes: bitset - name: wanted type: nest nested-attributes: bitset - name: active type: nest nested-attributes: bitset - name: nochange type: nest nested-attributes: bitset - name: channels attr-cnt-name: __ethtool-a-channels-cnt attributes: - name: unspec type: unused value: 0 - name: header type: nest nested-attributes: header - name: rx-max type: u32 - name: tx-max type: u32 - name: other-max type: u32 - name: combined-max type: u32 - name: rx-count type: u32 - name: tx-count type: u32 - name: other-count type: u32 - name: combined-count type: u32 - name: irq-moderation attr-cnt-name: __ethtool-a-irq-moderation-cnt attributes: - name: unspec type: unused value: 0 - name: usec type: u32 - name: pkts type: u32 - name: comps type: u32 - name: profile attr-cnt-name: __ethtool-a-profile-cnt attributes: - name: unspec type: unused value: 0 - name: irq-moderation type: nest multi-attr: true nested-attributes: irq-moderation - name: coalesce attr-cnt-name: __ethtool-a-coalesce-cnt attributes: - name: unspec type: unused value: 0 - name: header type: nest nested-attributes: header - name: rx-usecs type: u32 - name: rx-max-frames type: u32 - name: rx-usecs-irq type: u32 - name: rx-max-frames-irq type: u32 - name: tx-usecs type: u32 - name: tx-max-frames type: u32 - name: tx-usecs-irq type: u32 - name: tx-max-frames-irq type: u32 - name: stats-block-usecs type: u32 - name: use-adaptive-rx type: u8 - name: use-adaptive-tx type: u8 - name: pkt-rate-low type: u32 - name: rx-usecs-low type: u32 - name: rx-max-frames-low type: u32 - name: tx-usecs-low type: u32 - name: tx-max-frames-low type: u32 - name: pkt-rate-high type: u32 - name: rx-usecs-high type: u32 - name: rx-max-frames-high type: u32 - name: tx-usecs-high type: u32 - name: tx-max-frames-high type: u32 - name: rate-sample-interval type: u32 - name: use-cqe-mode-tx type: u8 - name: use-cqe-mode-rx type: u8 - name: tx-aggr-max-bytes type: u32 - name: tx-aggr-max-frames type: u32 - name: tx-aggr-time-usecs type: u32 - name: rx-profile type: nest nested-attributes: profile - name: tx-profile type: nest nested-attributes: profile - name: pause-stat attr-cnt-name: __ethtool-a-pause-stat-cnt attributes: - name: unspec type: unused value: 0 - name: pad type: pad - name: tx-frames type: u64 - name: rx-frames type: u64 - name: pause attr-cnt-name: __ethtool-a-pause-cnt attributes: - name: unspec type: unused value: 0 - name: header type: nest nested-attributes: header - name: autoneg type: u8 - name: rx type: u8 - name: tx type: u8 - name: stats type: nest nested-attributes: pause-stat - name: stats-src type: u32 - name: eee attr-cnt-name: __ethtool-a-eee-cnt attributes: - name: unspec type: unused value: 0 - name: header type: nest nested-attributes: header - name: modes-ours type: nest nested-attributes: bitset - name: modes-peer type: nest nested-attributes: bitset - name: active type: u8 - name: enabled type: u8 - name: tx-lpi-enabled type: u8 - name: tx-lpi-timer type: u32 - name: ts-stat attr-cnt-name: __ethtool-a-ts-stat-cnt attributes: - name: unspec type: unused value: 0 - name: tx-pkts type: uint - name: tx-lost type: uint - name: tx-err type: uint - name: tx-onestep-pkts-unconfirmed type: uint - name: ts-hwtstamp-provider attr-cnt-name: __ethtool-a-ts-hwtstamp-provider-cnt attributes: - name: unspec type: unused value: 0 - name: index type: u32 - name: qualifier type: u32 - name: tsinfo attr-cnt-name: __ethtool-a-tsinfo-cnt attributes: - name: unspec type: unused value: 0 - name: header type: nest nested-attributes: header - name: timestamping type: nest nested-attributes: bitset - name: tx-types type: nest nested-attributes: bitset - name: rx-filters type: nest nested-attributes: bitset - name: phc-index type: u32 - name: stats type: nest nested-attributes: ts-stat - name: hwtstamp-provider type: nest nested-attributes: ts-hwtstamp-provider - name: hwtstamp-source type: u32 enum: hwtstamp-source - name: hwtstamp-phyindex type: u32 - name: cable-result attr-cnt-name: __ethtool-a-cable-result-cnt attributes: - name: unspec type: unused value: 0 - name: pair doc: ETHTOOL_A_CABLE_PAIR type: u8 - name: code doc: ETHTOOL_A_CABLE_RESULT_CODE type: u8 - name: src doc: ETHTOOL_A_CABLE_INF_SRC type: u32 - name: cable-fault-length attr-cnt-name: __ethtool-a-cable-fault-length-cnt attributes: - name: unspec type: unused value: 0 - name: pair type: u8 - name: cm type: u32 - name: src type: u32 - name: cable-nest attr-cnt-name: __ethtool-a-cable-nest-cnt attributes: - name: unspec type: unused value: 0 - name: result type: nest nested-attributes: cable-result - name: fault-length type: nest nested-attributes: cable-fault-length - name: cable-test attr-cnt-name: __ethtool-a-cable-test-cnt attributes: - name: unspec type: unused value: 0 - name: header type: nest nested-attributes: header - name: cable-test-ntf attr-cnt-name: __ethtool-a-cable-test-ntf-cnt attributes: - name: unspec type: unused value: 0 - name: header type: nest nested-attributes: header - name: status doc: _STARTED/_COMPLETE type: u8 - name: nest type: nest nested-attributes: cable-nest - name: cable-test-tdr-cfg attr-cnt-name: __ethtool-a-cable-test-tdr-cfg-cnt attributes: - name: unspec type: unused value: 0 - name: first type: u32 - name: last type: u32 - name: step type: u32 - name: pair type: u8 - name: cable-test-tdr-ntf attr-cnt-name: __ethtool-a-cable-test-tdr-ntf-cnt attributes: - name: unspec type: unused value: 0 - name: header type: nest nested-attributes: header - name: status type: u8 - name: nest type: nest nested-attributes: cable-nest - name: cable-test-tdr attr-cnt-name: __ethtool-a-cable-test-tdr-cnt attributes: - name: unspec type: unused value: 0 - name: header type: nest nested-attributes: header - name: cfg type: nest nested-attributes: cable-test-tdr-cfg - name: tunnel-udp-entry attr-cnt-name: __ethtool-a-tunnel-udp-entry-cnt attributes: - name: unspec type: unused value: 0 - name: port type: u16 byte-order: big-endian - name: type type: u32 enum: udp-tunnel-type - name: tunnel-udp-table attr-cnt-name: __ethtool-a-tunnel-udp-table-cnt attributes: - name: unspec type: unused value: 0 - name: size type: u32 - name: types type: nest nested-attributes: bitset - name: entry type: nest multi-attr: true nested-attributes: tunnel-udp-entry - name: tunnel-udp attr-cnt-name: __ethtool-a-tunnel-udp-cnt attributes: - name: unspec type: unused value: 0 - name: table type: nest nested-attributes: tunnel-udp-table - name: tunnel-info attr-cnt-name: __ethtool-a-tunnel-info-cnt attributes: - name: unspec type: unused value: 0 - name: header type: nest nested-attributes: header - name: udp-ports type: nest nested-attributes: tunnel-udp - name: fec-stat attr-cnt-name: __ethtool-a-fec-stat-cnt attributes: - name: unspec type: unused value: 0 - name: pad type: pad - name: corrected type: binary sub-type: u64 - name: uncorr type: binary sub-type: u64 - name: corr-bits type: binary sub-type: u64 - name: fec attr-cnt-name: __ethtool-a-fec-cnt attributes: - name: unspec type: unused value: 0 - name: header type: nest nested-attributes: header - name: modes type: nest nested-attributes: bitset - name: auto type: u8 - name: active type: u32 - name: stats type: nest nested-attributes: fec-stat - name: module-eeprom attr-cnt-name: __ethtool-a-module-eeprom-cnt attributes: - name: unspec type: unused value: 0 - name: header type: nest nested-attributes: header - name: offset type: u32 - name: length type: u32 - name: page type: u8 - name: bank type: u8 - name: i2c-address type: u8 - name: data type: binary - name: stats-grp attr-cnt-name: __ethtool-a-stats-grp-cnt attributes: - name: unspec type: unused value: 0 - name: pad type: pad - name: id type: u32 - name: ss-id type: u32 - name: stat type: u64 type-value: [id] - name: hist-rx type: nest nested-attributes: stats-grp-hist - name: hist-tx type: nest nested-attributes: stats-grp-hist - name: hist-bkt-low type: u32 - name: hist-bkt-hi type: u32 - name: hist-val type: u64 - name: stats-grp-hist subset-of: stats-grp attributes: - name: hist-bkt-low - name: hist-bkt-hi - name: hist-val - name: stats attr-cnt-name: __ethtool-a-stats-cnt attributes: - name: unspec type: unused value: 0 - name: pad type: pad - name: header type: nest nested-attributes: header - name: groups type: nest nested-attributes: bitset - name: grp type: nest nested-attributes: stats-grp - name: src type: u32 - name: phc-vclocks attr-cnt-name: __ethtool-a-phc-vclocks-cnt attributes: - name: unspec type: unused value: 0 - name: header type: nest nested-attributes: header - name: num type: u32 - name: index type: binary sub-type: s32 - name: module attr-cnt-name: __ethtool-a-module-cnt attributes: - name: unspec type: unused value: 0 - name: header type: nest nested-attributes: header - name: power-mode-policy type: u8 - name: power-mode type: u8 - name: c33-pse-pw-limit attr-cnt-name: __ethtool-a-c33-pse-pw-limit-cnt attr-max-name: __ethtool-a-c33-pse-pw-limit-max attributes: - name: unspec type: unused value: 0 - name: min type: u32 - name: max type: u32 - name: pse attr-cnt-name: __ethtool-a-pse-cnt attributes: - name: unspec type: unused value: 0 - name: header type: nest nested-attributes: header - name: podl-pse-admin-state type: u32 name-prefix: ethtool-a- - name: podl-pse-admin-control type: u32 name-prefix: ethtool-a- - name: podl-pse-pw-d-status type: u32 name-prefix: ethtool-a- - name: c33-pse-admin-state type: u32 name-prefix: ethtool-a- - name: c33-pse-admin-control type: u32 name-prefix: ethtool-a- - name: c33-pse-pw-d-status type: u32 name-prefix: ethtool-a- - name: c33-pse-pw-class type: u32 name-prefix: ethtool-a- - name: c33-pse-actual-pw type: u32 name-prefix: ethtool-a- - name: c33-pse-ext-state type: u32 name-prefix: ethtool-a- enum: c33-pse-ext-state - name: c33-pse-ext-substate type: u32 name-prefix: ethtool-a- - name: c33-pse-avail-pw-limit type: u32 name-prefix: ethtool-a- - name: c33-pse-pw-limit-ranges name-prefix: ethtool-a- type: nest multi-attr: true nested-attributes: c33-pse-pw-limit - name: pse-pw-d-id type: u32 name-prefix: ethtool-a- - name: pse-prio-max type: u32 name-prefix: ethtool-a- - name: pse-prio type: u32 name-prefix: ethtool-a- - name: flow attr-cnt-name: --ethtool-a-flow-cnt doc: | Flow types, corresponding to those defined in the old ethtool header for RXFH and RXNFC as ${PROTO}_FLOW. The values are not matching the old ones to avoid carrying into Netlink the IP_USER_FLOW vs IPV4_FLOW vs IPV4_USER_FLOW confusion. attributes: - name: ether type: uint enum: rxfh-fields - name: ip4 type: uint enum: rxfh-fields - name: ip6 type: uint enum: rxfh-fields - name: tcp4 type: uint enum: rxfh-fields - name: tcp6 type: uint enum: rxfh-fields - name: udp4 type: uint enum: rxfh-fields - name: udp6 type: uint enum: rxfh-fields - name: sctp4 type: uint enum: rxfh-fields - name: sctp6 type: uint enum: rxfh-fields - name: ah4 type: uint enum: rxfh-fields - name: ah6 type: uint enum: rxfh-fields - name: esp4 type: uint enum: rxfh-fields - name: esp6 type: uint enum: rxfh-fields - name: ah-esp4 type: uint enum: rxfh-fields - name: ah-esp6 type: uint enum: rxfh-fields - name: gtpu4 type: uint enum: rxfh-fields - name: gtpu6 type: uint enum: rxfh-fields - name: gtpc4 type: uint enum: rxfh-fields - name: gtpc6 type: uint enum: rxfh-fields - name: gtpc-teid4 type: uint enum: rxfh-fields - name: gtpc-teid6 type: uint enum: rxfh-fields - name: gtpu-eh4 type: uint enum: rxfh-fields - name: gtpu-eh6 type: uint enum: rxfh-fields - name: gtpu-ul4 type: uint enum: rxfh-fields - name: gtpu-ul6 type: uint enum: rxfh-fields - name: gtpu-dl4 type: uint enum: rxfh-fields - name: gtpu-dl6 type: uint enum: rxfh-fields - name: rss attr-cnt-name: __ethtool-a-rss-cnt attributes: - name: unspec type: unused value: 0 - name: header type: nest nested-attributes: header - name: context type: u32 - name: hfunc type: u32 - name: indir type: binary sub-type: u32 - name: hkey type: binary - name: input-xfrm type: u32 enum: input-xfrm - name: start-context type: u32 - name: flow-hash type: nest nested-attributes: flow - name: plca attr-cnt-name: __ethtool-a-plca-cnt attributes: - name: unspec type: unused value: 0 - name: header type: nest nested-attributes: header - name: version type: u16 - name: enabled type: u8 - name: status type: u8 - name: node-cnt type: u32 - name: node-id type: u32 - name: to-tmr type: u32 - name: burst-cnt type: u32 - name: burst-tmr type: u32 - name: module-fw-flash attr-cnt-name: __ethtool-a-module-fw-flash-cnt attributes: - name: unspec type: unused value: 0 - name: header type: nest nested-attributes: header - name: file-name type: string - name: password type: u32 - name: status type: u32 enum: module-fw-flash-status - name: status-msg type: string - name: done type: uint - name: total type: uint - name: phy attr-cnt-name: __ethtool-a-phy-cnt attributes: - name: unspec type: unused value: 0 - name: header type: nest nested-attributes: header - name: index type: u32 - name: drvname type: string - name: name type: string - name: upstream-type type: u32 enum: phy-upstream-type - name: upstream-index type: u32 - name: upstream-sfp-name type: string - name: downstream-sfp-name type: string - name: tsconfig attr-cnt-name: __ethtool-a-tsconfig-cnt attributes: - name: unspec type: unused value: 0 - name: header type: nest nested-attributes: header - name: hwtstamp-provider type: nest nested-attributes: ts-hwtstamp-provider - name: tx-types type: nest nested-attributes: bitset - name: rx-filters type: nest nested-attributes: bitset - name: hwtstamp-flags type: nest nested-attributes: bitset - name: pse-ntf attr-cnt-name: --ethtool-a-pse-ntf-cnt attributes: - name: header type: nest nested-attributes: header - name: events type: uint enum: pse-event doc: List of events reported by the PSE controller operations: enum-model: directional name-prefix: ethtool-msg- list: - name: strset-get doc: Get string set from the kernel. attribute-set: strset do: &strset-get-op request: attributes: - header - stringsets - counts-only reply: attributes: - header - stringsets dump: *strset-get-op - name: linkinfo-get doc: Get link info. attribute-set: linkinfo do: &linkinfo-get-op request: attributes: - header reply: attributes: &linkinfo - header - port - phyaddr - tp-mdix - tp-mdix-ctrl - transceiver dump: *linkinfo-get-op - name: linkinfo-set doc: Set link info. attribute-set: linkinfo do: request: attributes: *linkinfo - name: linkinfo-ntf doc: Notification for change in link info. notify: linkinfo-get - name: linkmodes-get doc: Get link modes. attribute-set: linkmodes do: &linkmodes-get-op request: attributes: - header reply: attributes: &linkmodes - header - autoneg - ours - peer - speed - duplex - master-slave-cfg - master-slave-state - lanes - rate-matching dump: *linkmodes-get-op - name: linkmodes-set doc: Set link modes. attribute-set: linkmodes do: request: attributes: *linkmodes - name: linkmodes-ntf doc: Notification for change in link modes. notify: linkmodes-get - name: linkstate-get doc: Get link state. attribute-set: linkstate do: &linkstate-get-op request: attributes: - header reply: attributes: - header - link - sqi - sqi-max - ext-state - ext-substate - ext-down-cnt dump: *linkstate-get-op - name: debug-get doc: Get debug message mask. attribute-set: debug do: &debug-get-op request: attributes: - header reply: attributes: &debug - header - msgmask dump: *debug-get-op - name: debug-set doc: Set debug message mask. attribute-set: debug do: request: attributes: *debug - name: debug-ntf doc: Notification for change in debug message mask. notify: debug-get - name: wol-get doc: Get WOL params. attribute-set: wol do: &wol-get-op request: attributes: - header reply: attributes: &wol - header - modes - sopass dump: *wol-get-op - name: wol-set doc: Set WOL params. attribute-set: wol do: request: attributes: *wol - name: wol-ntf doc: Notification for change in WOL params. notify: wol-get - name: features-get doc: Get features. attribute-set: features do: &feature-get-op request: attributes: - header reply: attributes: &feature - header # User-changeable features. - hw # User-requested features. - wanted # Currently active features. - active # Unchangeable features. - nochange dump: *feature-get-op - name: features-set doc: Set features. attribute-set: features do: &feature-set-op request: attributes: *feature reply: attributes: *feature - name: features-ntf doc: Notification for change in features. notify: features-get - name: privflags-get doc: Get device private flags. attribute-set: privflags do: &privflag-get-op request: attributes: - header reply: attributes: &privflag - header - flags dump: *privflag-get-op - name: privflags-set doc: Set device private flags. attribute-set: privflags do: request: attributes: *privflag - name: privflags-ntf doc: Notification for change in device private flags. notify: privflags-get - name: rings-get doc: Get ring params. attribute-set: rings do: &ring-get-op request: attributes: - header reply: attributes: &ring - header - rx-max - rx-mini-max - rx-jumbo-max - tx-max - rx - rx-mini - rx-jumbo - tx - rx-buf-len - tcp-data-split - cqe-size - tx-push - rx-push - tx-push-buf-len - tx-push-buf-len-max - hds-thresh - hds-thresh-max dump: *ring-get-op - name: rings-set doc: Set ring params. attribute-set: rings do: request: attributes: *ring - name: rings-ntf doc: Notification for change in ring params. notify: rings-get - name: channels-get doc: Get channel params. attribute-set: channels do: &channel-get-op request: attributes: - header reply: attributes: &channel - header - rx-max - tx-max - other-max - combined-max - rx-count - tx-count - other-count - combined-count dump: *channel-get-op - name: channels-set doc: Set channel params. attribute-set: channels do: request: attributes: *channel - name: channels-ntf doc: Notification for change in channel params. notify: channels-get - name: coalesce-get doc: Get coalesce params. attribute-set: coalesce do: &coalesce-get-op request: attributes: - header reply: attributes: &coalesce - header - rx-usecs - rx-max-frames - rx-usecs-irq - rx-max-frames-irq - tx-usecs - tx-max-frames - tx-usecs-irq - tx-max-frames-irq - stats-block-usecs - use-adaptive-rx - use-adaptive-tx - pkt-rate-low - rx-usecs-low - rx-max-frames-low - tx-usecs-low - tx-max-frames-low - pkt-rate-high - rx-usecs-high - rx-max-frames-high - tx-usecs-high - tx-max-frames-high - rate-sample-interval - use-cqe-mode-tx - use-cqe-mode-rx - tx-aggr-max-bytes - tx-aggr-max-frames - tx-aggr-time-usecs - rx-profile - tx-profile dump: *coalesce-get-op - name: coalesce-set doc: Set coalesce params. attribute-set: coalesce do: request: attributes: *coalesce - name: coalesce-ntf doc: Notification for change in coalesce params. notify: coalesce-get - name: pause-get doc: Get pause params. attribute-set: pause do: &pause-get-op request: attributes: - header reply: attributes: &pause - header - autoneg - rx - tx - stats - stats-src dump: *pause-get-op - name: pause-set doc: Set pause params. attribute-set: pause do: request: attributes: *pause - name: pause-ntf doc: Notification for change in pause params. notify: pause-get - name: eee-get doc: Get eee params. attribute-set: eee do: &eee-get-op request: attributes: - header reply: attributes: &eee - header - modes-ours - modes-peer - active - enabled - tx-lpi-enabled - tx-lpi-timer dump: *eee-get-op - name: eee-set doc: Set eee params. attribute-set: eee do: request: attributes: *eee - name: eee-ntf doc: Notification for change in eee params. notify: eee-get - name: tsinfo-get doc: Get tsinfo params. attribute-set: tsinfo do: &tsinfo-get-op request: attributes: - header - hwtstamp-provider reply: attributes: - header - timestamping - tx-types - rx-filters - phc-index - stats - hwtstamp-provider - hwtstamp-source - hwtstamp-phyindex dump: *tsinfo-get-op - name: cable-test-act doc: Cable test. attribute-set: cable-test do: request: attributes: - header - name: cable-test-ntf doc: Cable test notification. attribute-set: cable-test-ntf event: attributes: - header - status - name: cable-test-tdr-act doc: Cable test TDR. attribute-set: cable-test-tdr do: request: attributes: - header - name: cable-test-tdr-ntf doc: Cable test TDR notification. attribute-set: cable-test-tdr-ntf event: attributes: - header - status - nest - name: tunnel-info-get doc: Get tsinfo params. attribute-set: tunnel-info do: &tunnel-info-get-op request: attributes: - header reply: attributes: - header - udp-ports dump: *tunnel-info-get-op - name: fec-get doc: Get FEC params. attribute-set: fec do: &fec-get-op request: attributes: - header reply: attributes: &fec - header - modes - auto - active - stats dump: *fec-get-op - name: fec-set doc: Set FEC params. attribute-set: fec do: request: attributes: *fec - name: fec-ntf doc: Notification for change in FEC params. notify: fec-get - name: module-eeprom-get doc: Get module EEPROM params. attribute-set: module-eeprom do: &module-eeprom-get-op request: attributes: - header reply: attributes: - header - offset - length - page - bank - i2c-address - data dump: *module-eeprom-get-op - name: stats-get doc: Get statistics. attribute-set: stats do: &stats-get-op request: attributes: - header - groups reply: attributes: - header - groups - grp - src dump: *stats-get-op - name: phc-vclocks-get doc: Get PHC VCLOCKs. attribute-set: phc-vclocks do: &phc-vclocks-get-op request: attributes: - header reply: attributes: - header - num dump: *phc-vclocks-get-op - name: module-get doc: Get module params. attribute-set: module do: &module-get-op request: attributes: - header reply: attributes: &module - header - power-mode-policy - power-mode dump: *module-get-op - name: module-set doc: Set module params. attribute-set: module do: request: attributes: *module - name: module-ntf doc: Notification for change in module params. notify: module-get - name: pse-get doc: Get Power Sourcing Equipment params. attribute-set: pse do: &pse-get-op request: attributes: - header reply: attributes: - header - podl-pse-admin-state - podl-pse-admin-control - podl-pse-pw-d-status - c33-pse-admin-state - c33-pse-admin-control - c33-pse-pw-d-status - c33-pse-pw-class - c33-pse-actual-pw - c33-pse-ext-state - c33-pse-ext-substate - c33-pse-avail-pw-limit - c33-pse-pw-limit-ranges - pse-pw-d-id - pse-prio-max - pse-prio dump: *pse-get-op - name: pse-set doc: Set Power Sourcing Equipment params. attribute-set: pse do: request: attributes: - header - podl-pse-admin-control - c33-pse-admin-control - c33-pse-avail-pw-limit - pse-prio - name: rss-get doc: Get RSS params. attribute-set: rss do: request: attributes: - header - context reply: &rss-reply attributes: - header - context - hfunc - indir - hkey - input-xfrm - flow-hash dump: request: attributes: - header - start-context reply: *rss-reply - name: plca-get-cfg doc: Get PLCA params. attribute-set: plca do: &plca-get-op request: attributes: - header reply: attributes: &plca - header - version - enabled - status - node-cnt - node-id - to-tmr - burst-cnt - burst-tmr dump: *plca-get-op - name: plca-set-cfg doc: Set PLCA params. attribute-set: plca do: request: attributes: *plca - name: plca-get-status doc: Get PLCA status params. attribute-set: plca do: &plca-get-status-op request: attributes: - header reply: attributes: *plca dump: *plca-get-status-op - name: plca-ntf doc: Notification for change in PLCA params. notify: plca-get-cfg - name: mm-get doc: Get MAC Merge configuration and state attribute-set: mm do: &mm-get-op request: attributes: - header reply: attributes: - header - pmac-enabled - tx-enabled - tx-active - tx-min-frag-size - rx-min-frag-size - verify-enabled - verify-time - max-verify-time - stats dump: *mm-get-op - name: mm-set doc: Set MAC Merge configuration attribute-set: mm do: request: attributes: - header - verify-enabled - verify-time - tx-enabled - pmac-enabled - tx-min-frag-size - name: mm-ntf doc: Notification for change in MAC Merge configuration. notify: mm-get - name: module-fw-flash-act doc: Flash transceiver module firmware. attribute-set: module-fw-flash do: request: attributes: - header - file-name - password - name: module-fw-flash-ntf doc: Notification for firmware flashing progress and status. attribute-set: module-fw-flash event: attributes: - header - status - status-msg - done - total - name: phy-get doc: Get PHY devices attached to an interface attribute-set: phy do: &phy-get-op request: attributes: - header reply: attributes: - header - index - drvname - name - upstream-type - upstream-index - upstream-sfp-name - downstream-sfp-name dump: *phy-get-op - name: phy-ntf doc: Notification for change in PHY devices. notify: phy-get - name: tsconfig-get doc: Get hwtstamp config. attribute-set: tsconfig do: &tsconfig-get-op request: attributes: - header reply: attributes: &tsconfig - header - hwtstamp-provider - tx-types - rx-filters - hwtstamp-flags dump: *tsconfig-get-op - name: tsconfig-set doc: Set hwtstamp config. attribute-set: tsconfig do: request: attributes: *tsconfig reply: attributes: *tsconfig - name: pse-ntf doc: Notification for PSE events. attribute-set: pse-ntf event: attributes: - header - events - name: rss-set doc: Set RSS params. attribute-set: rss do: request: attributes: - header - context - hfunc - indir - hkey - input-xfrm - flow-hash - name: rss-ntf doc: | Notification for change in RSS configuration. For additional contexts only modifications use this notification, creation and deletion have dedicated messages. notify: rss-get - name: rss-create-act doc: Create an RSS context. attribute-set: rss do: request: &rss-create-attrs attributes: - header - context - hfunc - indir - hkey - input-xfrm reply: *rss-create-attrs - name: rss-create-ntf doc: | Notification for creation of an additional RSS context. notify: rss-create-act - name: rss-delete-act doc: Delete an RSS context. attribute-set: rss do: request: attributes: - header - context - name: rss-delete-ntf doc: | Notification for deletion of an additional RSS context. attribute-set: rss event: attributes: - header - context mcast-groups: list: - name: monitor c-define-name: ethtool-mcgrp-monitor-name