385 lines
6.8 KiB
YAML
385 lines
6.8 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.
|
|
|
|
attribute-sets:
|
|
-
|
|
name: header
|
|
attributes:
|
|
-
|
|
name: dev-index
|
|
type: u32
|
|
-
|
|
name: dev-name
|
|
type: string
|
|
-
|
|
name: flags
|
|
type: u32
|
|
|
|
-
|
|
name: bitset-bit
|
|
attributes:
|
|
-
|
|
name: index
|
|
type: u32
|
|
-
|
|
name: name
|
|
type: string
|
|
-
|
|
name: value
|
|
type: flag
|
|
-
|
|
name: bitset-bits
|
|
attributes:
|
|
-
|
|
name: bit
|
|
type: nest
|
|
nested-attributes: bitset-bit
|
|
-
|
|
name: bitset
|
|
attributes:
|
|
-
|
|
name: nomask
|
|
type: flag
|
|
-
|
|
name: size
|
|
type: u32
|
|
-
|
|
name: bits
|
|
type: nest
|
|
nested-attributes: bitset-bits
|
|
|
|
-
|
|
name: string
|
|
attributes:
|
|
-
|
|
name: index
|
|
type: u32
|
|
-
|
|
name: value
|
|
type: string
|
|
-
|
|
name: strings
|
|
attributes:
|
|
-
|
|
name: string
|
|
type: nest
|
|
multi-attr: true
|
|
nested-attributes: string
|
|
-
|
|
name: stringset
|
|
attributes:
|
|
-
|
|
name: id
|
|
type: u32
|
|
-
|
|
name: count
|
|
type: u32
|
|
-
|
|
name: strings
|
|
type: nest
|
|
multi-attr: true
|
|
nested-attributes: strings
|
|
-
|
|
name: stringsets
|
|
attributes:
|
|
-
|
|
name: stringset
|
|
type: nest
|
|
multi-attr: true
|
|
nested-attributes: stringset
|
|
-
|
|
name: strset
|
|
attributes:
|
|
-
|
|
name: header
|
|
type: nest
|
|
nested-attributes: header
|
|
-
|
|
name: stringsets
|
|
type: nest
|
|
nested-attributes: stringsets
|
|
-
|
|
name: counts-only
|
|
type: flag
|
|
|
|
-
|
|
name: privflags
|
|
attributes:
|
|
-
|
|
name: header
|
|
type: nest
|
|
nested-attributes: header
|
|
-
|
|
name: flags
|
|
type: nest
|
|
nested-attributes: bitset
|
|
|
|
-
|
|
name: rings
|
|
attributes:
|
|
-
|
|
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
|
|
-
|
|
name: cqe-size
|
|
type: u32
|
|
-
|
|
name: tx-push
|
|
type: u8
|
|
-
|
|
name: rx-push
|
|
type: u8
|
|
|
|
-
|
|
name: mm-stat
|
|
attributes:
|
|
-
|
|
name: pad
|
|
type: pad
|
|
-
|
|
name: reassembly-errors
|
|
type: u64
|
|
-
|
|
name: smd-errors
|
|
type: u64
|
|
-
|
|
name: reassembly-ok
|
|
type: u64
|
|
-
|
|
name: rx-frag-count
|
|
type: u64
|
|
-
|
|
name: tx-frag-count
|
|
type: u64
|
|
-
|
|
name: hold-count
|
|
type: u64
|
|
-
|
|
name: mm
|
|
attributes:
|
|
-
|
|
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: tx-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
|
|
|
|
operations:
|
|
enum-model: directional
|
|
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
|
|
|
|
# TODO: fill in the requests in between
|
|
|
|
-
|
|
name: privflags-get
|
|
doc: Get device private flags.
|
|
|
|
attribute-set: privflags
|
|
|
|
do: &privflag-get-op
|
|
request:
|
|
value: 13
|
|
attributes:
|
|
- header
|
|
reply:
|
|
value: 14
|
|
attributes:
|
|
- header
|
|
- flags
|
|
dump: *privflag-get-op
|
|
-
|
|
name: privflags-set
|
|
doc: Set device private flags.
|
|
|
|
attribute-set: privflags
|
|
|
|
do:
|
|
request:
|
|
attributes:
|
|
- header
|
|
- flags
|
|
-
|
|
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:
|
|
- 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
|
|
dump: *ring-get-op
|
|
-
|
|
name: rings-set
|
|
doc: Set ring params.
|
|
|
|
attribute-set: rings
|
|
|
|
do:
|
|
request:
|
|
attributes:
|
|
- header
|
|
- rx
|
|
- rx-mini
|
|
- rx-jumbo
|
|
- tx
|
|
- rx-buf-len
|
|
- tcp-data-split
|
|
- cqe-size
|
|
- tx-push
|
|
- rx-push
|
|
-
|
|
name: rings-ntf
|
|
doc: Notification for change in ring params.
|
|
notify: rings-get
|
|
|
|
# TODO: fill in the requests in between
|
|
|
|
-
|
|
name: mm-get
|
|
doc: Get MAC Merge configuration and state
|
|
|
|
attribute-set: mm
|
|
|
|
do: &mm-get-op
|
|
request:
|
|
value: 42
|
|
attributes:
|
|
- header
|
|
reply:
|
|
value: 42
|
|
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
|