mbox series

[ethtool-next,v2,0/3] Add ability to flash modules' firmware

Message ID 20240811115948.3335883-1-danieller@nvidia.com (mailing list archive)
Headers show
Series Add ability to flash modules' firmware | expand

Message

Danielle Ratson Aug. 11, 2024, 11:59 a.m. UTC
CMIS compliant modules such as QSFP-DD might be running a firmware that
can be updated in a vendor-neutral way by exchanging messages between
the host and the module as described in section 7.2.2 of revision
4.0 of the CMIS standard.

Add ability to flash transceiver modules' firmware over netlink.

Example output:

 # ethtool --flash-module-firmware eth0 file test.img

Transceiver module firmware flashing started for device swp23
Transceiver module firmware flashing in progress for device swp23
Progress: 99%
Transceiver module firmware flashing completed for device swp23

In addition, add some firmware and CDB messaging information to
ethtool's output for observability.

Patchset overview:
Patches #1-#2: adds firmware info to ethtool's output.
Patch #3: adds ability to flash modules' firmware.

v2:
	* Remove patch #3 of updating header, since it was already done.
	* s/ETHTOOL_A_MODULE_FW_FLASH_PASS/ETHTOOL_A_MODULE_FW_FLASH_PASSWORD

Danielle Ratson (1):
  ethtool: Add ability to flash transceiver modules' firmware

Ido Schimmel (2):
  cmis: Print active and inactive firmware versions
  cmis: Print CDB messaging support advertisement

 cmis.c                        | 125 +++++++++++++++++++++++
 cmis.h                        |  19 ++++
 ethtool.8.in                  |  29 ++++++
 ethtool.c                     |   7 ++
 netlink/desc-ethtool.c        |  13 +++
 netlink/extapi.h              |   2 +
 netlink/module.c              | 183 ++++++++++++++++++++++++++++++++++
 netlink/netlink.h             |  16 +++
 netlink/prettymsg.c           |   5 +
 netlink/prettymsg.h           |   2 +
 shell-completion/bash/ethtool |  27 +++++
 11 files changed, 428 insertions(+)