IB/mlx5: Add support for 800G_8X lane speed
authorPatrisious Haddad <phaddad@nvidia.com>
Wed, 20 Sep 2023 10:07:42 +0000 (13:07 +0300)
committerLeon Romanovsky <leon@kernel.org>
Tue, 26 Sep 2023 09:38:46 +0000 (12:38 +0300)
Add a check for 800G_8X speed when querying PTYS and report it back
correctly when needed.

Signed-off-by: Patrisious Haddad <phaddad@nvidia.com>
Reviewed-by: Mark Zhang <markzhang@nvidia.com>
Link: https://lore.kernel.org/r/26fd0b6e1fac071c3eb779657bb3d8ba47f47c4f.1695204156.git.leon@kernel.org
Reviewed-by: Jacob Keller <jacob.e.keller@intel.com>
Signed-off-by: Leon Romanovsky <leon@kernel.org>
drivers/infiniband/hw/mlx5/main.c
drivers/net/ethernet/mellanox/mlx5/core/port.c
include/linux/mlx5/port.h

index aed5cdea50e6c08f35691320a3a50b6fff173973..457d5ac7ad0400271a95bac504ea69637ad68378 100644 (file)
@@ -451,6 +451,10 @@ static int translate_eth_ext_proto_oper(u32 eth_proto_oper, u16 *active_speed,
                *active_width = IB_WIDTH_4X;
                *active_speed = IB_SPEED_NDR;
                break;
+       case MLX5E_PROT_MASK(MLX5E_800GAUI_8_800GBASE_CR8_KR8):
+               *active_width = IB_WIDTH_8X;
+               *active_speed = IB_SPEED_NDR;
+               break;
        default:
                return -EINVAL;
        }
index be70d1f23a5da311ad725dd57f83a43b1bd99822..43423543f34c6dcae79a91619b8d3a98ded5e8d3 100644 (file)
@@ -1102,6 +1102,7 @@ static const u32 mlx5e_ext_link_speed[MLX5E_EXT_LINK_MODES_NUMBER] = {
        [MLX5E_100GAUI_1_100GBASE_CR_KR] = 100000,
        [MLX5E_200GAUI_2_200GBASE_CR2_KR2] = 200000,
        [MLX5E_400GAUI_4_400GBASE_CR4_KR4] = 400000,
+       [MLX5E_800GAUI_8_800GBASE_CR8_KR8] = 800000,
 };
 
 int mlx5_port_query_eth_proto(struct mlx5_core_dev *dev, u8 port, bool ext,
index 98b2e1e149f93c2c735e0333d5de621b49b39c4d..794001ebd00336d0ccc3d9aded53af17b1e3f365 100644 (file)
@@ -117,6 +117,7 @@ enum mlx5e_ext_link_mode {
        MLX5E_200GAUI_2_200GBASE_CR2_KR2        = 13,
        MLX5E_400GAUI_8                         = 15,
        MLX5E_400GAUI_4_400GBASE_CR4_KR4        = 16,
+       MLX5E_800GAUI_8_800GBASE_CR8_KR8        = 19,
        MLX5E_EXT_LINK_MODES_NUMBER,
 };