mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-12 13:55:32 +00:00
net/mlx5_core: Export transport objects
To be used by mlx5_ib in the following patches for implementing RAW PACKET QP. Add mlx5_core_ prefix to alloc and delloc transport_domain since they are exposed now. Signed-off-by: Majd Dibbiny <majd@mellanox.com> Reviewed-by: Matan Barak <matanb@mellanox.com> Signed-off-by: Doug Ledford <dledford@redhat.com>
This commit is contained in:
parent
f72300c56c
commit
8d7f9ecb37
5 changed files with 20 additions and 10 deletions
|
@ -36,8 +36,8 @@
|
|||
#include <linux/mlx5/qp.h>
|
||||
#include <linux/mlx5/cq.h>
|
||||
#include <linux/mlx5/vport.h>
|
||||
#include <linux/mlx5/transobj.h>
|
||||
#include "wq.h"
|
||||
#include "transobj.h"
|
||||
#include "mlx5_core.h"
|
||||
|
||||
#define MLX5E_MAX_NUM_TC 8
|
||||
|
|
|
@ -2129,7 +2129,7 @@ static void *mlx5e_create_netdev(struct mlx5_core_dev *mdev)
|
|||
goto err_unmap_free_uar;
|
||||
}
|
||||
|
||||
err = mlx5_alloc_transport_domain(mdev, &priv->tdn);
|
||||
err = mlx5_core_alloc_transport_domain(mdev, &priv->tdn);
|
||||
if (err) {
|
||||
mlx5_core_err(mdev, "alloc td failed, %d\n", err);
|
||||
goto err_dealloc_pd;
|
||||
|
@ -2212,7 +2212,7 @@ static void *mlx5e_create_netdev(struct mlx5_core_dev *mdev)
|
|||
mlx5_core_destroy_mkey(mdev, &priv->mr);
|
||||
|
||||
err_dealloc_transport_domain:
|
||||
mlx5_dealloc_transport_domain(mdev, priv->tdn);
|
||||
mlx5_core_dealloc_transport_domain(mdev, priv->tdn);
|
||||
|
||||
err_dealloc_pd:
|
||||
mlx5_core_dealloc_pd(mdev, priv->pdn);
|
||||
|
@ -2244,7 +2244,7 @@ static void mlx5e_destroy_netdev(struct mlx5_core_dev *mdev, void *vpriv)
|
|||
mlx5e_close_drop_rq(priv);
|
||||
mlx5e_destroy_tises(priv);
|
||||
mlx5_core_destroy_mkey(priv->mdev, &priv->mr);
|
||||
mlx5_dealloc_transport_domain(priv->mdev, priv->tdn);
|
||||
mlx5_core_dealloc_transport_domain(priv->mdev, priv->tdn);
|
||||
mlx5_core_dealloc_pd(priv->mdev, priv->pdn);
|
||||
mlx5_unmap_free_uar(priv->mdev, &priv->cq_uar);
|
||||
free_netdev(netdev);
|
||||
|
|
|
@ -37,7 +37,7 @@
|
|||
#include <linux/mlx5/srq.h>
|
||||
#include <rdma/ib_verbs.h>
|
||||
#include "mlx5_core.h"
|
||||
#include "transobj.h"
|
||||
#include <linux/mlx5/transobj.h>
|
||||
|
||||
void mlx5_srq_event(struct mlx5_core_dev *dev, u32 srqn, int event_type)
|
||||
{
|
||||
|
|
|
@ -32,9 +32,9 @@
|
|||
|
||||
#include <linux/mlx5/driver.h>
|
||||
#include "mlx5_core.h"
|
||||
#include "transobj.h"
|
||||
#include <linux/mlx5/transobj.h>
|
||||
|
||||
int mlx5_alloc_transport_domain(struct mlx5_core_dev *dev, u32 *tdn)
|
||||
int mlx5_core_alloc_transport_domain(struct mlx5_core_dev *dev, u32 *tdn)
|
||||
{
|
||||
u32 in[MLX5_ST_SZ_DW(alloc_transport_domain_in)];
|
||||
u32 out[MLX5_ST_SZ_DW(alloc_transport_domain_out)];
|
||||
|
@ -53,8 +53,9 @@ int mlx5_alloc_transport_domain(struct mlx5_core_dev *dev, u32 *tdn)
|
|||
|
||||
return err;
|
||||
}
|
||||
EXPORT_SYMBOL(mlx5_core_alloc_transport_domain);
|
||||
|
||||
void mlx5_dealloc_transport_domain(struct mlx5_core_dev *dev, u32 tdn)
|
||||
void mlx5_core_dealloc_transport_domain(struct mlx5_core_dev *dev, u32 tdn)
|
||||
{
|
||||
u32 in[MLX5_ST_SZ_DW(dealloc_transport_domain_in)];
|
||||
u32 out[MLX5_ST_SZ_DW(dealloc_transport_domain_out)];
|
||||
|
@ -68,6 +69,7 @@ void mlx5_dealloc_transport_domain(struct mlx5_core_dev *dev, u32 tdn)
|
|||
|
||||
mlx5_cmd_exec_check_status(dev, in, sizeof(in), out, sizeof(out));
|
||||
}
|
||||
EXPORT_SYMBOL(mlx5_core_dealloc_transport_domain);
|
||||
|
||||
int mlx5_core_create_rq(struct mlx5_core_dev *dev, u32 *in, int inlen, u32 *rqn)
|
||||
{
|
||||
|
@ -94,6 +96,7 @@ int mlx5_core_modify_rq(struct mlx5_core_dev *dev, u32 rqn, u32 *in, int inlen)
|
|||
memset(out, 0, sizeof(out));
|
||||
return mlx5_cmd_exec_check_status(dev, in, inlen, out, sizeof(out));
|
||||
}
|
||||
EXPORT_SYMBOL(mlx5_core_modify_rq);
|
||||
|
||||
void mlx5_core_destroy_rq(struct mlx5_core_dev *dev, u32 rqn)
|
||||
{
|
||||
|
@ -133,6 +136,7 @@ int mlx5_core_modify_sq(struct mlx5_core_dev *dev, u32 sqn, u32 *in, int inlen)
|
|||
memset(out, 0, sizeof(out));
|
||||
return mlx5_cmd_exec_check_status(dev, in, inlen, out, sizeof(out));
|
||||
}
|
||||
EXPORT_SYMBOL(mlx5_core_modify_sq);
|
||||
|
||||
void mlx5_core_destroy_sq(struct mlx5_core_dev *dev, u32 sqn)
|
||||
{
|
||||
|
@ -162,6 +166,7 @@ int mlx5_core_create_tir(struct mlx5_core_dev *dev, u32 *in, int inlen,
|
|||
|
||||
return err;
|
||||
}
|
||||
EXPORT_SYMBOL(mlx5_core_create_tir);
|
||||
|
||||
int mlx5_core_modify_tir(struct mlx5_core_dev *dev, u32 tirn, u32 *in,
|
||||
int inlen)
|
||||
|
@ -187,6 +192,7 @@ void mlx5_core_destroy_tir(struct mlx5_core_dev *dev, u32 tirn)
|
|||
|
||||
mlx5_cmd_exec_check_status(dev, in, sizeof(in), out, sizeof(out));
|
||||
}
|
||||
EXPORT_SYMBOL(mlx5_core_destroy_tir);
|
||||
|
||||
int mlx5_core_create_tis(struct mlx5_core_dev *dev, u32 *in, int inlen,
|
||||
u32 *tisn)
|
||||
|
@ -203,6 +209,7 @@ int mlx5_core_create_tis(struct mlx5_core_dev *dev, u32 *in, int inlen,
|
|||
|
||||
return err;
|
||||
}
|
||||
EXPORT_SYMBOL(mlx5_core_create_tis);
|
||||
|
||||
void mlx5_core_destroy_tis(struct mlx5_core_dev *dev, u32 tisn)
|
||||
{
|
||||
|
@ -216,6 +223,7 @@ void mlx5_core_destroy_tis(struct mlx5_core_dev *dev, u32 tisn)
|
|||
|
||||
mlx5_cmd_exec_check_status(dev, in, sizeof(in), out, sizeof(out));
|
||||
}
|
||||
EXPORT_SYMBOL(mlx5_core_destroy_tis);
|
||||
|
||||
int mlx5_core_create_rmp(struct mlx5_core_dev *dev, u32 *in, int inlen,
|
||||
u32 *rmpn)
|
||||
|
|
|
@ -33,8 +33,10 @@
|
|||
#ifndef __TRANSOBJ_H__
|
||||
#define __TRANSOBJ_H__
|
||||
|
||||
int mlx5_alloc_transport_domain(struct mlx5_core_dev *dev, u32 *tdn);
|
||||
void mlx5_dealloc_transport_domain(struct mlx5_core_dev *dev, u32 tdn);
|
||||
#include <linux/mlx5/driver.h>
|
||||
|
||||
int mlx5_core_alloc_transport_domain(struct mlx5_core_dev *dev, u32 *tdn);
|
||||
void mlx5_core_dealloc_transport_domain(struct mlx5_core_dev *dev, u32 tdn);
|
||||
int mlx5_core_create_rq(struct mlx5_core_dev *dev, u32 *in, int inlen,
|
||||
u32 *rqn);
|
||||
int mlx5_core_modify_rq(struct mlx5_core_dev *dev, u32 rqn, u32 *in, int inlen);
|
Loading…
Reference in a new issue