diff options
Diffstat (limited to 'backport-ethtool-Fix-SFF-8472-transceiver-module-identificati.patch')
-rw-r--r-- | backport-ethtool-Fix-SFF-8472-transceiver-module-identificati.patch | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/backport-ethtool-Fix-SFF-8472-transceiver-module-identificati.patch b/backport-ethtool-Fix-SFF-8472-transceiver-module-identificati.patch new file mode 100644 index 0000000..0927d0c --- /dev/null +++ b/backport-ethtool-Fix-SFF-8472-transceiver-module-identificati.patch @@ -0,0 +1,41 @@ +From 1a1dcfca4d670dbe01374ceb4e7c9c71ae75e15c Mon Sep 17 00:00:00 2001 +From: Ido Schimmel <idosch@nvidia.com> +Date: Wed, 29 Nov 2023 17:06:12 +0200 +Subject: ethtool: Fix SFF-8472 transceiver module identification + +According to table 5-1 in SFF-8472 Rev. 12.4, the Identifier Values for +"GBIC" (01h) and "Module soldered to motherboard (ex: SFF)" (02h) are +supported by the specification in addition to the current one. +Therefore, adjust ethtool to invoke the SFF-8079 parser for them, which +will in turn invoke the SFF-8472 parser if the transceiver module +supports digital diagnostic monitoring. + +Without this patch, the EEPROM contents of such transceiver modules will +be hex dumped instead of being parsed and printed in a human readable +format. + +Fixes: 25b64c66f58d ("ethtool: Add netlink handler for getmodule (-m)") +Reported-by: Ivar Simensen <is@datarespons.no> +Closes: https://lore.kernel.org/netdev/AM0PR03MB5938EE1722EF2C75112B86F5B9B9A@AM0PR03MB5938.eurprd03.prod.outlook.com/ +Tested-by: Ivar Simensen <is@datarespons.no> +Signed-off-by: Ido Schimmel <idosch@nvidia.com> +--- + netlink/module-eeprom.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/netlink/module-eeprom.c b/netlink/module-eeprom.c +index 09ad580..fe02c5a 100644 +--- a/netlink/module-eeprom.c ++++ b/netlink/module-eeprom.c +@@ -216,6 +216,8 @@ static int eeprom_parse(struct cmd_context *ctx) + + switch (request.data[0]) { + #ifdef ETHTOOL_ENABLE_PRETTY_DUMP ++ case SFF8024_ID_GBIC: ++ case SFF8024_ID_SOLDERED_MODULE: + case SFF8024_ID_SFP: + return sff8079_show_all_nl(ctx); + case SFF8024_ID_QSFP: +-- +cgit 1.2.3-korg + |