Lines Matching defs:init
59 int rxe_qp_chk_init(struct rxe_dev *rxe, struct ib_qp_init_attr *init)
61 struct ib_qp_cap *cap = &init->cap;
63 int port_num = init->port_num;
65 switch (init->qp_type) {
75 if (!init->recv_cq || !init->send_cq) {
80 if (rxe_qp_chk_cap(rxe, cap, !!init->srq))
83 if (init->qp_type == IB_QPT_GSI) {
91 if (init->qp_type == IB_QPT_GSI && port->qp_gsi_index) {
149 struct ib_qp_init_attr *init)
154 qp->sq_sig_type = init->sq_sig_type;
161 switch (init->qp_type) {
165 qp->attr.port_num = init->port_num;
186 static int rxe_init_sq(struct rxe_qp *qp, struct ib_qp_init_attr *init,
194 qp->sq.max_wr = init->cap.max_send_wr;
195 wqe_size = max_t(int, init->cap.max_send_sge * sizeof(struct ib_sge),
196 init->cap.max_inline_data);
221 init->cap.max_send_wr = qp->sq.max_wr;
222 init->cap.max_send_sge = qp->sq.max_sge;
223 init->cap.max_inline_data = qp->sq.max_inline;
236 struct ib_qp_init_attr *init, struct ib_udata *udata,
258 err = rxe_init_sq(qp, init, udata, uresp);
272 if (init->qp_type == IB_QPT_RC) {
279 static int rxe_init_rq(struct rxe_qp *qp, struct ib_qp_init_attr *init,
287 qp->rq.max_wr = init->cap.max_recv_wr;
288 qp->rq.max_sge = init->cap.max_recv_sge;
312 init->cap.max_recv_wr = qp->rq.max_wr;
325 struct ib_qp_init_attr *init,
335 err = rxe_init_rq(qp, init, udata, uresp);
350 struct ib_qp_init_attr *init,
356 struct rxe_cq *rcq = to_rcq(init->recv_cq);
357 struct rxe_cq *scq = to_rcq(init->send_cq);
358 struct rxe_srq *srq = init->srq ? to_rsrq(init->srq) : NULL;
375 rxe_qp_init_misc(rxe, qp, init);
377 err = rxe_qp_init_req(rxe, qp, init, udata, uresp);
381 err = rxe_qp_init_resp(rxe, qp, init, udata, uresp);
414 int rxe_qp_to_init(struct rxe_qp *qp, struct ib_qp_init_attr *init)
416 init->event_handler = qp->ibqp.event_handler;
417 init->qp_context = qp->ibqp.qp_context;
418 init->send_cq = qp->ibqp.send_cq;
419 init->recv_cq = qp->ibqp.recv_cq;
420 init->srq = qp->ibqp.srq;
422 init->cap.max_send_wr = qp->sq.max_wr;
423 init->cap.max_send_sge = qp->sq.max_sge;
424 init->cap.max_inline_data = qp->sq.max_inline;
427 init->cap.max_recv_wr = qp->rq.max_wr;
428 init->cap.max_recv_sge = qp->rq.max_sge;
431 init->sq_sig_type = qp->sq_sig_type;
433 init->qp_type = qp->ibqp.qp_type;
434 init->port_num = 1;