Thread (9 messages) 9 messages, 1 author, 14d ago
COOLING14d REVIEWED: 1 (0M)

[PATCH ethtool 6/8] module-common: Add missing CMIS transmitter technologies

From: Ido Schimmel <idosch@nvidia.com>
Date: 2026-07-16 06:47:58
Subsystem: the rest · Maintainer: Linus Torvalds

Add missing transmitter technologies from table 8-40 in CMIS 5.3. This
is a prerequisite for the next patch to help us distinguish between
copper and optical transceivers.

Fixes: 88ca347ef35a ("Add QSFP-DD support")
Reviewed-by: Danielle Ratson <redacted>
Signed-off-by: Ido Schimmel <idosch@nvidia.com>
---
 module-common.c | 18 ++++++++++++++++++
 module-common.h |  5 +++++
 2 files changed, 23 insertions(+)
diff --git a/module-common.c b/module-common.c
index ea4514ab3899..f8e4681d8d63 100644
--- a/module-common.c
+++ b/module-common.c
@@ -628,6 +628,24 @@ void module_show_mit_compliance(u16 value)
 		snprintf(description, SFF_MAX_DESC_LEN, "%s linear active equalizers",
 			 cc);
 		break;
+	case MODULE_TT_C_BAND_LASER:
+		strncpy(description, "C-band tunable laser", SFF_MAX_DESC_LEN);
+		break;
+	case MODULE_TT_L_BAND_LASER:
+		strncpy(description, "L-band tunable laser", SFF_MAX_DESC_LEN);
+		break;
+	case MODULE_TT_COPPER_NF_LINEAR:
+		snprintf(description, SFF_MAX_DESC_LEN,
+			 "%s near and far end linear active equalizers", cc);
+		break;
+	case MODULE_TT_COPPER_F_LINEAR:
+		snprintf(description, SFF_MAX_DESC_LEN,
+			 "%s far end linear active equalizers", cc);
+		break;
+	case MODULE_TT_COPPER_N_LINEAR:
+		snprintf(description, SFF_MAX_DESC_LEN,
+			 "%s near end linear active equalizers", cc);
+		break;
 	default:
 		strncpy(description, "Reserved or unknown", SFF_MAX_DESC_LEN);
 		break;
diff --git a/module-common.h b/module-common.h
index fba1d36f7f86..e9bf8c19a9bb 100644
--- a/module-common.h
+++ b/module-common.h
@@ -99,6 +99,11 @@ enum module_type {
 #define MODULE_TT_COPPER_F_EQUAL		0x0D
 #define MODULE_TT_COPPER_N_EQUAL		0x0E
 #define MODULE_TT_COPPER_LINEAR_EQUAL		0x0F
+#define MODULE_TT_C_BAND_LASER			0x10
+#define MODULE_TT_L_BAND_LASER			0x11
+#define MODULE_TT_COPPER_NF_LINEAR		0x12
+#define MODULE_TT_COPPER_F_LINEAR		0x13
+#define MODULE_TT_COPPER_N_LINEAR		0x14
 
 /* Module Flags (Page 0) */
 #define CMIS_VCC_AW_OFFSET			0x09
-- 
2.55.0
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help