mirror of
https://github.com/torvalds/linux.git
synced 2026-04-18 06:44:00 -04:00
Some modern NICs support including the IPv6 Flow Label in the flow hash for RSS queue selection. This is outside the old "Microsoft spec", but was included in the OCP NIC spec: [ ] RSS include flow label in the hash (configurable) https://www.opencompute.org/w/index.php?title=Core_Offloads#Receive_Side_Scaling RSS Flow Label hashing allows TCP Protective Load Balancing (PLB) to recover from receiver congestion / overload. Rx CPU/queue hotspots are relatively common for data ingest workloads, and so far we had to try to detect the condition at the RPC layer and reopen the connection. PLB lets us change the Flow Label and therefore Rx CPU on RTO, with minimal packet reordering. PLB reaction times are much faster, and can happen at any point in the connection, not just at RPC boundaries. Due to the nature of host processing (relatively long queues, other kernel subsystems masking IRQs for 100s of msecs) the risk of reordering within the host is higher than in the network. But for applications which need it - it is far preferable to potentially persistent overload of subset of queues. It is expected that the hash communicated to the host may change if the Flow Label changes. This may be surprising to some host software, but I don't expect the devices can compute two Toeplitz hashes, one with the Flow Label for queue selection and one without for the rx hash communicated to the host. Besides, changing the hash may potentially help to change the path thru host queues. User can disable NETIF_F_RXHASH if they require a stable flow hash. The name RXH_IP6_FL was chosen based on what we call Flow Label variables in IPv6 processing (fl). I prefer fl_lbl but that appears to be an fbnic-only spelling. We could spell out RXH_IP6_FLOW_LABEL but existing RXH_ defines are a lot more terse. Willem notes [1] that Flow Label is defined as identifying the flow and therefore including both the flow label _and_ the L4 header fields is not generally necessary. But it should not hurt so it's not explicitly prevented if the driver supports hashing on both at the same time. Link: https://lore.kernel.org/68483433b45e2_3cd66f29440@willemb.c.googlers.com.notmuch [1] Signed-off-by: Jakub Kicinski <kuba@kernel.org> Reviewed-by: Joe Damato <joe@dama.to> Link: https://patch.msgid.link/20250811234212.580748-2-kuba@kernel.org Signed-off-by: Paolo Abeni <pabeni@redhat.com>
2736 lines
54 KiB
YAML
2736 lines
54 KiB
YAML
# 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: ip6-fl
|
|
doc: IPv6 Flow Label
|
|
-
|
|
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
|
|
- offset
|
|
- length
|
|
- page
|
|
- bank
|
|
- i2c-address
|
|
reply:
|
|
attributes:
|
|
- header
|
|
- 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
|