| /linux/drivers/infiniband/hw/mlx4/ |
| H A 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() 228 cq->mcq.usage = MLX4_RES_USAGE_USER_VERBS; in mlx4_ib_create_cq() 234 cq->mcq.set_ci_db = cq->db.db; in mlx4_ib_create_cq() 235 cq->mcq.arm_db = cq->db.db + 1; in mlx4_ib_create_cq() 236 *cq->mcq.set_ci_db = 0; in mlx4_ib_create_cq() 237 *cq->mcq.arm_db = 0; in mlx4_ib_create_cq() 246 cq->mcq.usage = MLX4_RES_USAGE_DRIVER; in mlx4_ib_create_cq() 253 &cq->mcq, vector, 0, in mlx4_ib_create_cq() [all …]
|
| H A D | qp.c | 867 struct mlx4_ib_cq *mcq; in create_rq() local 971 mcq = to_mcq(init_attr->send_cq); in create_rq() 972 list_add_tail(&qp->cq_send_list, &mcq->send_qp_list); in create_rq() 973 mcq = to_mcq(init_attr->recv_cq); in create_rq() 974 list_add_tail(&qp->cq_recv_list, &mcq->recv_qp_list); in create_rq() 1003 struct mlx4_ib_cq *mcq; in create_qp_common() local 1249 mcq = to_mcq(init_attr->send_cq); in create_qp_common() 1250 list_add_tail(&qp->cq_send_list, &mcq->send_qp_list); in create_qp_common() 1251 mcq = to_mcq(init_attr->recv_cq); in create_qp_common() 1252 list_add_tail(&qp->cq_recv_list, &mcq->recv_qp_list); in create_qp_common() [all …]
|
| H A D | main.c | 3074 struct mlx4_cq *mcq; in mlx4_ib_handle_catas_error() local 3088 if (send_mcq->mcq.comp && in mlx4_ib_handle_catas_error() 3090 if (!send_mcq->mcq.reset_notify_added) { in mlx4_ib_handle_catas_error() 3091 send_mcq->mcq.reset_notify_added = 1; in mlx4_ib_handle_catas_error() 3092 list_add_tail(&send_mcq->mcq.reset_notify, in mlx4_ib_handle_catas_error() 3106 if (recv_mcq->mcq.comp && in mlx4_ib_handle_catas_error() 3108 if (!recv_mcq->mcq.reset_notify_added) { in mlx4_ib_handle_catas_error() 3109 recv_mcq->mcq.reset_notify_added = 1; in mlx4_ib_handle_catas_error() 3110 list_add_tail(&recv_mcq->mcq.reset_notify, in mlx4_ib_handle_catas_error() 3121 list_for_each_entry(mcq, &cq_notify_list, reset_notify) { in mlx4_ib_handle_catas_error() [all …]
|
| /linux/drivers/infiniband/hw/mlx5/ |
| H A D | cq.c | 51 static void mlx5_ib_cq_event(struct mlx5_core_cq *mcq, enum mlx5_event type) in mlx5_ib_cq_event() argument 53 struct mlx5_ib_cq *cq = container_of(mcq, struct mlx5_ib_cq, mcq); in mlx5_ib_cq_event() 60 type, mcq->cqn); in mlx5_ib_cq_event() 87 cqe64 = (cq->mcq.cqe_sz == 64) ? cqe : cqe + 64; in get_sw_cqe() 99 return get_sw_cqe(cq, cq->mcq.cons_index); in next_cqe_sw() 470 cqe64 = (cq->mcq.cqe_sz == 64) ? cqe : cqe + 64; in mlx5_poll_one() 472 ++cq->mcq.cons_index; in mlx5_poll_one() 529 "Requestor" : "Responder", cq->mcq.cqn); in mlx5_poll_one() 570 cq->mcq.cqn, sig->err_item.key, in mlx5_poll_one() 596 cq->mcq.cqn); in poll_soft_wc() [all …]
|
| H A D | qp.c | 2033 MLX5_SET(qpc, qpc, cqn_rcv, to_mcq(devr->c0)->mcq.cqn); in create_xrc_tgt_qp() 2034 MLX5_SET(qpc, qpc, cqn_snd, to_mcq(devr->c0)->mcq.cqn); in create_xrc_tgt_qp() 2176 to_mcq(init_attr->send_cq)->mcq.cqn); in create_dci() 2180 to_mcq(init_attr->recv_cq)->mcq.cqn); in create_dci() 2357 MLX5_SET(qpc, qpc, cqn_rcv, to_mcq(devr->c0)->mcq.cqn); in create_user_qp() 2372 MLX5_SET(qpc, qpc, cqn_snd, to_mcq(init_attr->send_cq)->mcq.cqn); in create_user_qp() 2375 MLX5_SET(qpc, qpc, cqn_rcv, to_mcq(init_attr->recv_cq)->mcq.cqn); in create_user_qp() 2515 MLX5_SET(qpc, qpc, cqn_snd, to_mcq(attr->send_cq)->mcq.cqn); in create_kernel_qp() 2518 MLX5_SET(qpc, qpc, cqn_rcv, to_mcq(attr->recv_cq)->mcq.cqn); in create_kernel_qp() 2571 if (send_cq->mcq.cqn < recv_cq->mcq.cqn) { in mlx5_ib_lock_cqs() [all …]
|
| H A D | srq.c | 281 in.cqn = to_mcq(init_attr->ext.cq)->mcq.cqn; in mlx5_ib_create_srq() 283 in.cqn = to_mcq(dev->devr.c0)->mcq.cqn; in mlx5_ib_create_srq()
|
| H A D | main.c | 2935 struct mlx5_core_cq *mcq; in mlx5_ib_handle_internal_error() local 2950 if (send_mcq->mcq.comp && in mlx5_ib_handle_internal_error() 2952 if (!send_mcq->mcq.reset_notify_added) { in mlx5_ib_handle_internal_error() 2953 send_mcq->mcq.reset_notify_added = 1; in mlx5_ib_handle_internal_error() 2954 list_add_tail(&send_mcq->mcq.reset_notify, in mlx5_ib_handle_internal_error() 2967 if (recv_mcq->mcq.comp && in mlx5_ib_handle_internal_error() 2969 if (!recv_mcq->mcq.reset_notify_added) { in mlx5_ib_handle_internal_error() 2970 recv_mcq->mcq.reset_notify_added = 1; in mlx5_ib_handle_internal_error() 2971 list_add_tail(&recv_mcq->mcq.reset_notify, in mlx5_ib_handle_internal_error() 2984 list_for_each_entry(mcq, &cq_armed_list, reset_notify) { in mlx5_ib_handle_internal_error() [all …]
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/ |
| H A D | en_dim.c | 38 struct mlx5_core_dev *mdev, struct mlx5_core_cq *mcq) in mlx5e_complete_dim_work() argument 40 mlx5e_modify_cq_moderation(mdev, mcq, moder.usec, moder.pkts, in mlx5e_complete_dim_work() 52 mlx5e_complete_dim_work(dim, cur_moder, rq->mdev, &rq->cq.mcq); in mlx5e_rx_dim_work() 62 mlx5e_complete_dim_work(dim, cur_moder, sq->cq.mdev, &sq->cq.mcq); in mlx5e_tx_dim_work() 67 u8 cq_period_mode, struct mlx5_core_cq *mcq, in mlx5e_dim_enable() argument 82 err = mlx5e_modify_cq_period_mode(mdev, mcq, dim->mode); in mlx5e_dim_enable() 107 c->rx_cq_moder.cq_period_mode, &rq->cq.mcq, rq); in mlx5e_dim_rx_change() 134 c->tx_cq_moder.cq_period_mode, &sq->cq.mcq, sq); in mlx5e_dim_tx_change()
|
| H A D | wc.c | 26 struct mlx5_core_cq mcq; member 52 struct mlx5_core_cq *mcq = &cq->mcq; in mlx5_wc_create_cqwq() local 61 mcq->cqe_sz = 64; in mlx5_wc_create_cqwq() 62 mcq->set_ci_db = cq->wq_ctrl.db.db; in mlx5_wc_create_cqwq() 63 mcq->arm_db = cq->wq_ctrl.db.db + 1; in mlx5_wc_create_cqwq() 80 struct mlx5_core_cq *mcq = &cq->mcq; in create_wc_cq() local 108 err = mlx5_core_create_cq(mdev, mcq, in, inlen, out, sizeof(out)); in create_wc_cq() 153 mlx5_core_destroy_cq(cq->mdev, &cq->mcq); in mlx5_wc_destroy_cq() 174 MLX5_SET(sqc, sqc, cqn, sq->cq.mcq.cqn); in create_wc_sq()
|
| H A D | cq.c | 49 struct mlx5_core_cq *mcq; in mlx5_cq_tasklet_cb() local 56 list_for_each_entry_safe(mcq, temp, &ctx->process_list, in mlx5_cq_tasklet_cb() 58 list_del_init(&mcq->tasklet_ctx.list); in mlx5_cq_tasklet_cb() 59 mcq->tasklet_ctx.comp(mcq, NULL); in mlx5_cq_tasklet_cb() 60 mlx5_cq_put(mcq); in mlx5_cq_tasklet_cb()
|
| H A D | en_main.c | 1112 MLX5_SET(rqc, rqc, cqn, rq->cq.mcq.cqn); in mlx5e_create_rq() 1842 csp.cqn = sq->cq.mcq.cqn; in mlx5e_open_txqsq() 2000 csp.cqn = sq->cq.mcq.cqn; in mlx5e_open_icosq() 2063 csp.cqn = sq->cq.mcq.cqn; in mlx5e_open_xdpsq() 2141 struct mlx5_core_cq *mcq = &cq->mcq; in mlx5e_alloc_cq_common() local 2150 mcq->cqe_sz = 64; in mlx5e_alloc_cq_common() 2151 mcq->set_ci_db = cq->wq_ctrl.db.db; in mlx5e_alloc_cq_common() 2152 mcq->arm_db = cq->wq_ctrl.db.db + 1; in mlx5e_alloc_cq_common() 2153 *mcq->set_ci_db = 0; in mlx5e_alloc_cq_common() 2154 mcq->vector = param->eq_ix; in mlx5e_alloc_cq_common() [all …]
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/lib/ |
| H A D | aso.c | 15 struct mlx5_core_cq mcq; member 48 struct mlx5_core_cq *mcq = &cq->mcq; in mlx5_aso_alloc_cq() local 60 mcq->cqe_sz = 64; in mlx5_aso_alloc_cq() 61 mcq->set_ci_db = cq->wq_ctrl.db.db; in mlx5_aso_alloc_cq() 62 mcq->arm_db = cq->wq_ctrl.db.db + 1; in mlx5_aso_alloc_cq() 79 struct mlx5_core_cq *mcq = &cq->mcq; in create_aso_cq() local 108 err = mlx5_core_create_cq(mdev, mcq, in, inlen, out, sizeof(out)); in create_aso_cq() 117 mlx5_core_destroy_cq(cq->mdev, &cq->mcq); in mlx5_aso_destroy_cq() 195 MLX5_SET(sqc, sqc, cqn, sq->cq.mcq.cqn); in create_aso_sq()
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/fpga/ |
| H A D | conn.c | 361 mlx5_cq_arm(&conn->cq.mcq, MLX5_CQ_DB_REQ_NOT, in mlx5_fpga_conn_arm_cq() 400 static void mlx5_fpga_conn_cq_complete(struct mlx5_core_cq *mcq, in mlx5_fpga_conn_cq_complete() argument 405 conn = container_of(mcq, struct mlx5_fpga_conn, cq.mcq); in mlx5_fpga_conn_cq_complete() 424 conn->cq.mcq.cqe_sz = 64; in mlx5_fpga_conn_create_cq() 425 conn->cq.mcq.set_ci_db = conn->cq.wq_ctrl.db.db; in mlx5_fpga_conn_create_cq() 426 conn->cq.mcq.arm_db = conn->cq.wq_ctrl.db.db + 1; in mlx5_fpga_conn_create_cq() 427 *conn->cq.mcq.set_ci_db = 0; in mlx5_fpga_conn_create_cq() 428 conn->cq.mcq.vector = 0; in mlx5_fpga_conn_create_cq() 429 conn->cq.mcq.comp = mlx5_fpga_conn_cq_complete; in mlx5_fpga_conn_create_cq() 472 err = mlx5_core_create_cq(mdev, &conn->cq.mcq, in, inlen, out, sizeof(out)); in mlx5_fpga_conn_create_cq() [all …]
|
| H A D | conn.h | 58 struct mlx5_core_cq mcq; member
|
| /linux/drivers/net/ethernet/mellanox/mlx4/ |
| H A 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()
|
| H A D | en_rx.c | 337 ring->cqn = priv->rx_cq[ring_ind]->mcq.cqn; in mlx4_en_activate_rx_rings() 711 index = cq->mcq.cons_index & ring->size_mask; in mlx4_en_process_rx_cq() 716 cq->mcq.cons_index & cq->size)) { in mlx4_en_process_rx_cq() 932 ++cq->mcq.cons_index; in mlx4_en_process_rx_cq() 933 index = (cq->mcq.cons_index) & ring->size_mask; in mlx4_en_process_rx_cq() 948 mlx4_cq_set_ci(&cq->mcq); in mlx4_en_process_rx_cq() 950 ring->cons = cq->mcq.cons_index; in mlx4_en_process_rx_cq() 959 void mlx4_en_rx_irq(struct mlx4_cq *mcq) in mlx4_en_rx_irq() argument 961 struct mlx4_en_cq *cq = container_of(mcq, struct mlx4_en_cq, mcq); in mlx4_en_rx_irq()
|
| /linux/drivers/vfio/pci/mlx5/ |
| H A D | cmd.c | 1089 mlx5_core_destroy_cq(mdev, &cq->mcq); in mlx5vf_destroy_cq() 1094 static void mlx5vf_cq_event(struct mlx5_core_cq *mcq, enum mlx5_event type) in mlx5vf_cq_event() argument 1099 set_tracker_error(container_of(mcq, struct mlx5vf_pci_core_device, in mlx5vf_cq_event() 1100 tracker.cq.mcq)); in mlx5vf_cq_event() 1143 static void mlx5vf_cq_complete(struct mlx5_core_cq *mcq, in mlx5vf_cq_complete() argument 1147 container_of(mcq, struct mlx5vf_pci_core_device, in mlx5vf_cq_complete() 1148 tracker.cq.mcq); in mlx5vf_cq_complete() 1172 cq->mcq.set_ci_db = cq->db.db; in mlx5vf_create_cq() 1173 cq->mcq.arm_db = cq->db.db + 1; in mlx5vf_create_cq() 1174 cq->mcq.cqe_sz = cqe_size; in mlx5vf_create_cq() [all …]
|
| H A D | cmd.h | 126 struct mlx5_core_cq mcq; member
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/steering/hws/ |
| H A D | send.c | 756 MLX5_SET(sqc, sqc, cqn, cq->mcq.cqn); in hws_send_ring_create_sq() 882 struct mlx5_core_cq *mcq = &cq->mcq; in hws_send_ring_alloc_cq() local 895 mcq->cqe_sz = 64; in hws_send_ring_alloc_cq() 896 mcq->set_ci_db = cq->wq_ctrl.db.db; in hws_send_ring_alloc_cq() 897 mcq->arm_db = cq->wq_ctrl.db.db + 1; in hws_send_ring_alloc_cq() 915 struct mlx5_core_cq *mcq = &cq->mcq; in hws_send_ring_create_cq() local 940 err = mlx5_core_create_cq(mdev, mcq, in, inlen, out, sizeof(out)); in hws_send_ring_create_cq() 983 mlx5_core_destroy_cq(cq->mdev, &cq->mcq); in hws_send_ring_close_cq()
|
| H A D | debug.c | 253 cq->mcq.cqn, in hws_debug_dump_context_send_engine() 260 cq->mcq.cqe_sz, in hws_debug_dump_context_send_engine()
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/steering/sws/ |
| H A D | dr_send.c | 1086 cq->mcq.cqe_sz = 64; in dr_create_cq() 1087 cq->mcq.set_ci_db = cq->wq_ctrl.db.db; in dr_create_cq() 1088 cq->mcq.arm_db = cq->wq_ctrl.db.db + 1; in dr_create_cq() 1089 *cq->mcq.set_ci_db = 0; in dr_create_cq() 1090 cq->mcq.vector = 0; in dr_create_cq() 1116 err = mlx5_core_create_cq(mdev, &cq->mcq, in, inlen, out, sizeof(out)); in dr_create_cq() 1133 mlx5_core_destroy_cq(mdev, &cq->mcq); in dr_destroy_cq() 1222 init_attr.cqn = dmn->send_ring->cq->mcq.cqn; in mlx5dr_send_ring_alloc()
|
| /linux/drivers/ufs/core/ |
| H A D | Makefile | 4 ufshcd-core-y += ufshcd.o ufs-sysfs.o ufs-mcq.o
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/en/ |
| H A D | reporter_tx.c | 153 eq = sq->cq.mcq.eq; in mlx5e_tx_reporter_timeout_recover() 283 mlx5e_health_eq_diag_fmsg(sq->cq.mcq.eq, fmsg); in mlx5e_tx_reporter_build_diagnose_output_sq_common() 560 sq->ch_ix, sq->sqn, sq->cq.mcq.cqn, sq->cc, sq->pc, in mlx5e_reporter_tx_timeout() 581 txqsq->ch_ix, txqsq->sqn, ts_cq->mcq.cqn, map->undelivered_counter, map->capacity); in mlx5e_reporter_tx_ptpsq_unhealthy()
|
| H A D | reporter_rx.c | 194 eq = rq->cq.mcq.eq; in mlx5e_rx_reporter_timeout_recover() 233 devlink_fmsg_u32_pair_put(fmsg, "cqn", icosq->cq.mcq.cqn); in mlx5e_reporter_icosq_diagnose() 281 mlx5e_health_eq_diag_fmsg(rq->cq.mcq.eq, fmsg); in mlx5e_rx_reporter_build_diagnose_output_rq_common() 625 rq->ix, icosq_str, rq->rqn, rq->cq.mcq.cqn); in mlx5e_reporter_rx_timeout()
|
| /linux/drivers/vdpa/mlx5/net/ |
| H A D | mlx5_vnet.c | 71 struct mlx5_core_cq mcq; member 400 MLX5_SET(qpc, qpc, cqn_rcv, mvq->cq.mcq.cqn); in qp_prepare() 496 return get_sw_cqe(cq, cq->mcq.cons_index); in next_cqe_sw() 507 vcq->mcq.cons_index++; in mlx5_vdpa_poll_one() 517 mlx5_cq_set_ci(&mvq->cq.mcq); in mlx5_vdpa_handle_completions() 528 static void mlx5_vdpa_cq_comp(struct mlx5_core_cq *mcq, struct mlx5_eqe *eqe) in mlx5_vdpa_cq_comp() argument 530 struct mlx5_vdpa_virtqueue *mvq = container_of(mcq, struct mlx5_vdpa_virtqueue, cq.mcq); in mlx5_vdpa_cq_comp() 552 mlx5_cq_arm(&mvq->cq.mcq, MLX5_CQ_DB_REQ_NOT, uar_page, mvq->cq.mcq.cons_index); in mlx5_vdpa_cq_comp() 573 vcq->mcq.set_ci_db = vcq->db.db; in cq_create() 574 vcq->mcq.arm_db = vcq->db.db + 1; in cq_create() [all …]
|