aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/mellanox/mlx5/core/ipoib.c
diff options
context:
space:
mode:
authorSaeed Mahameed <saeedm@mellanox.com>2017-04-13 06:36:58 +0300
committerDavid S. Miller <davem@davemloft.net>2017-04-17 11:08:30 -0400
commit5426a0b2746a629eed8608397a385f34081f3f66 (patch)
tree6988a32505c62d6a251c511277b897da46ec4965 /drivers/net/ethernet/mellanox/mlx5/core/ipoib.c
parentnet/mlx5e: IPoIB, RSS flow steering tables (diff)
downloadlinux-dev-5426a0b2746a629eed8608397a385f34081f3f66.tar.xz
linux-dev-5426a0b2746a629eed8608397a385f34081f3f66.zip
net/mlx5e: IPoIB, TX TIS creation
Modify mlx5e tis creation function to accept underlay qp number, which will be needed by IPoIB. Implement mlx5i (IPoIB) tx init/cleanup netdevice profile flows to create one TIS with the IPoIB underlay qp, for IPoIB TX SQs. Signed-off-by: Saeed Mahameed <saeedm@mellanox.com> Reviewed-by: Erez Shitrit <erezsh@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to '')
-rw-r--r--drivers/net/ethernet/mellanox/mlx5/core/ipoib.c14
1 files changed, 12 insertions, 2 deletions
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/ipoib.c b/drivers/net/ethernet/mellanox/mlx5/core/ipoib.c
index e16e1c7b246e..d7d705c840ae 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/ipoib.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/ipoib.c
@@ -63,13 +63,23 @@ static void mlx5i_cleanup(struct mlx5e_priv *priv)
static int mlx5i_init_tx(struct mlx5e_priv *priv)
{
+ struct mlx5i_priv *ipriv = priv->ppriv;
+ int err;
+
/* TODO: Create IPoIB underlay QP */
- /* TODO: create IPoIB TX HW TIS */
+
+ err = mlx5e_create_tis(priv->mdev, 0 /* tc */, ipriv->qp.qpn, &priv->tisn[0]);
+ if (err) {
+ mlx5_core_warn(priv->mdev, "create tis failed, %d\n", err);
+ return err;
+ }
+
return 0;
}
-static void mlx5i_cleanup_tx(struct mlx5e_priv *priv)
+void mlx5i_cleanup_tx(struct mlx5e_priv *priv)
{
+ mlx5e_destroy_tis(priv->mdev, priv->tisn[0]);
}
static int mlx5i_create_flow_steering(struct mlx5e_priv *priv)