mbox series

[RFC,ethtool-next,v2,0/6] ethtool: Add ability to control transceiver modules' power mode

Message ID 20210818155306.1278356-1-idosch@idosch.org
Headers show
Series ethtool: Add ability to control transceiver modules' power mode | expand

Message

Ido Schimmel Aug. 18, 2021, 3:53 p.m. UTC
From: Ido Schimmel <idosch@nvidia.com>

Patch #1 updates the UAPI headers.

Patch #2 adds the actual implementation that allows user space to
control transceiver modules' power mode. See the commit message for
example output.

Patches #3-#5 parse more fields from SFF-8636 and CMIS EEPROMs to
provide better observability regarding the power mode of the modules.

Patch #6 adds support for two new extended link states in order to allow
user space to troubleshoot link down issues related to transceiver
modules. See the commit message for example output.

Ido Schimmel (6):
  Update UAPI header copies
  ethtool: Add ability to control transceiver modules' power mode
  ethtool: Print CMIS Module State
  ethtool: Print CMIS Module-Level Controls
  ethtool: Print SFF-8636 Power set and Power override bits
  ethtool: Add transceiver module extended states

 Makefile.am                   |   2 +-
 cmis.c                        |  87 ++++++++++++++++
 cmis.h                        |  20 ++++
 ethtool.8.in                  |  27 +++++
 ethtool.c                     |  11 ++
 netlink/desc-ethtool.c        |  11 ++
 netlink/extapi.h              |   4 +
 netlink/module.c              | 182 ++++++++++++++++++++++++++++++++++
 netlink/monitor.c             |   4 +
 netlink/netlink.h             |   1 +
 netlink/settings.c            |  12 +++
 qsfp.c                        |   6 ++
 qsfp.h                        |   2 +-
 shell-completion/bash/ethtool |  23 +++++
 uapi/linux/ethtool.h          |  36 ++++++-
 uapi/linux/ethtool_netlink.h  |  34 ++++++-
 uapi/linux/if_link.h          |  21 ++++
 uapi/linux/net_tstamp.h       |  17 +++-
 uapi/linux/netlink.h          |   5 +-
 19 files changed, 496 insertions(+), 9 deletions(-)
 create mode 100644 netlink/module.c