Lines Matching refs:cqe
969 int entries = attr->cqe; in ocrdma_create_cq()
1023 ibcq->cqe = new_cnt; in ocrdma_resize_cq()
1034 struct ocrdma_cqe *cqe = NULL; in ocrdma_flush_cq() local
1036 cqe = cq->va; in ocrdma_flush_cq()
1044 if (is_cqe_valid(cq, cqe)) in ocrdma_flush_cq()
1046 cqe++; in ocrdma_flush_cq()
1593 struct ocrdma_cqe *cqe; in ocrdma_discard_cqes() local
1612 cqe = cq->va + cur_getp; in ocrdma_discard_cqes()
1617 qpn = cqe->cmn.qpn & OCRDMA_CQE_QPN_MASK; in ocrdma_discard_cqes()
1623 if (is_cqe_for_sq(cqe)) { in ocrdma_discard_cqes()
1627 wqe_idx = (le32_to_cpu(cqe->rq.buftag_qpn) >> in ocrdma_discard_cqes()
1643 cqe->cmn.qpn = 0; in ocrdma_discard_cqes()
2438 struct ocrdma_cqe *cqe) in ocrdma_set_cqe_status_flushed() argument
2440 if (is_cqe_for_sq(cqe)) { in ocrdma_set_cqe_status_flushed()
2441 cqe->flags_status_srcqpn = cpu_to_le32(le32_to_cpu( in ocrdma_set_cqe_status_flushed()
2442 cqe->flags_status_srcqpn) & in ocrdma_set_cqe_status_flushed()
2444 cqe->flags_status_srcqpn = cpu_to_le32(le32_to_cpu( in ocrdma_set_cqe_status_flushed()
2445 cqe->flags_status_srcqpn) | in ocrdma_set_cqe_status_flushed()
2450 cqe->flags_status_srcqpn = cpu_to_le32(le32_to_cpu( in ocrdma_set_cqe_status_flushed()
2451 cqe->flags_status_srcqpn) & in ocrdma_set_cqe_status_flushed()
2453 cqe->flags_status_srcqpn = cpu_to_le32(le32_to_cpu( in ocrdma_set_cqe_status_flushed()
2454 cqe->flags_status_srcqpn) | in ocrdma_set_cqe_status_flushed()
2458 cqe->flags_status_srcqpn = cpu_to_le32(le32_to_cpu( in ocrdma_set_cqe_status_flushed()
2459 cqe->flags_status_srcqpn) & in ocrdma_set_cqe_status_flushed()
2461 cqe->flags_status_srcqpn = cpu_to_le32(le32_to_cpu( in ocrdma_set_cqe_status_flushed()
2462 cqe->flags_status_srcqpn) | in ocrdma_set_cqe_status_flushed()
2469 static bool ocrdma_update_err_cqe(struct ib_wc *ibwc, struct ocrdma_cqe *cqe, in ocrdma_update_err_cqe() argument
2486 ocrdma_set_cqe_status_flushed(qp, cqe); in ocrdma_update_err_cqe()
2491 static int ocrdma_update_err_rcqe(struct ib_wc *ibwc, struct ocrdma_cqe *cqe, in ocrdma_update_err_rcqe() argument
2498 return ocrdma_update_err_cqe(ibwc, cqe, qp, status); in ocrdma_update_err_rcqe()
2501 static int ocrdma_update_err_scqe(struct ib_wc *ibwc, struct ocrdma_cqe *cqe, in ocrdma_update_err_scqe() argument
2507 return ocrdma_update_err_cqe(ibwc, cqe, qp, status); in ocrdma_update_err_scqe()
2512 struct ocrdma_cqe *cqe, struct ib_wc *ibwc, in ocrdma_poll_err_scqe() argument
2517 int status = (le32_to_cpu(cqe->flags_status_srcqpn) & in ocrdma_poll_err_scqe()
2532 expand = ocrdma_update_err_rcqe(ibwc, cqe, qp, status); in ocrdma_poll_err_scqe()
2550 expand = ocrdma_update_err_scqe(ibwc, cqe, qp, status); in ocrdma_poll_err_scqe()
2556 struct ocrdma_cqe *cqe, in ocrdma_poll_success_scqe() argument
2572 wqe_idx = (le32_to_cpu(cqe->wq.wqeidx) & in ocrdma_poll_success_scqe()
2581 static bool ocrdma_poll_scqe(struct ocrdma_qp *qp, struct ocrdma_cqe *cqe, in ocrdma_poll_scqe() argument
2587 status = (le32_to_cpu(cqe->flags_status_srcqpn) & in ocrdma_poll_scqe()
2591 expand = ocrdma_poll_success_scqe(qp, cqe, ibwc, polled); in ocrdma_poll_scqe()
2593 expand = ocrdma_poll_err_scqe(qp, cqe, ibwc, polled, stop); in ocrdma_poll_scqe()
2598 struct ocrdma_cqe *cqe) in ocrdma_update_ud_rcqe() argument
2603 status = (le32_to_cpu(cqe->flags_status_srcqpn) & in ocrdma_update_ud_rcqe()
2605 ibwc->src_qp = le32_to_cpu(cqe->flags_status_srcqpn) & in ocrdma_update_ud_rcqe()
2609 ibwc->byte_len = (le32_to_cpu(cqe->ud.rxlen_pkey) >> in ocrdma_update_ud_rcqe()
2614 hdr_type = (le32_to_cpu(cqe->ud.rxlen_pkey) >> in ocrdma_update_ud_rcqe()
2625 struct ocrdma_cqe *cqe, in ocrdma_update_free_srq_cqe() argument
2633 wqe_idx = (le32_to_cpu(cqe->rq.buftag_qpn) >> in ocrdma_update_free_srq_cqe()
2644 static bool ocrdma_poll_err_rcqe(struct ocrdma_qp *qp, struct ocrdma_cqe *cqe, in ocrdma_poll_err_rcqe() argument
2661 expand = ocrdma_update_err_scqe(ibwc, cqe, qp, status); in ocrdma_poll_err_rcqe()
2674 expand = ocrdma_update_err_rcqe(ibwc, cqe, qp, status); in ocrdma_poll_err_rcqe()
2680 struct ocrdma_cqe *cqe, struct ib_wc *ibwc) in ocrdma_poll_success_rcqe() argument
2690 ocrdma_update_ud_rcqe(dev, ibwc, cqe); in ocrdma_poll_success_rcqe()
2692 ibwc->byte_len = le32_to_cpu(cqe->rq.rxlen); in ocrdma_poll_success_rcqe()
2694 if (is_cqe_imm(cqe)) { in ocrdma_poll_success_rcqe()
2695 ibwc->ex.imm_data = htonl(le32_to_cpu(cqe->rq.lkey_immdt)); in ocrdma_poll_success_rcqe()
2697 } else if (is_cqe_wr_imm(cqe)) { in ocrdma_poll_success_rcqe()
2699 ibwc->ex.imm_data = htonl(le32_to_cpu(cqe->rq.lkey_immdt)); in ocrdma_poll_success_rcqe()
2701 } else if (is_cqe_invalidated(cqe)) { in ocrdma_poll_success_rcqe()
2702 ibwc->ex.invalidate_rkey = le32_to_cpu(cqe->rq.lkey_immdt); in ocrdma_poll_success_rcqe()
2706 ocrdma_update_free_srq_cqe(ibwc, cqe, qp); in ocrdma_poll_success_rcqe()
2713 static bool ocrdma_poll_rcqe(struct ocrdma_qp *qp, struct ocrdma_cqe *cqe, in ocrdma_poll_rcqe() argument
2721 status = (le32_to_cpu(cqe->flags_status_srcqpn) & in ocrdma_poll_rcqe()
2725 status = (le32_to_cpu(cqe->flags_status_srcqpn) & in ocrdma_poll_rcqe()
2731 ocrdma_poll_success_rcqe(qp, cqe, ibwc); in ocrdma_poll_rcqe()
2733 expand = ocrdma_poll_err_rcqe(qp, cqe, ibwc, polled, stop, in ocrdma_poll_rcqe()
2739 static void ocrdma_change_cq_phase(struct ocrdma_cq *cq, struct ocrdma_cqe *cqe, in ocrdma_change_cq_phase() argument
2747 cqe->flags_status_srcqpn = 0; in ocrdma_change_cq_phase()
2760 struct ocrdma_cqe *cqe; in ocrdma_poll_hwcq() local
2765 cqe = cq->va + cur_getp; in ocrdma_poll_hwcq()
2767 if (!is_cqe_valid(cq, cqe)) in ocrdma_poll_hwcq()
2769 qpn = (le32_to_cpu(cqe->cmn.qpn) & OCRDMA_CQE_QPN_MASK); in ocrdma_poll_hwcq()
2776 if (is_cqe_for_sq(cqe)) { in ocrdma_poll_hwcq()
2777 expand = ocrdma_poll_scqe(qp, cqe, ibwc, &polled, in ocrdma_poll_hwcq()
2780 expand = ocrdma_poll_rcqe(qp, cqe, ibwc, &polled, in ocrdma_poll_hwcq()
2788 cqe->cmn.qpn = 0; in ocrdma_poll_hwcq()
2792 ocrdma_change_cq_phase(cq, cqe, cur_getp); in ocrdma_poll_hwcq()