Lines Matching refs:op_req_q

29 mpi3mr_check_req_qfull(struct op_req_qinfo *op_req_q)  in mpi3mr_check_req_qfull()  argument
34 pi = op_req_q->pi; in mpi3mr_check_req_qfull()
35 ci = READ_ONCE(op_req_q->ci); in mpi3mr_check_req_qfull()
36 max_entries = op_req_q->num_requests; in mpi3mr_check_req_qfull()
453 struct op_req_qinfo *op_req_q; in mpi3mr_process_op_reply_q() local
478 op_req_q = &mrioc->req_qinfo[req_q_idx]; in mpi3mr_process_op_reply_q()
480 WRITE_ONCE(op_req_q->ci, le16_to_cpu(reply_desc->request_queue_ci)); in mpi3mr_process_op_reply_q()
1491 struct op_req_qinfo *op_req_q = mrioc->req_qinfo + qidx; in mpi3mr_alloc_op_req_q_segments() local
1497 op_req_q->segment_qd = in mpi3mr_alloc_op_req_q_segments()
1502 op_req_q->q_segment_list = dma_alloc_coherent(&mrioc->pdev->dev, in mpi3mr_alloc_op_req_q_segments()
1503 MPI3MR_MAX_SEG_LIST_SIZE, &op_req_q->q_segment_list_dma, in mpi3mr_alloc_op_req_q_segments()
1505 if (!op_req_q->q_segment_list) in mpi3mr_alloc_op_req_q_segments()
1507 q_segment_list_entry = (u64 *)op_req_q->q_segment_list; in mpi3mr_alloc_op_req_q_segments()
1510 op_req_q->segment_qd = op_req_q->num_requests; in mpi3mr_alloc_op_req_q_segments()
1511 size = op_req_q->num_requests * mrioc->facts.op_req_sz; in mpi3mr_alloc_op_req_q_segments()
1514 op_req_q->num_segments = DIV_ROUND_UP(op_req_q->num_requests, in mpi3mr_alloc_op_req_q_segments()
1515 op_req_q->segment_qd); in mpi3mr_alloc_op_req_q_segments()
1517 op_req_q->q_segments = kcalloc(op_req_q->num_segments, in mpi3mr_alloc_op_req_q_segments()
1519 if (!op_req_q->q_segments) in mpi3mr_alloc_op_req_q_segments()
1522 segments = op_req_q->q_segments; in mpi3mr_alloc_op_req_q_segments()
1523 for (i = 0; i < op_req_q->num_segments; i++) { in mpi3mr_alloc_op_req_q_segments()
1662 struct op_req_qinfo *op_req_q = mrioc->req_qinfo + idx; in mpi3mr_create_op_req_q() local
1666 req_qid = op_req_q->qid; in mpi3mr_create_op_req_q()
1677 op_req_q->num_requests = MPI3MR_OP_REQ_Q_QD; in mpi3mr_create_op_req_q()
1678 op_req_q->ci = 0; in mpi3mr_create_op_req_q()
1679 op_req_q->pi = 0; in mpi3mr_create_op_req_q()
1680 op_req_q->reply_qid = reply_qid; in mpi3mr_create_op_req_q()
1681 spin_lock_init(&op_req_q->q_lock); in mpi3mr_create_op_req_q()
1683 if (!op_req_q->q_segments) { in mpi3mr_create_op_req_q()
1708 op_req_q->q_segment_list_dma); in mpi3mr_create_op_req_q()
1711 op_req_q->q_segments[0].segment_dma); in mpi3mr_create_op_req_q()
1713 create_req.size = cpu_to_le16(op_req_q->num_requests); in mpi3mr_create_op_req_q()
1743 op_req_q->qid = req_qid; in mpi3mr_create_op_req_q()
1844 struct op_req_qinfo *op_req_q, u8 *req) in mpi3mr_op_request_post() argument
1852 struct segments *segments = op_req_q->q_segments; in mpi3mr_op_request_post()
1854 reply_qidx = op_req_q->reply_qid - 1; in mpi3mr_op_request_post()
1859 spin_lock_irqsave(&op_req_q->q_lock, flags); in mpi3mr_op_request_post()
1860 pi = op_req_q->pi; in mpi3mr_op_request_post()
1861 max_entries = op_req_q->num_requests; in mpi3mr_op_request_post()
1863 if (mpi3mr_check_req_qfull(op_req_q)) { in mpi3mr_op_request_post()
1868 if (mpi3mr_check_req_qfull(op_req_q)) { in mpi3mr_op_request_post()
1880 segment_base_addr = segments[pi / op_req_q->segment_qd].segment; in mpi3mr_op_request_post()
1882 ((pi % op_req_q->segment_qd) * req_sz); in mpi3mr_op_request_post()
1889 op_req_q->pi = pi; in mpi3mr_op_request_post()
1895 writel(op_req_q->pi, in mpi3mr_op_request_post()
1899 spin_unlock_irqrestore(&op_req_q->q_lock, flags); in mpi3mr_op_request_post()
3478 struct op_req_qinfo *op_req_q = mrioc->req_qinfo + qidx; in mpi3mr_memset_op_req_q_buffers() local
3482 if (!op_req_q->q_segments) in mpi3mr_memset_op_req_q_buffers()
3485 size = op_req_q->segment_qd * mrioc->facts.op_req_sz; in mpi3mr_memset_op_req_q_buffers()
3486 segments = op_req_q->q_segments; in mpi3mr_memset_op_req_q_buffers()
3487 for (i = 0; i < op_req_q->num_segments; i++) in mpi3mr_memset_op_req_q_buffers()