/linux-3.4.99/drivers/infiniband/hw/cxgb3/ |
D | iwch_qp.c | 247 static int build_rdma_recv(struct iwch_qp *qhp, union t3_wr *wqe, in build_rdma_recv() argument 254 err = iwch_sgl2pbl_map(qhp->rhp, wr->sg_list, wr->num_sge, pbl_addr, in build_rdma_recv() 280 qhp->wq.rq[Q_PTR2IDX(qhp->wq.rq_wptr, in build_rdma_recv() 281 qhp->wq.rq_size_log2)].wr_id = wr->wr_id; in build_rdma_recv() 282 qhp->wq.rq[Q_PTR2IDX(qhp->wq.rq_wptr, in build_rdma_recv() 283 qhp->wq.rq_size_log2)].pbl_addr = 0; in build_rdma_recv() 287 static int build_zero_stag_recv(struct iwch_qp *qhp, union t3_wr *wqe, in build_zero_stag_recv() argument 301 pbl_addr = cxio_hal_pblpool_alloc(&qhp->rhp->rdev, T3_STAG0_PBL_SIZE); in build_zero_stag_recv() 308 pbl_offset = (pbl_addr - qhp->rhp->rdev.rnic_info.pbl_base) >> 3; in build_zero_stag_recv() 343 qhp->wq.rq[Q_PTR2IDX(qhp->wq.rq_wptr, in build_zero_stag_recv() [all …]
|
D | iwch_ev.c | 48 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, CQE_STATUS(rsp_msg->cqe)); in post_qp_event() 77 atomic_inc(&qhp->refcnt); in post_qp_event() 80 if (qhp->attr.state == IWCH_QP_STATE_RTS) { in post_qp_event() 82 iwch_modify_qp(qhp->rhp, qhp, IWCH_QP_ATTR_NEXT_STATE, in post_qp_event() 85 iwch_post_terminate(qhp, rsp_msg); in post_qp_event() [all …]
|
D | iwch_provider.c | 862 struct iwch_qp *qhp; in iwch_destroy_qp() local 866 qhp = to_iwch_qp(ib_qp); in iwch_destroy_qp() 867 rhp = qhp->rhp; in iwch_destroy_qp() 870 iwch_modify_qp(rhp, qhp, IWCH_QP_ATTR_NEXT_STATE, &attrs, 0); in iwch_destroy_qp() 871 wait_event(qhp->wait, !qhp->ep); in iwch_destroy_qp() 873 remove_handle(rhp, &rhp->qpidr, qhp->wq.qpid); in iwch_destroy_qp() 875 atomic_dec(&qhp->refcnt); in iwch_destroy_qp() 876 wait_event(qhp->wait, !atomic_read(&qhp->refcnt)); in iwch_destroy_qp() 880 cxio_destroy_qp(&rhp->rdev, &qhp->wq, in iwch_destroy_qp() 884 ib_qp, qhp->wq.qpid, qhp); in iwch_destroy_qp() [all …]
|
D | iwch_cq.c | 47 struct iwch_qp *qhp = NULL; in iwch_poll_cq_one() local 60 qhp = get_qhp(rhp, CQE_QPID(*rd_cqe)); in iwch_poll_cq_one() 61 if (!qhp) in iwch_poll_cq_one() 64 spin_lock(&qhp->lock); in iwch_poll_cq_one() 65 wq = &(qhp->wq); in iwch_poll_cq_one() 82 wc->qp = &qhp->ibqp; in iwch_poll_cq_one() 191 spin_unlock(&qhp->lock); in iwch_poll_cq_one()
|
D | iwch.c | 68 struct iwch_qp *qhp = p; in disable_qp_db() local 70 cxio_disable_wq_db(&qhp->wq); in disable_qp_db() 76 struct iwch_qp *qhp = p; in enable_qp_db() local 79 ring_doorbell(qhp->rhp->rdev.ctrl_qp.doorbell, qhp->wq.qpid); in enable_qp_db() 80 cxio_enable_wq_db(&qhp->wq); in enable_qp_db()
|
D | iwch_provider.h | 172 static inline int qp_quiesced(struct iwch_qp *qhp) in qp_quiesced() argument 174 return qhp->flags & QP_QUIESCED; in qp_quiesced() 259 struct iwch_qp *qhp, 326 u16 iwch_rqes_posted(struct iwch_qp *qhp); 335 int iwch_post_terminate(struct iwch_qp *qhp, struct respQ_msg_t *rsp_msg); 339 void stop_read_rep_timer(struct iwch_qp *qhp);
|
/linux-3.4.99/drivers/infiniband/hw/cxgb4/ |
D | qp.c | 41 static void set_state(struct c4iw_qp *qhp, enum c4iw_qp_state state) in set_state() argument 44 spin_lock_irqsave(&qhp->lock, flag); in set_state() 45 qhp->attr.state = state; in set_state() 46 spin_unlock_irqrestore(&qhp->lock, flag); in set_state() 496 static int build_rdma_recv(struct c4iw_qp *qhp, union t4_recv_wr *wqe, in build_rdma_recv() argument 501 ret = build_isgl((__be64 *)qhp->wq.rq.queue, in build_rdma_recv() 502 (__be64 *)&qhp->wq.rq.queue[qhp->wq.rq.size], in build_rdma_recv() 588 struct c4iw_qp *qhp; in c4iw_post_send() local 595 qhp = to_c4iw_qp(ibqp); in c4iw_post_send() 596 spin_lock_irqsave(&qhp->lock, flag); in c4iw_post_send() [all …]
|
D | ev.c | 39 struct c4iw_qp *qhp, in post_qp_event() argument 47 if ((qhp->attr.state == C4IW_QP_STATE_ERROR) || in post_qp_event() 48 (qhp->attr.state == C4IW_QP_STATE_TERMINATE)) { in post_qp_event() 51 qhp->attr.state, qhp->wq.sq.qid, CQE_STATUS(err_cqe)); in post_qp_event() 61 if (qhp->attr.state == C4IW_QP_STATE_RTS) { in post_qp_event() 63 c4iw_modify_qp(qhp->rhp, qhp, C4IW_QP_ATTR_NEXT_STATE, in post_qp_event() 72 event.element.qp = &qhp->ibqp; in post_qp_event() 73 if (qhp->ibqp.event_handler) in post_qp_event() 74 (*qhp->ibqp.event_handler)(&event, qhp->ibqp.qp_context); in post_qp_event() 84 struct c4iw_qp *qhp; in c4iw_ev_dispatch() local [all …]
|
D | cq.c | 567 struct c4iw_qp *qhp = NULL; in c4iw_poll_cq_one() local 580 qhp = get_qhp(chp->rhp, CQE_QPID(rd_cqe)); in c4iw_poll_cq_one() 581 if (!qhp) in c4iw_poll_cq_one() 584 spin_lock(&qhp->lock); in c4iw_poll_cq_one() 585 wq = &(qhp->wq); in c4iw_poll_cq_one() 592 wc->qp = &qhp->ibqp; in c4iw_poll_cq_one() 705 spin_unlock(&qhp->lock); in c4iw_poll_cq_one()
|
D | iw_cxgb4.h | 450 struct c4iw_qp *qhp, 787 u16 c4iw_rqes_posted(struct c4iw_qp *qhp); 788 int c4iw_post_terminate(struct c4iw_qp *qhp, struct t4_cqe *err_cqe);
|