From: Ophir Munk <ophi...@mellanox.com>

Replace pointers to ibv structs with pointers to void (file
mlx5_rxtx.h).  Specifically the following pointers were replaced:
'struct ibv_cq *', 'struct ibv_wq *', 'struct ibv_comp_channel *',
'struct ibv_rwq_ind_table *a', 'struct ibv_qp *'.

Signed-off-by: Ophir Munk <ophi...@mellanox.com>
Acked-by: Matan Azrad <ma...@mellanox.com>
---
 drivers/net/mlx5/mlx5_rxq.c     | 14 +++++++-------
 drivers/net/mlx5/mlx5_rxtx.h    | 14 +++++++-------
 drivers/net/mlx5/mlx5_trigger.c |  2 +-
 drivers/net/mlx5/mlx5_txq.c     |  2 +-
 4 files changed, 16 insertions(+), 16 deletions(-)

diff --git a/drivers/net/mlx5/mlx5_rxq.c b/drivers/net/mlx5/mlx5_rxq.c
index 79eb8f8..534f1b7 100644
--- a/drivers/net/mlx5/mlx5_rxq.c
+++ b/drivers/net/mlx5/mlx5_rxq.c
@@ -1444,7 +1444,7 @@ mlx5_devx_wq_attr_fill(struct mlx5_priv *priv, struct 
mlx5_rxq_ctrl *rxq_ctrl,
        wq_attr->dbr_addr = rxq_ctrl->rq_dbr_offset;
        wq_attr->dbr_umem_id = rxq_ctrl->rq_dbr_umem_id;
        wq_attr->dbr_umem_valid = 1;
-       wq_attr->wq_umem_id = rxq_ctrl->wq_umem->umem_id;
+       wq_attr->wq_umem_id = mlx5_os_get_umem_id(rxq_ctrl->wq_umem);
        wq_attr->wq_umem_valid = 1;
 }
 
@@ -1620,8 +1620,8 @@ mlx5_devx_cq_new(struct rte_eth_dev *dev, unsigned int 
cqe_n, uint16_t idx,
                DRV_LOG(ERR, "Failed to register umem for CQ.");
                goto error;
        }
-       cq_attr.uar_page_id = priv->sh->devx_rx_uar->page_id;
-       cq_attr.q_umem_id = rxq_ctrl->cq_umem->umem_id;
+       cq_attr.uar_page_id = 
mlx5_os_get_devx_uar_page_id(priv->sh->devx_rx_uar);
+       cq_attr.q_umem_id = mlx5_os_get_umem_id(rxq_ctrl->cq_umem);
        cq_attr.q_umem_valid = 1;
        cq_attr.log_cq_size = log_cqe_n;
        cq_attr.log_page_size = rte_log2_u32(page_size);
@@ -1789,7 +1789,7 @@ mlx5_rxq_obj_new(struct rte_eth_dev *dev, uint16_t idx,
                                rte_errno = ENOMEM;
                                goto error;
                        }
-                       tmpl->fd = tmpl->ibv_channel->fd;
+                       tmpl->fd = ((struct ibv_comp_channel 
*)(tmpl->ibv_channel))->fd;
                } else if (tmpl->type == MLX5_RXQ_OBJ_TYPE_DEVX_RQ) {
                        int devx_ev_flag =
                          MLX5DV_DEVX_CREATE_EVENT_CHANNEL_FLAGS_OMIT_EV_DATA;
@@ -1805,7 +1805,7 @@ mlx5_rxq_obj_new(struct rte_eth_dev *dev, uint16_t idx,
                                        rte_errno);
                                goto error;
                        }
-                       tmpl->fd = tmpl->devx_channel->fd;
+                       tmpl->fd = 
mlx5_os_get_devx_channel_fd(tmpl->devx_channel);
                }
        }
        if (mlx5_rxq_mprq_enabled(rxq_data))
@@ -1897,7 +1897,7 @@ mlx5_rxq_obj_new(struct rte_eth_dev *dev, uint16_t idx,
                rxq_data->cq_db =
                        (uint32_t *)((uintptr_t)dbr_page->dbrs +
                                     (uintptr_t)rxq_ctrl->cq_dbr_offset);
-               rxq_data->cq_uar = priv->sh->devx_rx_uar->base_addr;
+               rxq_data->cq_uar = 
mlx5_os_get_devx_uar_base_addr(priv->sh->devx_rx_uar);
                /* Create CQ using DevX API. */
                tmpl->devx_cq = mlx5_devx_cq_new(dev, cqe_n, idx, tmpl);
                if (!tmpl->devx_cq) {
@@ -3296,7 +3296,7 @@ mlx5_ind_table_obj_drop_new(struct rte_eth_dev *dev)
                (priv->sh->ctx,
                 &(struct ibv_rwq_ind_table_init_attr){
                        .log_ind_tbl_size = 0,
-                       .ind_tbl = &rxq->wq,
+                       .ind_tbl = (struct ibv_wq **)&rxq->wq,
                        .comp_mask = 0,
                 });
        if (!tmpl.ind_table) {
diff --git a/drivers/net/mlx5/mlx5_rxtx.h b/drivers/net/mlx5/mlx5_rxtx.h
index 0fc7754..f3fe2e1 100644
--- a/drivers/net/mlx5/mlx5_rxtx.h
+++ b/drivers/net/mlx5/mlx5_rxtx.h
@@ -178,9 +178,9 @@ struct mlx5_rxq_obj {
        RTE_STD_C11
        union {
                struct {
-                       struct ibv_wq *wq; /* Work Queue. */
-                       struct ibv_cq *ibv_cq; /* Completion Queue. */
-                       struct ibv_comp_channel *ibv_channel;
+                       void *wq; /* Work Queue. */
+                       void *ibv_cq; /* Completion Queue. */
+                       void *ibv_channel;
                };
                struct {
                        struct mlx5_devx_obj *rq; /* DevX Rx Queue object. */
@@ -229,7 +229,7 @@ struct mlx5_ind_table_obj {
        enum mlx5_ind_tbl_type type;
        RTE_STD_C11
        union {
-               struct ibv_rwq_ind_table *ind_table; /**< Indirection table. */
+               void *ind_table; /**< Indirection table. */
                struct mlx5_devx_obj *rqt; /* DevX RQT object. */
        };
        uint32_t queues_n; /**< Number of queues in the list. */
@@ -243,7 +243,7 @@ struct mlx5_hrxq {
        struct mlx5_ind_table_obj *ind_table; /* Indirection table. */
        RTE_STD_C11
        union {
-               struct ibv_qp *qp; /* Verbs queue pair. */
+               void *qp; /* Verbs queue pair. */
                struct mlx5_devx_obj *tir; /* DevX TIR object. */
        };
 #ifdef HAVE_IBV_FLOW_DV_SUPPORT
@@ -350,8 +350,8 @@ struct mlx5_txq_obj {
        RTE_STD_C11
        union {
                struct {
-                       struct ibv_cq *cq; /* Completion Queue. */
-                       struct ibv_qp *qp; /* Queue Pair. */
+                       void *cq; /* Completion Queue. */
+                       void *qp; /* Queue Pair. */
                };
                struct {
                        struct mlx5_devx_obj *sq;
diff --git a/drivers/net/mlx5/mlx5_trigger.c b/drivers/net/mlx5/mlx5_trigger.c
index 6f1e6d4..2a98064 100644
--- a/drivers/net/mlx5/mlx5_trigger.c
+++ b/drivers/net/mlx5/mlx5_trigger.c
@@ -153,7 +153,7 @@ mlx5_rxq_start(struct rte_eth_dev *dev)
                if (!rxq_ctrl->obj)
                        goto error;
                if (obj_type == MLX5_RXQ_OBJ_TYPE_IBV)
-                       rxq_ctrl->wqn = rxq_ctrl->obj->wq->wq_num;
+                       rxq_ctrl->wqn = ((struct ibv_wq 
*)(rxq_ctrl->obj->wq))->wq_num;
                else if (obj_type == MLX5_RXQ_OBJ_TYPE_DEVX_RQ)
                        rxq_ctrl->wqn = rxq_ctrl->obj->rq->id;
        }
diff --git a/drivers/net/mlx5/mlx5_txq.c b/drivers/net/mlx5/mlx5_txq.c
index fed9d8a..66ad368 100644
--- a/drivers/net/mlx5/mlx5_txq.c
+++ b/drivers/net/mlx5/mlx5_txq.c
@@ -1317,7 +1317,7 @@ mlx5_txq_obj_new(struct rte_eth_dev *dev, uint16_t idx,
        txq_data->cqe_n = log2above(cq_info.cqe_cnt);
        txq_data->cqe_s = 1 << txq_data->cqe_n;
        txq_data->cqe_m = txq_data->cqe_s - 1;
-       txq_data->qp_num_8s = tmpl.qp->qp_num << 8;
+       txq_data->qp_num_8s = ((struct ibv_qp *)tmpl.qp)->qp_num << 8;
        txq_data->wqes = qp.sq.buf;
        txq_data->wqe_n = log2above(qp.sq.wqe_cnt);
        txq_data->wqe_s = 1 << txq_data->wqe_n;
-- 
2.8.4

Reply via email to