X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=drivers%2Fnet%2Fmlx5%2Fmlx5_devx.c;h=a1db53577a2c6f1720cf0a1d81cbd2ae8af06a10;hb=63abf8d292252193db075e3264cceb3f6817ed79;hp=e4acab90c8fd625d56883f959e3aadd856342c66;hpb=00984de53312b8af1bb1b6579d69a3eeda4be381;p=dpdk.git diff --git a/drivers/net/mlx5/mlx5_devx.c b/drivers/net/mlx5/mlx5_devx.c index e4acab90c8..a1db53577a 100644 --- a/drivers/net/mlx5/mlx5_devx.c +++ b/drivers/net/mlx5/mlx5_devx.c @@ -20,7 +20,8 @@ #include "mlx5.h" #include "mlx5_common_os.h" -#include "mlx5_rxtx.h" +#include "mlx5_tx.h" +#include "mlx5_rx.h" #include "mlx5_utils.h" #include "mlx5_devx.h" #include "mlx5_flow.h" @@ -248,6 +249,7 @@ mlx5_rxq_create_devx_rq_resources(struct rte_eth_dev *dev, uint16_t idx) rq_attr.vsd = (rxq_data->vlan_strip) ? 0 : 1; rq_attr.cqn = rxq_ctrl->obj->cq_obj.cq->id; rq_attr.scatter_fcs = (rxq_data->crc_present) ? 1 : 0; + rq_attr.ts_format = mlx5_ts_format_conv(priv->sh->rq_ts_format); /* Fill WQ attributes for this RQ. */ if (mlx5_rxq_mprq_enabled(rxq_data)) { rq_attr.wq_attr.wq_type = MLX5_WQ_TYPE_CYCLIC_STRIDING_RQ; @@ -275,6 +277,7 @@ mlx5_rxq_create_devx_rq_resources(struct rte_eth_dev *dev, uint16_t idx) MLX5_WQ_END_PAD_MODE_ALIGN : MLX5_WQ_END_PAD_MODE_NONE; rq_attr.wq_attr.pd = priv->sh->pdn; + rq_attr.counter_set_id = priv->counter_set_id; /* Create RQ using DevX API. */ return mlx5_devx_rq_create(priv->sh->ctx, &rxq_ctrl->obj->rq_obj, wqe_size, log_desc_n, &rq_attr, @@ -438,6 +441,7 @@ mlx5_rxq_obj_hairpin_new(struct rte_eth_dev *dev, uint16_t idx) attr.wq_attr.log_hairpin_num_packets = attr.wq_attr.log_hairpin_data_sz - MLX5_HAIRPIN_QUEUE_STRIDE; + attr.counter_set_id = priv->counter_set_id; tmpl->rq = mlx5_devx_cmd_create_rq(priv->sh->ctx, &attr, rxq_ctrl->socket); if (!tmpl->rq) { @@ -994,8 +998,8 @@ mlx5_txq_create_devx_sq_resources(struct rte_eth_dev *dev, uint16_t idx, .uar_page = mlx5_os_get_devx_uar_page_id(priv->sh->tx_uar), }, + .ts_format = mlx5_ts_format_conv(priv->sh->sq_ts_format), }; - /* Create Send Queue object with DevX. */ return mlx5_devx_sq_create(priv->sh->ctx, &txq_obj->sq_obj, log_desc_n, &sq_attr, priv->sh->numa_node); @@ -1110,7 +1114,7 @@ mlx5_txq_devx_obj_new(struct rte_eth_dev *dev, uint16_t idx) txq_data->wqe_pi = 0; txq_data->wqe_comp = 0; txq_data->wqe_thres = txq_data->wqe_s / MLX5_TX_COMP_THRESH_INLINE_DIV; - txq_data->qp_db = txq_obj->sq_obj.db_rec; + txq_data->qp_db = &txq_obj->sq_obj.db_rec[MLX5_SND_DBR]; *txq_data->qp_db = 0; txq_data->qp_num_8s = txq_obj->sq_obj.sq->id << 8; /* Change Send Queue state to Ready-to-Send. */ @@ -1185,4 +1189,6 @@ struct mlx5_obj_ops devx_obj_ops = { .txq_obj_new = mlx5_txq_devx_obj_new, .txq_obj_modify = mlx5_devx_modify_sq, .txq_obj_release = mlx5_txq_devx_obj_release, + .lb_dummy_queue_create = NULL, + .lb_dummy_queue_release = NULL, };