All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH ethtool-next v2 00/14] Add JSON output to --module-info
@ 2025-01-29 13:15 Danielle Ratson
  2025-01-29 13:15 ` [PATCH ethtool-next v2 01/14] module_common: Add a new file to all the common code for all module types Danielle Ratson
                   ` (13 more replies)
  0 siblings, 14 replies; 17+ messages in thread
From: Danielle Ratson @ 2025-01-29 13:15 UTC (permalink / raw)
  To: netdev; +Cc: mkubecek, matt, daniel.zahka, amcohen, nbu-mlxsw, Danielle Ratson

Add JSON output for 'ethtool -m' / --module-info, following the
guideline below:

1. Fields with description, will have a separate description field.
2. Fields with units, will have a separate unit field.
3. ASCII fields will be presented as strings.
4. On/Off is rendered as true/false.
5. Yes/no is rendered as true/false.
6. Per-channel fields will be presented as array, when each element
   represents a channel.
7. Fields that hold version, will be split to major and minor sub
   fields.

This patchset suppose to extend [1] to cover all types of modules.

Patchset overview:
Patches #1-#6: Preparations.
Patches #7-#8: Add JSON output support for CMIS compliant modules.
Patches #9-#10: Add JSON output support for SFF8636 modules.
Patches #11-#13: Add JSON output support for SFF8079 and SFF8472 modules.
Patches #14: Add '-j' support to ethtool

[1] https://lore.kernel.org/all/20220704054114.22582-2-matt@traverse.com.au/

v2:
	* In rx_power JSON field, add a type field to let the user know
	  what type is printed in "value".
	* Use uint instead of hexa fields in JSON context.
	* Simplify sff8636_show_dom().
	* Use "false" in module_show_lane_status() instead of "None" in
	  JSON context.

Danielle Ratson (14):
  module_common: Add a new file to all the common code for all module
    types
  sff_common: Move sff_show_revision_compliance() to qsfp.c
  cmis: Change loop order in cmis_show_dom_chan_lvl_flags()
  qsfp: Reorder the channel-level flags list for SFF8636 module type
  qsfp: Refactor sff8636_show_dom() by moving code into separate
    functions
  module_common: Add helpers to support JSON printing for common value
    types
  cmis: Add JSON output handling to --module-info in CMIS modules
  cmis: Enable JSON output support in CMIS modules
  qsfp: Add JSON output handling to --module-info in SFF8636 modules
  qsfp: Enable JSON output support for SFF8636 modules
  sfpid: Add JSON output handling to --module-info in SFF8079 modules
  sfpdiag: Add JSON output handling to --module-info in SFF8472 modules
  ethtool: Enable JSON output support for SFF8079 and SFF8472 modules
  ethtool: Add '-j' support to ethtool

 Makefile.am             |   7 +-
 cmis.c                  | 499 +++++++++++-----------
 cmis.h                  |  62 ---
 ethtool.c               |  10 +-
 module-common.c         | 689 ++++++++++++++++++++++++++++++
 module-common.h         | 288 +++++++++++++
 netlink/module-eeprom.c |  26 +-
 qsfp.c                  | 909 +++++++++++++++++++++-------------------
 qsfp.h                  | 108 -----
 sff-common.c            | 353 ++++------------
 sff-common.h            | 119 ++----
 sfpdiag.c               |  54 ++-
 sfpid.c                 | 439 ++++++++++---------
 13 files changed, 2110 insertions(+), 1453 deletions(-)
 create mode 100644 module-common.c
 create mode 100644 module-common.h

-- 
2.47.0


^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2025-01-30 13:03 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-01-29 13:15 [PATCH ethtool-next v2 00/14] Add JSON output to --module-info Danielle Ratson
2025-01-29 13:15 ` [PATCH ethtool-next v2 01/14] module_common: Add a new file to all the common code for all module types Danielle Ratson
2025-01-29 13:15 ` [PATCH ethtool-next v2 02/14] sff_common: Move sff_show_revision_compliance() to qsfp.c Danielle Ratson
2025-01-29 13:15 ` [PATCH ethtool-next v2 03/14] cmis: Change loop order in cmis_show_dom_chan_lvl_flags() Danielle Ratson
2025-01-29 13:15 ` [PATCH ethtool-next v2 04/14] qsfp: Reorder the channel-level flags list for SFF8636 module type Danielle Ratson
2025-01-29 13:15 ` [PATCH ethtool-next v2 05/14] qsfp: Refactor sff8636_show_dom() by moving code into separate functions Danielle Ratson
2025-01-30 12:26   ` Vadim Fedorenko
2025-01-30 13:03     ` Danielle Ratson
2025-01-29 13:15 ` [PATCH ethtool-next v2 06/14] module_common: Add helpers to support JSON printing for common value types Danielle Ratson
2025-01-29 13:15 ` [PATCH ethtool-next v2 07/14] cmis: Add JSON output handling to --module-info in CMIS modules Danielle Ratson
2025-01-29 13:15 ` [PATCH ethtool-next v2 08/14] cmis: Enable JSON output support " Danielle Ratson
2025-01-29 13:15 ` [PATCH ethtool-next v2 09/14] qsfp: Add JSON output handling to --module-info in SFF8636 modules Danielle Ratson
2025-01-29 13:15 ` [PATCH ethtool-next v2 10/14] qsfp: Enable JSON output support for " Danielle Ratson
2025-01-29 13:15 ` [PATCH ethtool-next v2 11/14] sfpid: Add JSON output handling to --module-info in SFF8079 modules Danielle Ratson
2025-01-29 13:15 ` [PATCH ethtool-next v2 12/14] sfpdiag: Add JSON output handling to --module-info in SFF8472 modules Danielle Ratson
2025-01-29 13:15 ` [PATCH ethtool-next v2 13/14] ethtool: Enable JSON output support for SFF8079 and " Danielle Ratson
2025-01-29 13:15 ` [PATCH ethtool-next v2 14/14] ethtool: Add '-j' support to ethtool Danielle Ratson

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.