[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20251204075930.979564-3-cjubran@nvidia.com>
Date: Thu, 4 Dec 2025 09:59:30 +0200
From: Carolina Jubran <cjubran@...dia.com>
To: Michal Kubecek <mkubecek@...e.cz>, "John W . Linville"
<linville@...driver.com>
CC: <netdev@...r.kernel.org>, Yael Chemla <ychemla@...dia.com>, "Carolina
Jubran" <cjubran@...dia.com>
Subject: [PATCH ethtool 2/2] ethtool: add new 1600G modes to link mode tables
From: Yael Chemla <ychemla@...dia.com>
Add the 1600G link mode bits, include them in capability dumps and
ioctl fallback, and update the man page.
Signed-off-by: Yael Chemla <ychemla@...dia.com>
Signed-off-by: Carolina Jubran <cjubran@...dia.com>
---
ethtool.8.in | 4 ++++
ethtool.c | 12 ++++++++++++
netlink/settings.c | 4 ++++
3 files changed, 20 insertions(+)
diff --git a/ethtool.8.in b/ethtool.8.in
index 553592b..2a3fc14 100644
--- a/ethtool.8.in
+++ b/ethtool.8.in
@@ -1013,6 +1013,10 @@ lB l lB.
0x400000000000000000000000000000 800000baseDR4_2 Full
0x800000000000000000000000000000 800000baseSR4 Full
0x1000000000000000000000000000000 800000baseVR4 Full
+0x2000000000000000000000000000000 1600000baseCR8 Full
+0x4000000000000000000000000000000 1600000baseKR8 Full
+0x8000000000000000000000000000000 1600000baseDR8 Full
+0x10000000000000000000000000000000 1600000baseDR8_2 Full
.TE
.TP
.BI phyad \ N
diff --git a/ethtool.c b/ethtool.c
index 948d551..21dea0b 100644
--- a/ethtool.c
+++ b/ethtool.c
@@ -538,6 +538,10 @@ static void init_global_link_mode_masks(void)
ETHTOOL_LINK_MODE_800000baseDR4_2_Full_BIT,
ETHTOOL_LINK_MODE_800000baseSR4_Full_BIT,
ETHTOOL_LINK_MODE_800000baseVR4_Full_BIT,
+ ETHTOOL_LINK_MODE_1600000baseCR8_Full_BIT,
+ ETHTOOL_LINK_MODE_1600000baseKR8_Full_BIT,
+ ETHTOOL_LINK_MODE_1600000baseDR8_Full_BIT,
+ ETHTOOL_LINK_MODE_1600000baseDR8_2_Full_BIT,
};
static const enum ethtool_link_mode_bit_indices
additional_advertised_flags_bits[] = {
@@ -836,6 +840,14 @@ static void dump_link_caps(const char *prefix, const char *an_prefix,
"800000baseSR4/Full" },
{ 0, ETHTOOL_LINK_MODE_800000baseVR4_Full_BIT,
"800000baseVR4/Full" },
+ { 0, ETHTOOL_LINK_MODE_1600000baseCR8_Full_BIT,
+ "1600000baseCR8/Full" },
+ { 0, ETHTOOL_LINK_MODE_1600000baseKR8_Full_BIT,
+ "1600000baseKR8/Full" },
+ { 0, ETHTOOL_LINK_MODE_1600000baseDR8_Full_BIT,
+ "1600000baseDR8/Full" },
+ { 0, ETHTOOL_LINK_MODE_1600000baseDR8_2_Full_BIT,
+ "1600000baseDR8_2/Full" },
};
int indent;
int did1, new_line_pend;
diff --git a/netlink/settings.c b/netlink/settings.c
index 84b2da8..05d215e 100644
--- a/netlink/settings.c
+++ b/netlink/settings.c
@@ -196,6 +196,10 @@ static const struct link_mode_info link_modes[] = {
[ETHTOOL_LINK_MODE_800000baseDR4_2_Full_BIT] = __REAL(800000),
[ETHTOOL_LINK_MODE_800000baseSR4_Full_BIT] = __REAL(800000),
[ETHTOOL_LINK_MODE_800000baseVR4_Full_BIT] = __REAL(800000),
+ [ETHTOOL_LINK_MODE_1600000baseCR8_Full_BIT] = __REAL(1600000),
+ [ETHTOOL_LINK_MODE_1600000baseKR8_Full_BIT] = __REAL(1600000),
+ [ETHTOOL_LINK_MODE_1600000baseDR8_Full_BIT] = __REAL(1600000),
+ [ETHTOOL_LINK_MODE_1600000baseDR8_2_Full_BIT] = __REAL(1600000),
};
const unsigned int link_modes_count = ARRAY_SIZE(link_modes);
--
2.38.1
Powered by blists - more mailing lists