From: Dan Nowlin <dan.now...@intel.com>

Add the 200G speeds to the ice_get_link_speed_based_on_phy_type function. This
allows detection of 200G speed instead of UKNOWN.

Signed-off-by: Dan Nowlin <dan.now...@intel.com>
Signed-off-by: Alice Michael <alice.mich...@intel.com>
Signed-off-by: Ian Stokes <ian.sto...@intel.com>
---
 drivers/net/ice/base/ice_adminq_cmd.h |  1 +
 drivers/net/ice/base/ice_common.c     | 12 ++++++++++++
 2 files changed, 13 insertions(+)

diff --git a/drivers/net/ice/base/ice_adminq_cmd.h 
b/drivers/net/ice/base/ice_adminq_cmd.h
index 848bbef393..ef6284f263 100644
--- a/drivers/net/ice/base/ice_adminq_cmd.h
+++ b/drivers/net/ice/base/ice_adminq_cmd.h
@@ -1651,6 +1651,7 @@ struct ice_aqc_get_link_status_data {
 #define ICE_AQ_LINK_SPEED_40GB         BIT(8)
 #define ICE_AQ_LINK_SPEED_50GB         BIT(9)
 #define ICE_AQ_LINK_SPEED_100GB                BIT(10)
+#define ICE_AQ_LINK_SPEED_200GB                BIT(11)
 #define ICE_AQ_LINK_SPEED_UNKNOWN      BIT(15)
        __le32 reserved3; /* Aligns next field to 8-byte boundary */
        __le64 phy_type_low; /* Use values from ICE_PHY_TYPE_LOW_* */
diff --git a/drivers/net/ice/base/ice_common.c 
b/drivers/net/ice/base/ice_common.c
index 76688d8062..de87df8f60 100644
--- a/drivers/net/ice/base/ice_common.c
+++ b/drivers/net/ice/base/ice_common.c
@@ -3386,6 +3386,18 @@ ice_get_link_speed_based_on_phy_type(u64 phy_type_low, 
u64 phy_type_high)
        case ICE_PHY_TYPE_HIGH_100G_AUI2:
                speed_phy_type_high = ICE_AQ_LINK_SPEED_100GB;
                break;
+       case ICE_PHY_TYPE_HIGH_200G_CR4_PAM4:
+       case ICE_PHY_TYPE_HIGH_200G_SR4:
+       case ICE_PHY_TYPE_HIGH_200G_FR4:
+       case ICE_PHY_TYPE_HIGH_200G_LR4:
+       case ICE_PHY_TYPE_HIGH_200G_DR4:
+       case ICE_PHY_TYPE_HIGH_200G_KR4_PAM4:
+       case ICE_PHY_TYPE_HIGH_200G_AUI4_AOC_ACC:
+       case ICE_PHY_TYPE_HIGH_200G_AUI4:
+       case ICE_PHY_TYPE_HIGH_200G_AUI8_AOC_ACC:
+       case ICE_PHY_TYPE_HIGH_200G_AUI8:
+               speed_phy_type_high = ICE_AQ_LINK_SPEED_200GB;
+               break;
        default:
                speed_phy_type_high = ICE_AQ_LINK_SPEED_UNKNOWN;
                break;
-- 
2.43.0

Reply via email to