Lines Matching refs:cqe
1063 ibcq->cqe = new_cnt; in ocrdma_resize_cq()
1074 struct ocrdma_cqe *cqe = NULL; in ocrdma_flush_cq() local
1076 cqe = cq->va; in ocrdma_flush_cq()
1084 if (is_cqe_valid(cq, cqe)) in ocrdma_flush_cq()
1086 cqe++; in ocrdma_flush_cq()
1639 struct ocrdma_cqe *cqe; in ocrdma_discard_cqes() local
1658 cqe = cq->va + cur_getp; in ocrdma_discard_cqes()
1663 qpn = cqe->cmn.qpn & OCRDMA_CQE_QPN_MASK; in ocrdma_discard_cqes()
1669 if (is_cqe_for_sq(cqe)) { in ocrdma_discard_cqes()
1673 wqe_idx = (le32_to_cpu(cqe->rq.buftag_qpn) >> in ocrdma_discard_cqes()
1691 cqe->cmn.qpn = 0; in ocrdma_discard_cqes()
2514 struct ocrdma_cqe *cqe) in ocrdma_set_cqe_status_flushed() argument
2516 if (is_cqe_for_sq(cqe)) { in ocrdma_set_cqe_status_flushed()
2517 cqe->flags_status_srcqpn = cpu_to_le32(le32_to_cpu( in ocrdma_set_cqe_status_flushed()
2518 cqe->flags_status_srcqpn) & in ocrdma_set_cqe_status_flushed()
2520 cqe->flags_status_srcqpn = cpu_to_le32(le32_to_cpu( in ocrdma_set_cqe_status_flushed()
2521 cqe->flags_status_srcqpn) | in ocrdma_set_cqe_status_flushed()
2526 cqe->flags_status_srcqpn = cpu_to_le32(le32_to_cpu( in ocrdma_set_cqe_status_flushed()
2527 cqe->flags_status_srcqpn) & in ocrdma_set_cqe_status_flushed()
2529 cqe->flags_status_srcqpn = cpu_to_le32(le32_to_cpu( in ocrdma_set_cqe_status_flushed()
2530 cqe->flags_status_srcqpn) | in ocrdma_set_cqe_status_flushed()
2534 cqe->flags_status_srcqpn = cpu_to_le32(le32_to_cpu( in ocrdma_set_cqe_status_flushed()
2535 cqe->flags_status_srcqpn) & in ocrdma_set_cqe_status_flushed()
2537 cqe->flags_status_srcqpn = cpu_to_le32(le32_to_cpu( in ocrdma_set_cqe_status_flushed()
2538 cqe->flags_status_srcqpn) | in ocrdma_set_cqe_status_flushed()
2545 static bool ocrdma_update_err_cqe(struct ib_wc *ibwc, struct ocrdma_cqe *cqe, in ocrdma_update_err_cqe() argument
2562 ocrdma_set_cqe_status_flushed(qp, cqe); in ocrdma_update_err_cqe()
2567 static int ocrdma_update_err_rcqe(struct ib_wc *ibwc, struct ocrdma_cqe *cqe, in ocrdma_update_err_rcqe() argument
2574 return ocrdma_update_err_cqe(ibwc, cqe, qp, status); in ocrdma_update_err_rcqe()
2577 static int ocrdma_update_err_scqe(struct ib_wc *ibwc, struct ocrdma_cqe *cqe, in ocrdma_update_err_scqe() argument
2583 return ocrdma_update_err_cqe(ibwc, cqe, qp, status); in ocrdma_update_err_scqe()
2588 struct ocrdma_cqe *cqe, struct ib_wc *ibwc, in ocrdma_poll_err_scqe() argument
2593 int status = (le32_to_cpu(cqe->flags_status_srcqpn) & in ocrdma_poll_err_scqe()
2608 expand = ocrdma_update_err_rcqe(ibwc, cqe, qp, status); in ocrdma_poll_err_scqe()
2626 expand = ocrdma_update_err_scqe(ibwc, cqe, qp, status); in ocrdma_poll_err_scqe()
2632 struct ocrdma_cqe *cqe, in ocrdma_poll_success_scqe() argument
2648 wqe_idx = (le32_to_cpu(cqe->wq.wqeidx) & in ocrdma_poll_success_scqe()
2657 static bool ocrdma_poll_scqe(struct ocrdma_qp *qp, struct ocrdma_cqe *cqe, in ocrdma_poll_scqe() argument
2663 status = (le32_to_cpu(cqe->flags_status_srcqpn) & in ocrdma_poll_scqe()
2667 expand = ocrdma_poll_success_scqe(qp, cqe, ibwc, polled); in ocrdma_poll_scqe()
2669 expand = ocrdma_poll_err_scqe(qp, cqe, ibwc, polled, stop); in ocrdma_poll_scqe()
2673 static int ocrdma_update_ud_rcqe(struct ib_wc *ibwc, struct ocrdma_cqe *cqe) in ocrdma_update_ud_rcqe() argument
2677 status = (le32_to_cpu(cqe->flags_status_srcqpn) & in ocrdma_update_ud_rcqe()
2679 ibwc->src_qp = le32_to_cpu(cqe->flags_status_srcqpn) & in ocrdma_update_ud_rcqe()
2681 ibwc->pkey_index = le32_to_cpu(cqe->ud.rxlen_pkey) & in ocrdma_update_ud_rcqe()
2684 ibwc->byte_len = (le32_to_cpu(cqe->ud.rxlen_pkey) >> in ocrdma_update_ud_rcqe()
2690 struct ocrdma_cqe *cqe, in ocrdma_update_free_srq_cqe() argument
2698 wqe_idx = (le32_to_cpu(cqe->rq.buftag_qpn) >> in ocrdma_update_free_srq_cqe()
2710 static bool ocrdma_poll_err_rcqe(struct ocrdma_qp *qp, struct ocrdma_cqe *cqe, in ocrdma_poll_err_rcqe() argument
2727 expand = ocrdma_update_err_scqe(ibwc, cqe, qp, status); in ocrdma_poll_err_rcqe()
2740 expand = ocrdma_update_err_rcqe(ibwc, cqe, qp, status); in ocrdma_poll_err_rcqe()
2746 struct ocrdma_cqe *cqe, struct ib_wc *ibwc) in ocrdma_poll_success_rcqe() argument
2753 ocrdma_update_ud_rcqe(ibwc, cqe); in ocrdma_poll_success_rcqe()
2755 ibwc->byte_len = le32_to_cpu(cqe->rq.rxlen); in ocrdma_poll_success_rcqe()
2757 if (is_cqe_imm(cqe)) { in ocrdma_poll_success_rcqe()
2758 ibwc->ex.imm_data = htonl(le32_to_cpu(cqe->rq.lkey_immdt)); in ocrdma_poll_success_rcqe()
2760 } else if (is_cqe_wr_imm(cqe)) { in ocrdma_poll_success_rcqe()
2762 ibwc->ex.imm_data = htonl(le32_to_cpu(cqe->rq.lkey_immdt)); in ocrdma_poll_success_rcqe()
2764 } else if (is_cqe_invalidated(cqe)) { in ocrdma_poll_success_rcqe()
2765 ibwc->ex.invalidate_rkey = le32_to_cpu(cqe->rq.lkey_immdt); in ocrdma_poll_success_rcqe()
2769 ocrdma_update_free_srq_cqe(ibwc, cqe, qp); in ocrdma_poll_success_rcqe()
2776 static bool ocrdma_poll_rcqe(struct ocrdma_qp *qp, struct ocrdma_cqe *cqe, in ocrdma_poll_rcqe() argument
2784 status = (le32_to_cpu(cqe->flags_status_srcqpn) & in ocrdma_poll_rcqe()
2788 status = (le32_to_cpu(cqe->flags_status_srcqpn) & in ocrdma_poll_rcqe()
2794 ocrdma_poll_success_rcqe(qp, cqe, ibwc); in ocrdma_poll_rcqe()
2796 expand = ocrdma_poll_err_rcqe(qp, cqe, ibwc, polled, stop, in ocrdma_poll_rcqe()
2802 static void ocrdma_change_cq_phase(struct ocrdma_cq *cq, struct ocrdma_cqe *cqe, in ocrdma_change_cq_phase() argument
2810 cqe->flags_status_srcqpn = 0; in ocrdma_change_cq_phase()
2823 struct ocrdma_cqe *cqe; in ocrdma_poll_hwcq() local
2828 cqe = cq->va + cur_getp; in ocrdma_poll_hwcq()
2830 if (!is_cqe_valid(cq, cqe)) in ocrdma_poll_hwcq()
2832 qpn = (le32_to_cpu(cqe->cmn.qpn) & OCRDMA_CQE_QPN_MASK); in ocrdma_poll_hwcq()
2839 if (is_cqe_for_sq(cqe)) { in ocrdma_poll_hwcq()
2840 expand = ocrdma_poll_scqe(qp, cqe, ibwc, &polled, in ocrdma_poll_hwcq()
2843 expand = ocrdma_poll_rcqe(qp, cqe, ibwc, &polled, in ocrdma_poll_hwcq()
2851 cqe->cmn.qpn = 0; in ocrdma_poll_hwcq()
2855 ocrdma_change_cq_phase(cq, cqe, cur_getp); in ocrdma_poll_hwcq()