/Linux-v5.4/drivers/net/ethernet/mellanox/mlx4/ |
D | en_cq.c | 98 cq->mcq.set_ci_db = cq->wqres.db.db; in mlx4_en_activate_cq() 99 cq->mcq.arm_db = cq->wqres.db.db + 1; in mlx4_en_activate_cq() 100 *cq->mcq.set_ci_db = 0; in mlx4_en_activate_cq() 101 *cq->mcq.arm_db = 0; in mlx4_en_activate_cq() 140 cq->mcq.usage = MLX4_RES_USAGE_DRIVER; in mlx4_en_activate_cq() 142 &mdev->priv_uar, cq->wqres.db.dma, &cq->mcq, in mlx4_en_activate_cq() 147 cq->mcq.event = mlx4_en_cq_event; in mlx4_en_activate_cq() 151 cq->mcq.comp = mlx4_en_tx_irq; in mlx4_en_activate_cq() 157 cq->mcq.comp = mlx4_en_rx_irq; in mlx4_en_activate_cq() 199 mlx4_cq_free(priv->mdev->dev, &cq->mcq); in mlx4_en_deactivate_cq() [all …]
|
D | cq.c | 63 struct mlx4_cq *mcq, *temp; in mlx4_cq_tasklet_cb() local 69 list_for_each_entry_safe(mcq, temp, &ctx->process_list, tasklet_ctx.list) { in mlx4_cq_tasklet_cb() 70 list_del_init(&mcq->tasklet_ctx.list); in mlx4_cq_tasklet_cb() 71 mcq->tasklet_ctx.comp(mcq); in mlx4_cq_tasklet_cb() 72 if (refcount_dec_and_test(&mcq->refcount)) in mlx4_cq_tasklet_cb() 73 complete(&mcq->free); in mlx4_cq_tasklet_cb()
|
D | en_rx.c | 341 ring->cqn = priv->rx_cq[ring_ind]->mcq.cqn; in mlx4_en_activate_rx_rings() 691 index = cq->mcq.cons_index & ring->size_mask; in mlx4_en_process_rx_cq() 696 cq->mcq.cons_index & cq->size)) { in mlx4_en_process_rx_cq() 897 ++cq->mcq.cons_index; in mlx4_en_process_rx_cq() 898 index = (cq->mcq.cons_index) & ring->size_mask; in mlx4_en_process_rx_cq() 912 mlx4_cq_set_ci(&cq->mcq); in mlx4_en_process_rx_cq() 914 ring->cons = cq->mcq.cons_index; in mlx4_en_process_rx_cq() 924 void mlx4_en_rx_irq(struct mlx4_cq *mcq) in mlx4_en_rx_irq() argument 926 struct mlx4_en_cq *cq = container_of(mcq, struct mlx4_en_cq, mcq); in mlx4_en_rx_irq()
|
D | en_tx.c | 389 struct mlx4_cq *mcq = &cq->mcq; in mlx4_en_process_tx_cq() local 395 u32 cons_index = mcq->cons_index; in mlx4_en_process_tx_cq() 474 mcq->cons_index = cons_index; in mlx4_en_process_tx_cq() 475 mlx4_cq_set_ci(mcq); in mlx4_en_process_tx_cq() 498 void mlx4_en_tx_irq(struct mlx4_cq *mcq) in mlx4_en_tx_irq() argument 500 struct mlx4_en_cq *cq = container_of(mcq, struct mlx4_en_cq, mcq); in mlx4_en_tx_irq()
|
D | mlx4_en.h | 366 struct mlx4_cq mcq; member 699 void mlx4_en_tx_irq(struct mlx4_cq *mcq); 762 void mlx4_en_rx_irq(struct mlx4_cq *mcq);
|
/Linux-v5.4/drivers/infiniband/hw/mlx4/ |
D | cq.c | 90 return get_sw_cqe(cq, cq->mcq.cons_index); in next_cqe_sw() 95 struct mlx4_ib_cq *mcq = to_mcq(cq); in mlx4_ib_modify_cq() local 98 return mlx4_cq_modify(dev->dev, &mcq->mcq, cq_count, cq_period); in mlx4_ib_modify_cq() 224 cq->mcq.usage = MLX4_RES_USAGE_USER_VERBS; in mlx4_ib_create_cq() 230 cq->mcq.set_ci_db = cq->db.db; in mlx4_ib_create_cq() 231 cq->mcq.arm_db = cq->db.db + 1; in mlx4_ib_create_cq() 232 *cq->mcq.set_ci_db = 0; in mlx4_ib_create_cq() 233 *cq->mcq.arm_db = 0; in mlx4_ib_create_cq() 242 cq->mcq.usage = MLX4_RES_USAGE_DRIVER; in mlx4_ib_create_cq() 249 &cq->mcq, vector, 0, in mlx4_ib_create_cq() [all …]
|
D | qp.c | 866 struct mlx4_ib_cq *mcq; in create_rq() local 968 mcq = to_mcq(init_attr->send_cq); in create_rq() 969 list_add_tail(&qp->cq_send_list, &mcq->send_qp_list); in create_rq() 970 mcq = to_mcq(init_attr->recv_cq); in create_rq() 971 list_add_tail(&qp->cq_recv_list, &mcq->recv_qp_list); in create_rq() 1002 struct mlx4_ib_cq *mcq; in create_qp_common() local 1255 mcq = to_mcq(init_attr->send_cq); in create_qp_common() 1256 list_add_tail(&qp->cq_send_list, &mcq->send_qp_list); in create_qp_common() 1257 mcq = to_mcq(init_attr->recv_cq); in create_qp_common() 1258 list_add_tail(&qp->cq_recv_list, &mcq->recv_qp_list); in create_qp_common() [all …]
|
D | mlx4_ib.h | 117 struct mlx4_cq mcq; member 666 static inline struct mlx4_ib_cq *to_mibcq(struct mlx4_cq *mcq) in to_mibcq() argument 668 return container_of(mcq, struct mlx4_ib_cq, mcq); in to_mibcq()
|
D | main.c | 3096 struct mlx4_cq *mcq; in mlx4_ib_handle_catas_error() local 3110 if (send_mcq->mcq.comp && in mlx4_ib_handle_catas_error() 3112 if (!send_mcq->mcq.reset_notify_added) { in mlx4_ib_handle_catas_error() 3113 send_mcq->mcq.reset_notify_added = 1; in mlx4_ib_handle_catas_error() 3114 list_add_tail(&send_mcq->mcq.reset_notify, in mlx4_ib_handle_catas_error() 3128 if (recv_mcq->mcq.comp && in mlx4_ib_handle_catas_error() 3130 if (!recv_mcq->mcq.reset_notify_added) { in mlx4_ib_handle_catas_error() 3131 recv_mcq->mcq.reset_notify_added = 1; in mlx4_ib_handle_catas_error() 3132 list_add_tail(&recv_mcq->mcq.reset_notify, in mlx4_ib_handle_catas_error() 3143 list_for_each_entry(mcq, &cq_notify_list, reset_notify) { in mlx4_ib_handle_catas_error() [all …]
|
/Linux-v5.4/drivers/infiniband/hw/mlx5/ |
D | cq.c | 47 static void mlx5_ib_cq_event(struct mlx5_core_cq *mcq, enum mlx5_event type) in mlx5_ib_cq_event() argument 49 struct mlx5_ib_cq *cq = container_of(mcq, struct mlx5_ib_cq, mcq); in mlx5_ib_cq_event() 56 type, mcq->cqn); in mlx5_ib_cq_event() 83 cqe64 = (cq->mcq.cqe_sz == 64) ? cqe : cqe + 64; in get_sw_cqe() 95 return get_sw_cqe(cq, cq->mcq.cons_index); in next_cqe_sw() 440 cqe64 = (cq->mcq.cqe_sz == 64) ? cqe : cqe + 64; in mlx5_poll_one() 442 ++cq->mcq.cons_index; in mlx5_poll_one() 498 "Requestor" : "Responder", cq->mcq.cqn); in mlx5_poll_one() 534 cq->mcq.cqn, mr->sig->err_item.key, in mlx5_poll_one() 559 cq->mcq.cqn); in poll_soft_wc() [all …]
|
D | qp.c | 2223 MLX5_SET(qpc, qpc, cqn_rcv, to_mcq(devr->c0)->mcq.cqn); in create_qp_common() 2224 MLX5_SET(qpc, qpc, cqn_snd, to_mcq(devr->c0)->mcq.cqn); in create_qp_common() 2229 MLX5_SET(qpc, qpc, cqn_rcv, to_mcq(devr->c0)->mcq.cqn); in create_qp_common() 2244 MLX5_SET(qpc, qpc, cqn_snd, to_mcq(init_attr->send_cq)->mcq.cqn); in create_qp_common() 2247 MLX5_SET(qpc, qpc, cqn_rcv, to_mcq(init_attr->recv_cq)->mcq.cqn); in create_qp_common() 2335 if (send_cq->mcq.cqn < recv_cq->mcq.cqn) { in mlx5_ib_lock_cqs() 2339 } else if (send_cq->mcq.cqn == recv_cq->mcq.cqn) { in mlx5_ib_lock_cqs() 2365 if (send_cq->mcq.cqn < recv_cq->mcq.cqn) { in mlx5_ib_unlock_cqs() 2368 } else if (send_cq->mcq.cqn == recv_cq->mcq.cqn) { in mlx5_ib_unlock_cqs() 2574 MLX5_SET(dctc, dctc, cqn, to_mcq(attr->recv_cq)->mcq.cqn); in mlx5_ib_create_dct() [all …]
|
D | mlx5_ib.h | 504 struct mlx5_core_cq mcq; member 1004 static inline struct mlx5_ib_cq *to_mibcq(struct mlx5_core_cq *mcq) in to_mibcq() argument 1006 return container_of(mcq, struct mlx5_ib_cq, mcq); in to_mibcq()
|
D | srq.c | 295 in.cqn = to_mcq(init_attr->ext.cq)->mcq.cqn; in mlx5_ib_create_srq() 297 in.cqn = to_mcq(dev->devr.c0)->mcq.cqn; in mlx5_ib_create_srq()
|
/Linux-v5.4/drivers/net/ethernet/mellanox/mlx5/core/ |
D | en_dim.c | 38 struct mlx5_core_dev *mdev, struct mlx5_core_cq *mcq) in mlx5e_complete_dim_work() argument 40 mlx5_core_modify_cq_moderation(mdev, mcq, moder.usec, moder.pkts); in mlx5e_complete_dim_work() 51 mlx5e_complete_dim_work(dim, cur_moder, rq->mdev, &rq->cq.mcq); in mlx5e_rx_dim_work() 61 mlx5e_complete_dim_work(dim, cur_moder, sq->cq.mdev, &sq->cq.mcq); in mlx5e_tx_dim_work()
|
D | en_txrx.c | 194 void mlx5e_completion_event(struct mlx5_core_cq *mcq, struct mlx5_eqe *eqe) in mlx5e_completion_event() argument 196 struct mlx5e_cq *cq = container_of(mcq, struct mlx5e_cq, mcq); in mlx5e_completion_event() 203 void mlx5e_cq_error_event(struct mlx5_core_cq *mcq, enum mlx5_event event) in mlx5e_cq_error_event() argument 205 struct mlx5e_cq *cq = container_of(mcq, struct mlx5e_cq, mcq); in mlx5e_cq_error_event() 210 __func__, mcq->cqn, event); in mlx5e_cq_error_event()
|
D | cq.c | 51 struct mlx5_core_cq *mcq; in mlx5_cq_tasklet_cb() local 58 list_for_each_entry_safe(mcq, temp, &ctx->process_list, in mlx5_cq_tasklet_cb() 60 list_del_init(&mcq->tasklet_ctx.list); in mlx5_cq_tasklet_cb() 61 mcq->tasklet_ctx.comp(mcq, NULL); in mlx5_cq_tasklet_cb() 62 mlx5_cq_put(mcq); in mlx5_cq_tasklet_cb()
|
D | en_main.c | 696 MLX5_SET(rqc, rqc, cqn, rq->cq.mcq.cqn); in mlx5e_create_rq() 1306 csp.cqn = sq->cq.mcq.cqn; in mlx5e_open_txqsq() 1404 csp.cqn = sq->cq.mcq.cqn; in mlx5e_open_icosq() 1453 csp.cqn = sq->cq.mcq.cqn; in mlx5e_open_xdpsq() 1517 struct mlx5_core_cq *mcq = &cq->mcq; in mlx5e_alloc_cq_common() local 1532 mcq->cqe_sz = 64; in mlx5e_alloc_cq_common() 1533 mcq->set_ci_db = cq->wq_ctrl.db.db; in mlx5e_alloc_cq_common() 1534 mcq->arm_db = cq->wq_ctrl.db.db + 1; in mlx5e_alloc_cq_common() 1535 *mcq->set_ci_db = 0; in mlx5e_alloc_cq_common() 1536 *mcq->arm_db = 0; in mlx5e_alloc_cq_common() [all …]
|
D | en.h | 325 struct mlx5_core_cq mcq; member 912 void mlx5e_completion_event(struct mlx5_core_cq *mcq, struct mlx5_eqe *eqe); 913 void mlx5e_cq_error_event(struct mlx5_core_cq *mcq, enum mlx5_event event);
|
/Linux-v5.4/drivers/net/ethernet/mellanox/mlx5/core/fpga/ |
D | conn.c | 361 mlx5_cq_arm(&conn->cq.mcq, MLX5_CQ_DB_REQ_NOT, in mlx5_fpga_conn_arm_cq() 365 static void mlx5_fpga_conn_cq_event(struct mlx5_core_cq *mcq, in mlx5_fpga_conn_cq_event() argument 370 conn = container_of(mcq, struct mlx5_fpga_conn, cq.mcq); in mlx5_fpga_conn_cq_event() 371 mlx5_fpga_warn(conn->fdev, "CQ event %u on CQ #%u\n", event, mcq->cqn); in mlx5_fpga_conn_cq_event() 417 static void mlx5_fpga_conn_cq_complete(struct mlx5_core_cq *mcq, in mlx5_fpga_conn_cq_complete() argument 422 conn = container_of(mcq, struct mlx5_fpga_conn, cq.mcq); in mlx5_fpga_conn_cq_complete() 483 err = mlx5_core_create_cq(mdev, &conn->cq.mcq, in, inlen, out, sizeof(out)); in mlx5_fpga_conn_create_cq() 489 conn->cq.mcq.cqe_sz = 64; in mlx5_fpga_conn_create_cq() 490 conn->cq.mcq.set_ci_db = conn->cq.wq_ctrl.db.db; in mlx5_fpga_conn_create_cq() 491 conn->cq.mcq.arm_db = conn->cq.wq_ctrl.db.db + 1; in mlx5_fpga_conn_create_cq() [all …]
|
D | conn.h | 58 struct mlx5_core_cq mcq; member
|
/Linux-v5.4/drivers/net/ethernet/mellanox/mlx5/core/en/ |
D | txrx.h | 144 struct mlx5_core_cq *mcq; in mlx5e_cq_arm() local 146 mcq = &cq->mcq; in mlx5e_cq_arm() 147 mlx5_cq_arm(mcq, MLX5_CQ_DB_REQ_NOT, mcq->uar->map, cq->wq.cc); in mlx5e_cq_arm()
|
D | health.c | 45 err = mlx5_core_query_cq(priv->mdev, &cq->mcq, out, sizeof(out)); in mlx5e_reporter_cq_diagnose() 56 err = devlink_fmsg_u32_pair_put(fmsg, "cqn", cq->mcq.cqn); in mlx5e_reporter_cq_diagnose()
|
D | reporter_tx.c | 105 eq = sq->cq.mcq.eq; in mlx5e_tx_reporter_timeout_recover() 123 sq->channel->ix, sq->sqn, sq->cq.mcq.cqn, sq->cc, sq->pc, in mlx5e_reporter_tx_timeout()
|
D | reporter_rx.c | 196 eq = rq->cq.mcq.eq; in mlx5e_rx_reporter_timeout_recover() 214 icosq->channel->ix, icosq->sqn, rq->rqn, rq->cq.mcq.cqn); in mlx5e_reporter_rx_timeout()
|
/Linux-v5.4/drivers/net/ethernet/mellanox/mlx5/core/steering/ |
D | dr_send.c | 684 static void dr_cq_event(struct mlx5_core_cq *mcq, in dr_cq_event() argument 687 pr_info("CQ event %u on CQ #%u\n", event, mcq->cqn); in dr_cq_event() 750 cq->mcq.event = dr_cq_event; in dr_create_cq() 752 err = mlx5_core_create_cq(mdev, &cq->mcq, in, inlen, out, sizeof(out)); in dr_create_cq() 758 cq->mcq.cqe_sz = 64; in dr_create_cq() 759 cq->mcq.set_ci_db = cq->wq_ctrl.db.db; in dr_create_cq() 760 cq->mcq.arm_db = cq->wq_ctrl.db.db + 1; in dr_create_cq() 761 *cq->mcq.set_ci_db = 0; in dr_create_cq() 762 *cq->mcq.arm_db = 0; in dr_create_cq() 763 cq->mcq.vector = 0; in dr_create_cq() [all …]
|