Lines Matching refs:rq

253 	struct mlx5_ib_wq *wq = &qp->rq;
273 struct mlx5_ib_wq *wq = &qp->rq;
444 qp->rq.max_gs = 0;
445 qp->rq.wqe_cnt = 0;
446 qp->rq.wqe_shift = 0;
453 qp->rq.wqe_cnt = ucmd->rq_wqe_count;
456 qp->rq.wqe_shift = ucmd->rq_wqe_shift;
457 if ((1 << qp->rq.wqe_shift) /
461 qp->rq.max_gs =
462 (1 << qp->rq.wqe_shift) /
465 qp->rq.max_post = qp->rq.wqe_cnt;
474 qp->rq.wqe_cnt = wq_size / wqe_size;
482 qp->rq.wqe_shift = ilog2(wqe_size);
483 qp->rq.max_gs =
484 (1 << qp->rq.wqe_shift) /
487 qp->rq.max_post = qp->rq.wqe_cnt;
667 base->ubuffer.buf_size = qp->rq.wqe_cnt << qp->rq.wqe_shift;
670 base->ubuffer.buf_size = (qp->rq.wqe_cnt << qp->rq.wqe_shift) +
993 qp->rq.offset = 0;
995 qp->sq.offset = qp->rq.wqe_cnt << qp->rq.wqe_shift;
1092 kvfree(qp->rq.wrid);
1127 qp->rq.offset = 0;
1128 qp->sq.offset = qp->rq.wqe_cnt << qp->rq.wqe_shift;
1129 base->ubuffer.buf_size = err + (qp->rq.wqe_cnt << qp->rq.wqe_shift);
1138 if (qp->rq.wqe_cnt)
1139 mlx5_init_fbc(qp->buf.frags, qp->rq.wqe_shift,
1140 ilog2(qp->rq.wqe_cnt), &qp->rq.fbc);
1188 qp->rq.wrid = kvmalloc_array(qp->rq.wqe_cnt,
1189 sizeof(*qp->rq.wrid), GFP_KERNEL);
1195 if (!qp->sq.wrid || !qp->sq.wr_data || !qp->rq.wrid ||
1208 kvfree(qp->rq.wrid);
1433 struct mlx5_ib_rq *rq, void *qpin,
1436 struct mlx5_ib_qp *mqp = rq->base.container_mibqp;
1442 struct ib_umem *umem = rq->base.ubuffer.umem;
1468 if (!(rq->flags & MLX5_IB_RQ_CVLAN_STRIPPING))
1482 if (rq->flags & MLX5_IB_RQ_PCI_WRITE_END_PADDING)
1495 err = mlx5_core_create_rq_tracked(dev, in, inlen, &rq->base.mqp);
1503 struct mlx5_ib_rq *rq)
1505 mlx5_core_destroy_rq_tracked(dev, &rq->base.mqp);
1509 struct mlx5_ib_rq *rq,
1516 mlx5_cmd_destroy_tir(dev->mdev, rq->tirn, to_mpd(pd)->uid);
1520 struct mlx5_ib_rq *rq, u32 tdn,
1538 MLX5_SET(tirc, tirc, inline_rqn, rq->base.mqp.qpn);
1557 rq->tirn = MLX5_GET(create_tir_out, out, tirn);
1562 destroy_raw_packet_qp_tir(dev, rq, 0, pd);
1577 struct mlx5_ib_rq *rq = &raw_packet_qp->rq;
1585 if (!qp->sq.wqe_cnt && !qp->rq.wqe_cnt)
1608 if (qp->rq.wqe_cnt) {
1609 rq->base.container_mibqp = qp;
1612 rq->flags |= MLX5_IB_RQ_CVLAN_STRIPPING;
1614 rq->flags |= MLX5_IB_RQ_PCI_WRITE_END_PADDING;
1615 err = create_raw_packet_qp_rq(dev, rq, in, pd,
1620 err = create_raw_packet_qp_tir(dev, rq, tdn, &qp->flags_en, pd,
1626 resp->rqn = rq->base.mqp.qpn;
1628 resp->tirn = rq->tirn;
1649 rq->base.mqp.qpn;
1653 destroy_raw_packet_qp_rq(dev, rq);
1669 struct mlx5_ib_rq *rq = &raw_packet_qp->rq;
1671 if (qp->rq.wqe_cnt) {
1672 destroy_raw_packet_qp_tir(dev, rq, qp->flags_en, qp->ibqp.pd);
1673 destroy_raw_packet_qp_rq(dev, rq);
1686 struct mlx5_ib_rq *rq = &raw_packet_qp->rq;
1689 rq->rq = &qp->rq;
1691 rq->doorbell = &qp->db;
2091 spin_lock_init(&qp->rq.lock);
2109 if (ucmd->rq_wqe_shift != qp->rq.wqe_shift ||
2110 ucmd->rq_wqe_count != qp->rq.wqe_cnt)
2145 if (qp->rq.wqe_cnt) {
2146 MLX5_SET(qpc, qpc, log_rq_stride, qp->rq.wqe_shift - 4);
2147 MLX5_SET(qpc, qpc, log_rq_size, ilog2(qp->rq.wqe_cnt));
2252 spin_lock_init(&qp->rq.lock);
2266 &qp->raw_packet_qp.rq.base :
2276 if (ucmd->rq_wqe_shift != qp->rq.wqe_shift ||
2277 ucmd->rq_wqe_count != qp->rq.wqe_cnt)
2333 if (qp->rq.wqe_cnt) {
2334 MLX5_SET(qpc, qpc, log_rq_stride, qp->rq.wqe_shift - 4);
2335 MLX5_SET(qpc, qpc, log_rq_size, ilog2(qp->rq.wqe_cnt));
2452 spin_lock_init(&qp->rq.lock);
2491 if (qp->rq.wqe_cnt) {
2492 MLX5_SET(qpc, qpc, log_rq_stride, qp->rq.wqe_shift - 4);
2493 MLX5_SET(qpc, qpc, log_rq_size, ilog2(qp->rq.wqe_cnt));
2673 &qp->raw_packet_qp.rq.base :
3780 struct mlx5_ib_dev *dev, struct mlx5_ib_rq *rq, int new_state,
3793 MLX5_SET(modify_rq_in, in, rq_state, rq->state);
3810 err = mlx5_core_modify_rq(dev->mdev, rq->base.mqp.qpn, in);
3814 rq->state = new_state;
3902 struct mlx5_ib_rq *rq = &raw_packet_qp->rq;
3904 int modify_rq = !!qp->rq.wqe_cnt;
3943 err = modify_raw_packet_qp_rq(dev, rq, rq_state, raw_qp_param,
4051 struct mlx5_ib_rq *rq = &raw_packet_qp->rq;
4055 if (!qp->rq.wqe_cnt)
4058 MLX5_SET(modify_rq_in, in, rq_state, rq->state);
4068 return mlx5_core_modify_rq(mdev, rq->base.mqp.qpn, in);
4298 if (qp->rq.wqe_cnt && cur_state == IB_QPS_RESET && new_state == IB_QPS_INIT)
4414 qp->rq.head = 0;
4415 qp->rq.tail = 0;
4834 struct mlx5_ib_rq *rq,
4847 err = mlx5_core_query_rq(dev->mdev, rq->base.mqp.qpn, out);
4853 rq->state = *rq_state;
4895 qp->raw_packet_qp.rq.base.mqp.qpn, rq_state);
4911 struct mlx5_ib_rq *rq = &raw_packet_qp->rq;
4922 if (qp->rq.wqe_cnt) {
4923 err = query_raw_packet_qp_rq_state(dev, rq, &rq_state);
5101 qp_attr->cap.max_recv_wr = qp->rq.wqe_cnt;
5102 qp_attr->cap.max_recv_sge = qp->rq.max_gs;