/linux-4.1.27/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 | 861 struct iwch_qp *qhp; in iwch_destroy_qp() local 865 qhp = to_iwch_qp(ib_qp); in iwch_destroy_qp() 866 rhp = qhp->rhp; in iwch_destroy_qp() 869 iwch_modify_qp(rhp, qhp, IWCH_QP_ATTR_NEXT_STATE, &attrs, 0); in iwch_destroy_qp() 870 wait_event(qhp->wait, !qhp->ep); in iwch_destroy_qp() 872 remove_handle(rhp, &rhp->qpidr, qhp->wq.qpid); in iwch_destroy_qp() 874 atomic_dec(&qhp->refcnt); in iwch_destroy_qp() 875 wait_event(qhp->wait, !atomic_read(&qhp->refcnt)); in iwch_destroy_qp() 879 cxio_destroy_qp(&rhp->rdev, &qhp->wq, in iwch_destroy_qp() 883 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-4.1.27/drivers/infiniband/hw/cxgb4/ |
D | qp.c | 86 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() 573 static int build_rdma_recv(struct c4iw_qp *qhp, union t4_recv_wr *wqe, in build_rdma_recv() argument 578 ret = build_isgl((__be64 *)qhp->wq.rq.queue, in build_rdma_recv() 579 (__be64 *)&qhp->wq.rq.queue[qhp->wq.rq.size], in build_rdma_recv() 688 static int ring_kernel_sq_db(struct c4iw_qp *qhp, u16 inc) in ring_kernel_sq_db() argument 692 spin_lock_irqsave(&qhp->rhp->lock, flags); in ring_kernel_sq_db() 693 spin_lock(&qhp->lock); in ring_kernel_sq_db() [all …]
|
D | ev.c | 88 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() 121 struct c4iw_qp *qhp; in c4iw_ev_dispatch() local 125 qhp = get_qhp(dev, CQE_QPID(err_cqe)); in c4iw_ev_dispatch() 126 if (!qhp) { in c4iw_ev_dispatch() 138 cqid = qhp->attr.scq; in c4iw_ev_dispatch() [all …]
|
D | cq.c | 238 int c4iw_flush_sq(struct c4iw_qp *qhp) in c4iw_flush_sq() argument 241 struct t4_wq *wq = &qhp->wq; in c4iw_flush_sq() 242 struct c4iw_cq *chp = to_c4iw_cq(qhp->ibqp.send_cq); in c4iw_flush_sq() 344 struct c4iw_qp *qhp; in c4iw_flush_hw_cq() local 357 qhp = get_qhp(chp->rhp, CQE_QPID(hw_cqe)); in c4iw_flush_hw_cq() 362 if (qhp == NULL) in c4iw_flush_hw_cq() 385 if (!qhp->wq.sq.oldest_read->signaled) { in c4iw_flush_hw_cq() 386 advance_oldest_read(&qhp->wq); in c4iw_flush_hw_cq() 394 create_read_req_cqe(&qhp->wq, hw_cqe, &read_cqe); in c4iw_flush_hw_cq() 396 advance_oldest_read(&qhp->wq); in c4iw_flush_hw_cq() [all …]
|
D | iw_cxgb4.h | 574 struct c4iw_qp *qhp, 1021 int c4iw_flush_sq(struct c4iw_qp *qhp); 1023 u16 c4iw_rqes_posted(struct c4iw_qp *qhp); 1024 int c4iw_post_terminate(struct c4iw_qp *qhp, struct t4_cqe *err_cqe);
|