The idpf and cpfl PMDs map the device-reported link speed (in Mbps)
against a fixed table of supported speeds. That table stopped at 200G,
so ports operating at 400G reported their link speed as "Unknown":
the advertised 400000 Mbps had no matching entry in the driver's
supported-speeds table and the link update fell back to
RTE_ETH_SPEED_NUM_UNKNOWN.

Add RTE_ETH_SPEED_NUM_400G to the supported-speeds table of both the
idpf and cpfl drivers so the correct 400 Gbps link speed is reported.

Signed-off-by: Shaiq Wani <[email protected]>
---
v2:
 - add trailing comma after the last array entry making later additions easier.
 - also add the 400G entry to the cpfl driver.

 drivers/net/intel/cpfl/cpfl_ethdev.c | 3 ++-
 drivers/net/intel/idpf/idpf_ethdev.c | 3 ++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/net/intel/cpfl/cpfl_ethdev.c 
b/drivers/net/intel/cpfl/cpfl_ethdev.c
index 32e0f81d99..789bfd08f9 100644
--- a/drivers/net/intel/cpfl/cpfl_ethdev.c
+++ b/drivers/net/intel/cpfl/cpfl_ethdev.c
@@ -67,7 +67,8 @@ uint32_t cpfl_supported_speeds[] = {
        RTE_ETH_SPEED_NUM_50G,
        RTE_ETH_SPEED_NUM_56G,
        RTE_ETH_SPEED_NUM_100G,
-       RTE_ETH_SPEED_NUM_200G
+       RTE_ETH_SPEED_NUM_200G,
+       RTE_ETH_SPEED_NUM_400G,
 };
 
 static const uint64_t cpfl_map_hena_rss[] = {
diff --git a/drivers/net/intel/idpf/idpf_ethdev.c 
b/drivers/net/intel/idpf/idpf_ethdev.c
index e9e9781fdd..0a0bcdf48d 100644
--- a/drivers/net/intel/idpf/idpf_ethdev.c
+++ b/drivers/net/intel/idpf/idpf_ethdev.c
@@ -46,7 +46,8 @@ uint32_t idpf_supported_speeds[] = {
        RTE_ETH_SPEED_NUM_50G,
        RTE_ETH_SPEED_NUM_56G,
        RTE_ETH_SPEED_NUM_100G,
-       RTE_ETH_SPEED_NUM_200G
+       RTE_ETH_SPEED_NUM_200G,
+       RTE_ETH_SPEED_NUM_400G,
 };
 
 static const uint64_t idpf_map_hena_rss[] = {
-- 
2.34.1

Reply via email to