FAILED: Patch "net/mlx5e: Fix ethtool indication of connector type" failed to apply to 4.19-stable tree
Sasha Levin
maintainerThe patch below does not apply to the 4.19-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.
Thanks,
Sasha
------------------ original commit in Linus's tree ------------------
From 3211434dfe7a66fcf55e43961ea524b78336c04c Mon Sep 17 00:00:00 2001
From: Aya Levin <[email protected]>
Date: Wed, 24 Mar 2021 12:25:06 +0200
Subject: [PATCH] net/mlx5e: Fix ethtool indication of connector type
Use connector_type read from PTYS register when it's valid, based on corresponding capability bit.
Fixes 5b4793f81745 ("net/mlx5e: Add support for reading connector type from PTYS")
Signed-off-by Aya Levin <[email protected]>
Reviewed-by Eran Ben Elisha <[email protected]>
Signed-off-by Saeed Mahameed <[email protected]>
--- .../ethernet/mellanox/mlx5/core/en_ethtool.c | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-)
drivers/net/ethernet/mellanox/mlx5/core/en_ethtool.c +11 -11
@@ -758,11 +758,11 @@ static int get_fec_supported_advertised(struct mlx5_core_dev *dev,return 0 ; } -static void ptys2ethtool_supported_advertised_port (struct ethtool_link_ksettings *link_ksettings, -u32 eth_proto_cap, -u8 connector_type,bool ext) +static void ptys2ethtool_supported_advertised_port (struct mlx5_core_dev *mdev, +struct ethtool_link_ksettings *link_ksettings, +u32 eth_proto_cap,u8 connector_type) { -if ((!connector_type && !ext) || connector_type >=MLX5E_CONNECTOR_TYPE_NUMBER ) { +if (!MLX5_CAP_PCAM_FEATURE (mdev, ptys_connector_type)) { if (eth_proto_cap & (MLX5E_PROT_MASK(MLX5E_10GBASE_CR) | MLX5E_PROT_MASK(MLX5E_10GBASE_SR) | MLX5E_PROT_MASK(MLX5E_40GBASE_CR4)
@@ -898,9 +898,9 @@ static int ptys2connector_type[MLX5E_CONNECTOR_TYPE_NUMBER] = { [MLX5E_PORT_OTHER] = PORT_OTHER, }; -static u8 get_connector_port (u32 eth_proto,u8 connector_type,bool ext) +static u8 get_connector_port (struct mlx5_core_dev *mdev,u32 eth_proto,u8 connector_type) { -if ((connector_type || ext) && connector_type <MLX5E_CONNECTOR_TYPE_NUMBER ) +if (MLX5_CAP_PCAM_FEATURE (mdev, ptys_connector_type))return ptys2connector_type[connector_type]; if (eth_proto &
@@ -1001,11 +1001,11 @@ int mlx5e_ethtool_get_link_ksettings(struct mlx5e_priv *priv, data_rate_oper, link_ksettings); eth_proto_oper = eth_proto_oper ? eth_proto_oper : eth_proto_cap; - - link_ksettings->base.port =get_connector_port (eth_proto_oper, - connector_type, ext); -ptys2ethtool_supported_advertised_port (link_ksettings, eth_proto_admin, - connector_type, ext); + connector_type = connector_type <MLX5E_CONNECTOR_TYPE_NUMBER ? + connector_type :MLX5E_PORT_UNKNOWN ; + link_ksettings->base.port =get_connector_port (mdev, eth_proto_oper, connector_type); +ptys2ethtool_supported_advertised_port (mdev, link_ksettings, eth_proto_admin, + connector_type);get_lp_advertising (mdev, eth_proto_lp, link_ksettings);if (an_status ==MLX5_AN_COMPLETE )
Signature · 1 line
2.30.2