Lines Matching refs:cqe

1438 			struct cq_req *cqe = (struct cq_req *)hw_cqe;  in __clean_cq()  local
1440 if (qp == le64_to_cpu(cqe->qp_handle)) in __clean_cq()
1441 cqe->qp_handle = 0; in __clean_cq()
1448 struct cq_res_rc *cqe = (struct cq_res_rc *)hw_cqe; in __clean_cq() local
1450 if (qp == le64_to_cpu(cqe->qp_handle)) in __clean_cq()
1451 cqe->qp_handle = 0; in __clean_cq()
2129 struct bnxt_qplib_cqe *cqe; in __flush_sq() local
2135 cqe = *pcqe; in __flush_sq()
2145 memset(cqe, 0, sizeof(*cqe)); in __flush_sq()
2146 cqe->status = CQ_REQ_STATUS_WORK_REQUEST_FLUSHED_ERR; in __flush_sq()
2147 cqe->opcode = CQ_BASE_CQE_TYPE_REQ; in __flush_sq()
2148 cqe->qp_handle = (u64)(unsigned long)qp; in __flush_sq()
2149 cqe->wr_id = sq->swq[last].wr_id; in __flush_sq()
2150 cqe->src_qp = qp->id; in __flush_sq()
2151 cqe->type = sq->swq[last].type; in __flush_sq()
2152 cqe++; in __flush_sq()
2158 *pcqe = cqe; in __flush_sq()
2169 struct bnxt_qplib_cqe *cqe; in __flush_rq() local
2189 cqe = *pcqe; in __flush_rq()
2194 memset(cqe, 0, sizeof(*cqe)); in __flush_rq()
2195 cqe->status = in __flush_rq()
2197 cqe->opcode = opcode; in __flush_rq()
2198 cqe->qp_handle = (unsigned long)qp; in __flush_rq()
2199 cqe->wr_id = rq->swq[last].wr_id; in __flush_rq()
2200 cqe++; in __flush_rq()
2205 *pcqe = cqe; in __flush_rq()
2332 struct bnxt_qplib_cqe *cqe; in bnxt_qplib_cq_process_req() local
2357 cqe = *pcqe; in bnxt_qplib_cq_process_req()
2364 memset(cqe, 0, sizeof(*cqe)); in bnxt_qplib_cq_process_req()
2365 cqe->opcode = CQ_BASE_CQE_TYPE_REQ; in bnxt_qplib_cq_process_req()
2366 cqe->qp_handle = (u64)(unsigned long)qp; in bnxt_qplib_cq_process_req()
2367 cqe->src_qp = qp->id; in bnxt_qplib_cq_process_req()
2368 cqe->wr_id = swq->wr_id; in bnxt_qplib_cq_process_req()
2369 if (cqe->wr_id == BNXT_QPLIB_FENCE_WRID) in bnxt_qplib_cq_process_req()
2371 cqe->type = swq->type; in bnxt_qplib_cq_process_req()
2379 cqe->status = hwcqe->status; in bnxt_qplib_cq_process_req()
2382 sq->swq_last, cqe->wr_id, cqe->status); in bnxt_qplib_cq_process_req()
2383 cqe++; in bnxt_qplib_cq_process_req()
2396 cqe->status = CQ_REQ_STATUS_OK; in bnxt_qplib_cq_process_req()
2397 cqe++; in bnxt_qplib_cq_process_req()
2408 *pcqe = cqe; in bnxt_qplib_cq_process_req()
2439 struct bnxt_qplib_cqe *cqe; in bnxt_qplib_cq_process_res_rc() local
2457 cqe = *pcqe; in bnxt_qplib_cq_process_res_rc()
2458 cqe->opcode = hwcqe->cqe_type_toggle & CQ_BASE_CQE_TYPE_MASK; in bnxt_qplib_cq_process_res_rc()
2459 cqe->length = le32_to_cpu(hwcqe->length); in bnxt_qplib_cq_process_res_rc()
2460 cqe->invrkey = le32_to_cpu(hwcqe->imm_data_or_inv_r_key); in bnxt_qplib_cq_process_res_rc()
2461 cqe->mr_handle = le64_to_cpu(hwcqe->mr_handle); in bnxt_qplib_cq_process_res_rc()
2462 cqe->flags = le16_to_cpu(hwcqe->flags); in bnxt_qplib_cq_process_res_rc()
2463 cqe->status = hwcqe->status; in bnxt_qplib_cq_process_res_rc()
2464 cqe->qp_handle = (u64)(unsigned long)qp; in bnxt_qplib_cq_process_res_rc()
2468 if (cqe->flags & CQ_RES_RC_FLAGS_SRQ_SRQ) { in bnxt_qplib_cq_process_res_rc()
2478 cqe->wr_id = srq->swq[wr_id_idx].wr_id; in bnxt_qplib_cq_process_res_rc()
2480 cqe++; in bnxt_qplib_cq_process_res_rc()
2482 *pcqe = cqe; in bnxt_qplib_cq_process_res_rc()
2496 cqe->wr_id = swq->wr_id; in bnxt_qplib_cq_process_res_rc()
2497 cqe++; in bnxt_qplib_cq_process_res_rc()
2501 *pcqe = cqe; in bnxt_qplib_cq_process_res_rc()
2520 struct bnxt_qplib_cqe *cqe; in bnxt_qplib_cq_process_res_ud() local
2537 cqe = *pcqe; in bnxt_qplib_cq_process_res_ud()
2538 cqe->opcode = hwcqe->cqe_type_toggle & CQ_BASE_CQE_TYPE_MASK; in bnxt_qplib_cq_process_res_ud()
2539 cqe->length = le16_to_cpu(hwcqe->length) & CQ_RES_UD_LENGTH_MASK; in bnxt_qplib_cq_process_res_ud()
2540 cqe->cfa_meta = le16_to_cpu(hwcqe->cfa_metadata); in bnxt_qplib_cq_process_res_ud()
2541 cqe->invrkey = le32_to_cpu(hwcqe->imm_data); in bnxt_qplib_cq_process_res_ud()
2542 cqe->flags = le16_to_cpu(hwcqe->flags); in bnxt_qplib_cq_process_res_ud()
2543 cqe->status = hwcqe->status; in bnxt_qplib_cq_process_res_ud()
2544 cqe->qp_handle = (u64)(unsigned long)qp; in bnxt_qplib_cq_process_res_ud()
2546 memcpy(cqe->smac, hwcqe->src_mac, ETH_ALEN); in bnxt_qplib_cq_process_res_ud()
2549 cqe->src_qp = le16_to_cpu(hwcqe->src_qp_low) | in bnxt_qplib_cq_process_res_ud()
2554 if (cqe->flags & CQ_RES_RC_FLAGS_SRQ_SRQ) { in bnxt_qplib_cq_process_res_ud()
2565 cqe->wr_id = srq->swq[wr_id_idx].wr_id; in bnxt_qplib_cq_process_res_ud()
2567 cqe++; in bnxt_qplib_cq_process_res_ud()
2569 *pcqe = cqe; in bnxt_qplib_cq_process_res_ud()
2584 cqe->wr_id = swq->wr_id; in bnxt_qplib_cq_process_res_ud()
2585 cqe++; in bnxt_qplib_cq_process_res_ud()
2589 *pcqe = cqe; in bnxt_qplib_cq_process_res_ud()
2623 struct bnxt_qplib_cqe *cqe; in bnxt_qplib_cq_process_res_raweth_qp1() local
2638 cqe = *pcqe; in bnxt_qplib_cq_process_res_raweth_qp1()
2639 cqe->opcode = hwcqe->cqe_type_toggle & CQ_BASE_CQE_TYPE_MASK; in bnxt_qplib_cq_process_res_raweth_qp1()
2640 cqe->flags = le16_to_cpu(hwcqe->flags); in bnxt_qplib_cq_process_res_raweth_qp1()
2641 cqe->qp_handle = (u64)(unsigned long)qp; in bnxt_qplib_cq_process_res_raweth_qp1()
2646 cqe->src_qp = qp->id; in bnxt_qplib_cq_process_res_raweth_qp1()
2647 if (qp->id == 1 && !cqe->length) { in bnxt_qplib_cq_process_res_raweth_qp1()
2649 cqe->length = 296; in bnxt_qplib_cq_process_res_raweth_qp1()
2651 cqe->length = le16_to_cpu(hwcqe->length); in bnxt_qplib_cq_process_res_raweth_qp1()
2653 cqe->pkey_index = qp->pkey_index; in bnxt_qplib_cq_process_res_raweth_qp1()
2654 memcpy(cqe->smac, qp->smac, 6); in bnxt_qplib_cq_process_res_raweth_qp1()
2656 cqe->raweth_qp1_flags = le16_to_cpu(hwcqe->raweth_qp1_flags); in bnxt_qplib_cq_process_res_raweth_qp1()
2657 cqe->raweth_qp1_flags2 = le32_to_cpu(hwcqe->raweth_qp1_flags2); in bnxt_qplib_cq_process_res_raweth_qp1()
2658 cqe->raweth_qp1_metadata = le32_to_cpu(hwcqe->raweth_qp1_metadata); in bnxt_qplib_cq_process_res_raweth_qp1()
2660 if (cqe->flags & CQ_RES_RAWETH_QP1_FLAGS_SRQ_SRQ) { in bnxt_qplib_cq_process_res_raweth_qp1()
2673 cqe->wr_id = srq->swq[wr_id_idx].wr_id; in bnxt_qplib_cq_process_res_raweth_qp1()
2675 cqe++; in bnxt_qplib_cq_process_res_raweth_qp1()
2677 *pcqe = cqe; in bnxt_qplib_cq_process_res_raweth_qp1()
2691 cqe->wr_id = swq->wr_id; in bnxt_qplib_cq_process_res_raweth_qp1()
2692 cqe++; in bnxt_qplib_cq_process_res_raweth_qp1()
2696 *pcqe = cqe; in bnxt_qplib_cq_process_res_raweth_qp1()
2716 struct bnxt_qplib_cqe *cqe; in bnxt_qplib_cq_process_terminal() local
2755 cqe = *pcqe; in bnxt_qplib_cq_process_terminal()
2761 memset(cqe, 0, sizeof(*cqe)); in bnxt_qplib_cq_process_terminal()
2762 cqe->status = CQ_REQ_STATUS_OK; in bnxt_qplib_cq_process_terminal()
2763 cqe->opcode = CQ_BASE_CQE_TYPE_REQ; in bnxt_qplib_cq_process_terminal()
2764 cqe->qp_handle = (u64)(unsigned long)qp; in bnxt_qplib_cq_process_terminal()
2765 cqe->src_qp = qp->id; in bnxt_qplib_cq_process_terminal()
2766 cqe->wr_id = sq->swq[swq_last].wr_id; in bnxt_qplib_cq_process_terminal()
2767 cqe->type = sq->swq[swq_last].type; in bnxt_qplib_cq_process_terminal()
2768 cqe++; in bnxt_qplib_cq_process_terminal()
2774 *pcqe = cqe; in bnxt_qplib_cq_process_terminal()
2830 struct bnxt_qplib_cqe *cqe, in bnxt_qplib_process_flush_list() argument
2840 __flush_sq(&qp->sq, qp, &cqe, &budget); in bnxt_qplib_process_flush_list()
2845 __flush_rq(&qp->rq, qp, &cqe, &budget); in bnxt_qplib_process_flush_list()
2852 int bnxt_qplib_poll_cq(struct bnxt_qplib_cq *cq, struct bnxt_qplib_cqe *cqe, in bnxt_qplib_poll_cq() argument
2882 &cqe, &budget, in bnxt_qplib_poll_cq()
2888 hw_cqe, &cqe, in bnxt_qplib_poll_cq()
2893 (cq, (struct cq_res_ud *)hw_cqe, &cqe, in bnxt_qplib_poll_cq()
2899 hw_cqe, &cqe, &budget); in bnxt_qplib_poll_cq()
2904 &cqe, &budget); in bnxt_qplib_poll_cq()