Home
last modified time | relevance | path

Searched refs:qhp (Results 1 – 11 of 11) sorted by relevance

/Linux-v4.19/drivers/infiniband/hw/cxgb3/
Diwch_qp.c248 static int build_rdma_recv(struct iwch_qp *qhp, union t3_wr *wqe, in build_rdma_recv() argument
255 err = iwch_sgl2pbl_map(qhp->rhp, wr->sg_list, wr->num_sge, pbl_addr, in build_rdma_recv()
281 qhp->wq.rq[Q_PTR2IDX(qhp->wq.rq_wptr, in build_rdma_recv()
282 qhp->wq.rq_size_log2)].wr_id = wr->wr_id; in build_rdma_recv()
283 qhp->wq.rq[Q_PTR2IDX(qhp->wq.rq_wptr, in build_rdma_recv()
284 qhp->wq.rq_size_log2)].pbl_addr = 0; in build_rdma_recv()
288 static int build_zero_stag_recv(struct iwch_qp *qhp, union t3_wr *wqe, in build_zero_stag_recv() argument
302 pbl_addr = cxio_hal_pblpool_alloc(&qhp->rhp->rdev, T3_STAG0_PBL_SIZE); in build_zero_stag_recv()
309 pbl_offset = (pbl_addr - qhp->rhp->rdev.rnic_info.pbl_base) >> 3; in build_zero_stag_recv()
344 qhp->wq.rq[Q_PTR2IDX(qhp->wq.rq_wptr, in build_zero_stag_recv()
[all …]
Diwch_ev.c48 struct iwch_qp *qhp; in post_qp_event() local
52 qhp = get_qhp(rnicp, CQE_QPID(rsp_msg->cqe)); in post_qp_event()
54 if (!qhp) { in post_qp_event()
62 if ((qhp->attr.state == IWCH_QP_STATE_ERROR) || in post_qp_event()
63 (qhp->attr.state == IWCH_QP_STATE_TERMINATE)) { in post_qp_event()
66 qhp->attr.state, qhp->wq.qpid, in post_qp_event()
78 atomic_inc(&qhp->refcnt); in post_qp_event()
81 if (qhp->attr.state == IWCH_QP_STATE_RTS) { in post_qp_event()
83 iwch_modify_qp(qhp->rhp, qhp, IWCH_QP_ATTR_NEXT_STATE, in post_qp_event()
86 iwch_post_terminate(qhp, rsp_msg); in post_qp_event()
[all …]
Diwch_cq.c36 struct iwch_qp *qhp, struct ib_wc *wc) in __iwch_poll_cq_one() argument
38 struct t3_wq *wq = qhp ? &qhp->wq : NULL; in __iwch_poll_cq_one()
60 wc->qp = qhp ? &qhp->ibqp : NULL; in __iwch_poll_cq_one()
178 struct iwch_qp *qhp; in iwch_poll_cq_one() local
187 qhp = get_qhp(rhp, CQE_QPID(*rd_cqe)); in iwch_poll_cq_one()
188 if (qhp) { in iwch_poll_cq_one()
189 spin_lock(&qhp->lock); in iwch_poll_cq_one()
190 ret = __iwch_poll_cq_one(rhp, chp, qhp, wc); in iwch_poll_cq_one()
191 spin_unlock(&qhp->lock); in iwch_poll_cq_one()
Diwch_provider.c762 struct iwch_qp *qhp; in iwch_destroy_qp() local
766 qhp = to_iwch_qp(ib_qp); in iwch_destroy_qp()
767 rhp = qhp->rhp; in iwch_destroy_qp()
770 iwch_modify_qp(rhp, qhp, IWCH_QP_ATTR_NEXT_STATE, &attrs, 0); in iwch_destroy_qp()
771 wait_event(qhp->wait, !qhp->ep); in iwch_destroy_qp()
773 remove_handle(rhp, &rhp->qpidr, qhp->wq.qpid); in iwch_destroy_qp()
775 atomic_dec(&qhp->refcnt); in iwch_destroy_qp()
776 wait_event(qhp->wait, !atomic_read(&qhp->refcnt)); in iwch_destroy_qp()
780 cxio_destroy_qp(&rhp->rdev, &qhp->wq, in iwch_destroy_qp()
784 ib_qp, qhp->wq.qpid, qhp); in iwch_destroy_qp()
[all …]
Diwch.c67 struct iwch_qp *qhp = p; in disable_qp_db() local
69 cxio_disable_wq_db(&qhp->wq); in disable_qp_db()
75 struct iwch_qp *qhp = p; in enable_qp_db() local
78 ring_doorbell(qhp->rhp->rdev.ctrl_qp.doorbell, qhp->wq.qpid); in enable_qp_db()
79 cxio_enable_wq_db(&qhp->wq); in enable_qp_db()
Diwch_provider.h173 static inline int qp_quiesced(struct iwch_qp *qhp) in qp_quiesced() argument
175 return qhp->flags & QP_QUIESCED; in qp_quiesced()
261 struct iwch_qp *qhp,
328 u16 iwch_rqes_posted(struct iwch_qp *qhp);
334 int iwch_post_terminate(struct iwch_qp *qhp, struct respQ_msg_t *rsp_msg);
338 void stop_read_rep_timer(struct iwch_qp *qhp);
/Linux-v4.19/drivers/infiniband/hw/cxgb4/
Dqp.c86 static void set_state(struct c4iw_qp *qhp, enum c4iw_qp_state state) in set_state() argument
89 spin_lock_irqsave(&qhp->lock, flag); in set_state()
90 qhp->attr.state = state; in set_state()
91 spin_unlock_irqrestore(&qhp->lock, flag); in set_state()
685 static void post_write_cmpl(struct c4iw_qp *qhp, const struct ib_send_wr *wr) in post_write_cmpl() argument
688 qhp->sq_sig_all; in post_write_cmpl()
690 qhp->sq_sig_all; in post_write_cmpl()
701 wqe = (union t4_wr *)((u8 *)qhp->wq.sq.queue + in post_write_cmpl()
702 qhp->wq.sq.wq_pidx * T4_EQ_ENTRY_SIZE); in post_write_cmpl()
703 build_rdma_write_cmpl(&qhp->wq.sq, &wqe->write_cmpl, wr, &len16); in post_write_cmpl()
[all …]
Dev.c88 struct c4iw_qp *qhp, in post_qp_event() argument
98 if (qhp->attr.state == C4IW_QP_STATE_RTS) { in post_qp_event()
100 c4iw_modify_qp(qhp->rhp, qhp, C4IW_QP_ATTR_NEXT_STATE, in post_qp_event()
109 event.element.qp = &qhp->ibqp; in post_qp_event()
110 if (qhp->ibqp.event_handler) in post_qp_event()
111 (*qhp->ibqp.event_handler)(&event, qhp->ibqp.qp_context); in post_qp_event()
123 struct c4iw_qp *qhp; in c4iw_ev_dispatch() local
127 qhp = get_qhp(dev, CQE_QPID(err_cqe)); in c4iw_ev_dispatch()
128 if (!qhp) { in c4iw_ev_dispatch()
139 cqid = qhp->attr.scq; in c4iw_ev_dispatch()
[all …]
Dcq.c239 int c4iw_flush_sq(struct c4iw_qp *qhp) in c4iw_flush_sq() argument
242 struct t4_wq *wq = &qhp->wq; in c4iw_flush_sq()
243 struct c4iw_cq *chp = to_c4iw_cq(qhp->ibqp.send_cq); in c4iw_flush_sq()
339 struct c4iw_qp *qhp; in c4iw_flush_hw_cq() local
352 qhp = get_qhp(chp->rhp, CQE_QPID(hw_cqe)); in c4iw_flush_hw_cq()
357 if (qhp == NULL) in c4iw_flush_hw_cq()
360 if (flush_qhp != qhp) { in c4iw_flush_hw_cq()
361 spin_lock(&qhp->lock); in c4iw_flush_hw_cq()
363 if (qhp->wq.flushed == 1) in c4iw_flush_hw_cq()
387 if (!qhp->wq.sq.oldest_read->signaled) { in c4iw_flush_hw_cq()
[all …]
Drestrack.c142 struct c4iw_qp *qhp = to_c4iw_qp(ibqp); in fill_res_qp_entry() local
149 if (qhp->ucontext) in fill_res_qp_entry()
157 spin_lock_irq(&qhp->lock); in fill_res_qp_entry()
158 wq = qhp->wq; in fill_res_qp_entry()
163 first_sqe = qhp->wq.sq.sw_sq[first_sq_idx]; in fill_res_qp_entry()
169 last_sqe = qhp->wq.sq.sw_sq[last_sq_idx]; in fill_res_qp_entry()
173 spin_unlock_irq(&qhp->lock); in fill_res_qp_entry()
Diw_cxgb4.h676 struct c4iw_qp *qhp,
1097 int c4iw_flush_sq(struct c4iw_qp *qhp);
1099 u16 c4iw_rqes_posted(struct c4iw_qp *qhp);
1100 int c4iw_post_terminate(struct c4iw_qp *qhp, struct t4_cqe *err_cqe);
1124 void c4iw_flush_srqidx(struct c4iw_qp *qhp, u32 srqidx);