summaryrefslogtreecommitdiff
path: root/drivers/net/ethernet/mellanox/mlx5/core/lag/lag.h
diff options
context:
space:
mode:
authorRoi Dayan <roid@nvidia.com>2023-06-13 10:42:05 +0300
committerSaeed Mahameed <saeedm@nvidia.com>2023-07-27 21:37:28 +0300
commit02ceda65f014e357d4142e9c004f40b3b3d61857 (patch)
tree312e94c9699932e89ad2c0bb168585bb3f2dca6e /drivers/net/ethernet/mellanox/mlx5/core/lag/lag.h
parent9d0cd5d25f7d45bce01bbb3193b54ac24b3a60f3 (diff)
downloadlinux-02ceda65f014e357d4142e9c004f40b3b3d61857.tar.xz
net/mlx5: Use shared code for checking lag is supported
Move shared function to check lag is supported to lag header file. Signed-off-by: Roi Dayan <roid@nvidia.com> Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
Diffstat (limited to 'drivers/net/ethernet/mellanox/mlx5/core/lag/lag.h')
-rw-r--r--drivers/net/ethernet/mellanox/mlx5/core/lag/lag.h12
1 files changed, 10 insertions, 2 deletions
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/lag/lag.h b/drivers/net/ethernet/mellanox/mlx5/core/lag/lag.h
index a061b1873e27..481e92f39fe6 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/lag/lag.h
+++ b/drivers/net/ethernet/mellanox/mlx5/core/lag/lag.h
@@ -74,8 +74,6 @@ struct mlx5_lag {
struct lag_mpesw lag_mpesw;
};
-bool mlx5_lag_is_supported(struct mlx5_core_dev *dev);
-
static inline struct mlx5_lag *
mlx5_lag_dev(struct mlx5_core_dev *dev)
{
@@ -115,4 +113,14 @@ void mlx5_lag_remove_devices(struct mlx5_lag *ldev);
int mlx5_deactivate_lag(struct mlx5_lag *ldev);
void mlx5_lag_add_devices(struct mlx5_lag *ldev);
+static inline bool mlx5_lag_is_supported(struct mlx5_core_dev *dev)
+{
+ if (!MLX5_CAP_GEN(dev, vport_group_manager) ||
+ !MLX5_CAP_GEN(dev, lag_master) ||
+ MLX5_CAP_GEN(dev, num_lag_ports) < 2 ||
+ MLX5_CAP_GEN(dev, num_lag_ports) > MLX5_MAX_PORTS)
+ return false;
+ return true;
+}
+
#endif /* __MLX5_LAG_H__ */