When an AML40 port links up at 10G, DPDK reports the speed as 100M
instead of 10G. The 10G link status bit is not recognized in
txgbe_check_mac_link_aml40(), so any non-40G speed falls through to
the default case (UNKNOWN) which is then reported as 100M.

Add the 10G port status bit recognition, so a 10G link is reported
as 10G.

Fixes: abf042d32b39 ("net/txgbe: add Amber-Lite 25G/40G NICs")
Cc: [email protected]

Signed-off-by: Zaiyu Wang <[email protected]>
---
 drivers/net/txgbe/base/txgbe_aml40.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/net/txgbe/base/txgbe_aml40.c 
b/drivers/net/txgbe/base/txgbe_aml40.c
index 5fa7c6a243..d812adac69 100644
--- a/drivers/net/txgbe/base/txgbe_aml40.c
+++ b/drivers/net/txgbe/base/txgbe_aml40.c
@@ -85,6 +85,9 @@ s32 txgbe_check_mac_link_aml40(struct txgbe_hw *hw, u32 
*speed,
                if ((links_reg & TXGBE_CFG_PORT_ST_AML_LINK_40G) ==
                        TXGBE_CFG_PORT_ST_AML_LINK_40G)
                        *speed = TXGBE_LINK_SPEED_40GB_FULL;
+               else if ((links_reg & TXGBE_CFG_PORT_ST_AML_LINK_10G) ==
+                       TXGBE_CFG_PORT_ST_AML_LINK_10G)
+                       *speed = TXGBE_LINK_SPEED_10GB_FULL;
        } else {
                *speed = TXGBE_LINK_SPEED_UNKNOWN;
        }
-- 
2.55.0.windows.2

Reply via email to