Lines Matching refs:qp

794  * irdma_get_qp - get qp address
796 * @qpn: qp number
860 * @qp: hardware control qp
863 int irdma_cqp_qp_suspend_resume(struct irdma_sc_qp *qp, u8 op)
865 struct irdma_sc_dev *dev = qp->dev;
879 cqp_info->in.u.suspend_resume.qp = qp;
889 * irdma_term_modify_qp - modify qp for term message
890 * @qp: hardware control qp
891 * @next_state: qp's next state
895 void irdma_term_modify_qp(struct irdma_sc_qp *qp, u8 next_state, u8 term,
900 iwqp = qp->qp_uk.back_qp;
906 * @qp: hardware control qp
909 void irdma_terminate_done(struct irdma_sc_qp *qp, int timeout_occurred)
916 iwqp = qp->qp_uk.back_qp;
922 first_time = !(qp->term_flags & IRDMA_TERM_DONE);
923 qp->term_flags |= IRDMA_TERM_DONE;
927 irdma_terminate_del_timer(qp);
937 struct irdma_sc_qp *qp = &iwqp->sc_qp;
939 irdma_terminate_done(qp, 1);
945 * @qp: hardware control qp
947 void irdma_terminate_start_timer(struct irdma_sc_qp *qp)
951 iwqp = qp->qp_uk.back_qp;
961 * @qp: hardware control qp
963 void irdma_terminate_del_timer(struct irdma_sc_qp *qp)
968 iwqp = qp->qp_uk.back_qp;
1072 * irdma_cqp_qp_create_cmd - create a qp for the cqp
1074 * @qp: pointer to created qp
1076 int irdma_cqp_qp_create_cmd(struct irdma_sc_dev *dev, struct irdma_sc_qp *qp)
1096 cqp_info->in.u.qp_create.qp = qp;
1106 * irdma_dealloc_push_page - free a push page for qp
1108 * @qp: hardware control qp
1111 struct irdma_sc_qp *qp)
1117 if (qp->push_idx == IRDMA_INVALID_PUSH_PAGE_INDEX)
1127 cqp_info->in.u.manage_push_page.info.push_idx = qp->push_idx;
1128 cqp_info->in.u.manage_push_page.info.qs_handle = qp->qs_handle;
1135 qp->push_idx = IRDMA_INVALID_PUSH_PAGE_INDEX;
1140 * irdma_free_qp_rsrc - free up memory resources for qp
1141 * @iwqp: qp ptr (user or kernel)
1203 iwqp = cqp_info->in.u.qp_modify.qp->qp_uk.back_qp;
1209 * irdma_hw_modify_qp - setup cqp for modify qp
1211 * @iwqp: qp ptr (user or kernel)
1212 * @info: info for modify qp
1213 * @wait: flag to wait or not for modify qp completion
1237 cqp_info->in.u.qp_modify.qp = &iwqp->sc_qp;
1271 cqp_info->in.u.qp_modify.qp = &iwqp->sc_qp;
1303 * @qp: pointer to qp
1305 int irdma_cqp_qp_destroy_cmd(struct irdma_sc_dev *dev, struct irdma_sc_qp *qp)
1321 cqp_info->in.u.qp_destroy.qp = qp;
1334 * @qp: hardware control qp
1336 void irdma_ieq_mpa_crc_ae(struct irdma_sc_dev *dev, struct irdma_sc_qp *qp)
1344 irdma_gen_ae(rf, qp, &info, false);
1405 * irdma_ieq_get_qp - get qp based on quad in puda buffer
1445 * @qp: qp ptr
1447 void irdma_send_ieq_ack(struct irdma_sc_qp *qp)
1449 struct irdma_cm_node *cm_node = ((struct irdma_qp *)qp->qp_uk.back_qp)->cm_node;
1450 struct irdma_puda_buf *buf = qp->pfpdu.lastrcv_buf;
1453 cm_node->tcp_cntxt.rcv_nxt = qp->pfpdu.nextseqnum;
1461 * @qp: qp pointer
1464 void irdma_puda_ieq_get_ah_info(struct irdma_sc_qp *qp,
1467 struct irdma_puda_buf *buf = qp->pfpdu.ah_buf;
1476 ah_info->vsi = qp->vsi;
1498 ah_info->dst_arpindex = irdma_arp_table(dev_to_rf(qp->dev),
1998 struct irdma_sc_qp *qp = cqp_request->param;
1999 struct irdma_sc_ah *sc_ah = qp->pfpdu.ah;
2002 spin_lock_irqsave(&qp->pfpdu.lock, flags);
2005 irdma_ieq_process_fpdus(qp, qp->vsi->ieq);
2008 irdma_ieq_cleanup_qp(qp->vsi->ieq, qp);
2010 spin_unlock_irqrestore(&qp->pfpdu.lock, flags);
2027 * irdma_puda_create_ah - create AH for ILQ/IEQ qp's
2335 * @sc_qp: qp structure
2339 struct irdma_qp *qp = sc_qp->qp_uk.back_qp;
2342 if (qp->iwdev->rf->reset)
2346 if (rdma_protocol_roce(qp->ibqp.device, 1))
2347 irdma_modify_qp_roce(&qp->ibqp, &attr, IB_QP_STATE, NULL);
2349 irdma_modify_qp(&qp->ibqp, &attr, IB_QP_STATE, NULL);
2371 ibevent.element.qp = &iwqp->ibqp;
2424 * @qp: QPair
2428 struct irdma_qp_uk *qp, u32 qp_num)
2434 cpi->qp_handle = (irdma_qp_handle)(uintptr_t)qp;
2448 struct irdma_qp_uk *qp = &iwqp->sc_qp.qp_uk;
2449 struct irdma_ring *sq_ring = &qp->sq_ring;
2450 struct irdma_ring *rq_ring = &qp->rq_ring;
2472 irdma_set_cpi_common_values(&cmpl->cpi, qp, qp->qp_id);
2474 cmpl->cpi.wr_id = qp->sq_wrtrk_array[wqe_idx].wrid;
2475 sw_wqe = qp->sq_base[wqe_idx].elem;
2481 sq_ring->tail + qp->sq_wrtrk_array[sq_ring->tail].quanta);
2488 __func__, cmpl->cpi.wr_id, qp->qp_id);
2516 irdma_set_cpi_common_values(&cmpl->cpi, qp, qp->qp_id);
2518 cmpl->cpi.wr_id = qp->rq_wrid_array[wqe_idx];
2525 __func__, cmpl->cpi.wr_id, qp->qp_id,