/openbmc/linux/drivers/infiniband/hw/irdma/ |
H A D | uk.c | 62 u32 wqe_idx; in irdma_nop_1() local 68 wqe_idx = IRDMA_RING_CURRENT_HEAD(qp->sq_ring); in irdma_nop_1() 69 wqe = qp->sq_base[wqe_idx].elem; in irdma_nop_1() 71 qp->sq_wrtrk_array[wqe_idx].quanta = IRDMA_QP_WQE_MIN_QUANTA; in irdma_nop_1() 97 u32 wqe_idx; in irdma_clr_wqes() local 100 wqe_idx = (qp_wqe_idx + 128) % qp->sq_ring.size; in irdma_clr_wqes() 101 sq = qp->sq_base + wqe_idx; in irdma_clr_wqes() 102 if (wqe_idx) in irdma_clr_wqes() 154 __le64 *irdma_qp_get_next_send_wqe(struct irdma_qp_uk *qp, u32 *wqe_idx, in irdma_qp_get_next_send_wqe() argument 182 *wqe_idx = IRDMA_RING_CURRENT_HEAD(qp->sq_ring); in irdma_qp_get_next_send_wqe() [all …]
|
H A D | puda.c | 15 struct irdma_puda_buf *buf, u32 wqe_idx); 79 static void irdma_puda_post_recvbuf(struct irdma_puda_rsrc *rsrc, u32 wqe_idx, in irdma_puda_post_recvbuf() argument 89 qp->qp_uk.rq_wrid_array[wqe_idx] = (uintptr_t)buf; in irdma_puda_post_recvbuf() 90 wqe = qp->qp_uk.rq_base[wqe_idx].elem; in irdma_puda_post_recvbuf() 192 u32 *wqe_idx) in irdma_puda_get_next_send_wqe() argument 196 *wqe_idx = IRDMA_RING_CURRENT_HEAD(qp->sq_ring); in irdma_puda_get_next_send_wqe() 197 if (!*wqe_idx) in irdma_puda_get_next_send_wqe() 203 return qp->sq_base[*wqe_idx].elem; in irdma_puda_get_next_send_wqe() 284 info->wqe_idx = (u32)FIELD_GET(IRDMA_CQ_WQEIDX, qword3); in irdma_puda_poll_info() 363 qp->rq_wrid_array[info.wqe_idx]; in irdma_puda_poll_cmpl() [all …]
|
H A D | utils.c | 537 u32 i, pending_work, wqe_idx; in irdma_cleanup_pending_cqp_op() local 540 wqe_idx = IRDMA_RING_CURRENT_TAIL(cqp->sc_cqp.sq_ring); in irdma_cleanup_pending_cqp_op() 543 cqp->scratch_array[wqe_idx]; in irdma_cleanup_pending_cqp_op() 546 wqe_idx = (wqe_idx + 1) % IRDMA_RING_SIZE(cqp->sc_cqp.sq_ring); in irdma_cleanup_pending_cqp_op() 2459 u32 wqe_idx; in irdma_generate_flush_completions() local 2476 wqe_idx = sq_ring->tail; in irdma_generate_flush_completions() 2479 cmpl->cpi.wr_id = qp->sq_wrtrk_array[wqe_idx].wrid; in irdma_generate_flush_completions() 2480 sw_wqe = qp->sq_base[wqe_idx].elem; in irdma_generate_flush_completions() 2520 wqe_idx = rq_ring->tail; in irdma_generate_flush_completions() 2523 cmpl->cpi.wr_id = qp->rq_wrid_array[wqe_idx]; in irdma_generate_flush_completions() [all …]
|
H A D | user.h | 398 __le64 *irdma_qp_get_next_send_wqe(struct irdma_qp_uk *qp, u32 *wqe_idx, 401 __le64 *irdma_qp_get_next_recv_wqe(struct irdma_qp_uk *qp, u32 *wqe_idx);
|
H A D | type.h | 949 u16 wqe_idx; member 1481 u32 *wqe_idx); 1490 u32 wqe_idx; in irdma_sc_cqp_get_next_send_wqe() local 1492 return irdma_sc_cqp_get_next_send_wqe_idx(cqp, scratch, &wqe_idx); in irdma_sc_cqp_get_next_send_wqe()
|
H A D | ctrl.c | 1297 u32 wqe_idx; in irdma_sc_mr_fast_register() local 1311 wqe = irdma_qp_get_next_send_wqe(&qp->qp_uk, &wqe_idx, in irdma_sc_mr_fast_register() 1316 irdma_clr_wqes(&qp->qp_uk, wqe_idx); in irdma_sc_mr_fast_register() 1320 info->wr_id, wqe_idx, in irdma_sc_mr_fast_register() 1321 &qp->qp_uk.sq_wrtrk_array[wqe_idx].wrid); in irdma_sc_mr_fast_register() 3261 u32 *wqe_idx) in irdma_sc_cqp_get_next_send_wqe_idx() argument 3273 IRDMA_ATOMIC_RING_MOVE_HEAD(cqp->sq_ring, *wqe_idx, ret_code); in irdma_sc_cqp_get_next_send_wqe_idx() 3278 if (!*wqe_idx) in irdma_sc_cqp_get_next_send_wqe_idx() 3280 wqe = cqp->sq_base[*wqe_idx].elem; in irdma_sc_cqp_get_next_send_wqe_idx() 3281 cqp->scratch_array[*wqe_idx] = scratch; in irdma_sc_cqp_get_next_send_wqe_idx() [all …]
|
H A D | puda.h | 38 u32 wqe_idx; member
|
H A D | hw.c | 399 ctx_info->roce_info->err_rq_idx = info->wqe_idx; in irdma_process_aeq() 409 ctx_info->iwarp_info->err_rq_idx = info->wqe_idx; in irdma_process_aeq()
|
/openbmc/linux/drivers/infiniband/hw/erdma/ |
H A D | erdma_cq.c | 117 u16 wqe_idx, depth; in erdma_poll_one_cqe() local 132 wqe_idx = be32_to_cpu(cqe->qe_idx); in erdma_poll_one_cqe() 148 wqe_hdr = get_queue_entry(qp->kern_qp.sq_buf, wqe_idx, in erdma_poll_one_cqe() 152 wqe_idx + 1; in erdma_poll_one_cqe() 157 wc->wr_id = id_table[wqe_idx & (depth - 1)]; in erdma_poll_one_cqe()
|
H A D | erdma_qp.c | 208 const struct ib_send_wr *send_wr, u16 wqe_idx, in fill_inline_data() argument 215 wqe_idx += (sgl_offset >> SQEBB_SHIFT); in fill_inline_data() 217 data = get_queue_entry(qp->kern_qp.sq_buf, wqe_idx, qp->attrs.sq_size, in fill_inline_data() 238 wqe_idx += (sgl_offset >> SQEBB_SHIFT); in fill_inline_data() 241 data = get_queue_entry(qp->kern_qp.sq_buf, wqe_idx, in fill_inline_data() 255 u16 wqe_idx, u32 sgl_offset, __le32 *length_field) in fill_sgl() argument 268 wqe_idx += (sgl_offset >> SQEBB_SHIFT); in fill_sgl() 270 sgl = get_queue_entry(qp->kern_qp.sq_buf, wqe_idx, in fill_sgl()
|
/openbmc/linux/drivers/infiniband/hw/ocrdma/ |
H A D | ocrdma_verbs.c | 1594 u32 qpn = 0, wqe_idx = 0; in ocrdma_discard_cqes() local 1627 wqe_idx = (le32_to_cpu(cqe->rq.buftag_qpn) >> in ocrdma_discard_cqes() 1630 BUG_ON(wqe_idx < 1); in ocrdma_discard_cqes() 1633 ocrdma_srq_toggle_bit(qp->srq, wqe_idx - 1); in ocrdma_discard_cqes() 2400 u32 wqe_idx) in ocrdma_update_wc() argument 2406 hdr = ocrdma_hwq_head_from_idx(&qp->sq, wqe_idx); in ocrdma_update_wc() 2408 ibwc->wr_id = qp->wqe_wr_id_tbl[wqe_idx].wrid; in ocrdma_update_wc() 2561 u32 wqe_idx; in ocrdma_poll_success_scqe() local 2572 wqe_idx = (le32_to_cpu(cqe->wq.wqeidx) & in ocrdma_poll_success_scqe() 2574 if (tail != wqe_idx) in ocrdma_poll_success_scqe() [all …]
|
/openbmc/linux/drivers/infiniband/hw/hns/ |
H A D | hns_roce_hw_v2.c | 700 unsigned int wqe_idx; in hns_roce_v2_post_send() local 723 wqe_idx = (qp->sq.head + nreq) & (qp->sq.wqe_cnt - 1); in hns_roce_v2_post_send() 733 wqe = hns_roce_get_send_wqe(qp, wqe_idx); in hns_roce_v2_post_send() 734 qp->sq.wrid[wqe_idx] = wr->wr_id; in hns_roce_v2_post_send() 807 u32 wqe_idx, u32 max_sge) in fill_rq_wqe() argument 811 wqe = hns_roce_get_recv_wqe(hr_qp, wqe_idx); in fill_rq_wqe() 822 u32 wqe_idx, nreq, max_sge; in hns_roce_v2_post_recv() local 852 wqe_idx = (hr_qp->rq.head + nreq) & (hr_qp->rq.wqe_cnt - 1); in hns_roce_v2_post_recv() 853 fill_rq_wqe(hr_qp, wr, wqe_idx, max_sge); in hns_roce_v2_post_recv() 854 hr_qp->rq.wrid[wqe_idx] = wr->wr_id; in hns_roce_v2_post_recv() [all …]
|
/openbmc/linux/drivers/infiniband/hw/bnxt_re/ |
H A D | qplib_fp.c | 1809 u32 wqe_idx; in bnxt_qplib_post_send() local 1832 swq = bnxt_qplib_get_swqe(sq, &wqe_idx); in bnxt_qplib_post_send() 2028 bnxt_qplib_swq_mod_start(sq, wqe_idx); in bnxt_qplib_post_send() 2066 u32 wqe_idx; in bnxt_qplib_post_recv() local 2085 swq = bnxt_qplib_get_swqe(rq, &wqe_idx); in bnxt_qplib_post_recv() 2114 base_hdr->wr_id[0] = cpu_to_le32(wqe_idx); in bnxt_qplib_post_recv() 2116 bnxt_qplib_swq_mod_start(rq, wqe_idx); in bnxt_qplib_post_recv()
|