Lines Matching refs:cptvf
44 static int setup_sgio_components(struct cpt_vf *cptvf, struct buf_ptr *list, in setup_sgio_components() argument
50 struct pci_dev *pdev = cptvf->pdev; in setup_sgio_components()
121 static inline int setup_sgio_list(struct cpt_vf *cptvf, in setup_sgio_list() argument
127 struct pci_dev *pdev = cptvf->pdev; in setup_sgio_list()
143 ret = setup_sgio_components(cptvf, req->in, in setup_sgio_list()
160 ret = setup_sgio_components(cptvf, req->out, in setup_sgio_list()
223 static int send_cpt_command(struct cpt_vf *cptvf, union cpt_inst_s *cmd, in send_cpt_command() argument
226 struct pci_dev *pdev = cptvf->pdev; in send_cpt_command()
233 if (unlikely(qno >= cptvf->nr_queues)) { in send_cpt_command()
235 qno, cptvf->nr_queues); in send_cpt_command()
239 qinfo = &cptvf->cqinfo; in send_cpt_command()
263 cptvf_write_vq_doorbell(cptvf, 1); in send_cpt_command()
270 static void do_request_cleanup(struct cpt_vf *cptvf, in do_request_cleanup() argument
274 struct pci_dev *pdev = cptvf->pdev; in do_request_cleanup()
316 static void do_post_process(struct cpt_vf *cptvf, struct cpt_info_buffer *info) in do_post_process() argument
318 struct pci_dev *pdev = cptvf->pdev; in do_post_process()
325 do_request_cleanup(cptvf, info); in do_post_process()
328 static inline void process_pending_queue(struct cpt_vf *cptvf, in process_pending_queue() argument
332 struct pci_dev *pdev = cptvf->pdev; in process_pending_queue()
367 do_request_cleanup(cptvf, info); in process_pending_queue()
381 do_request_cleanup(cptvf, info); in process_pending_queue()
401 do_post_process(info->cptvf, info); in process_pending_queue()
410 int process_request(struct cpt_vf *cptvf, struct cpt_request_info *req) in process_request() argument
419 struct pci_dev *pdev = cptvf->pdev; in process_request()
433 info->cptvf = cptvf; in process_request()
435 ret = setup_sgio_list(cptvf, info, req); in process_request()
480 pqueue = &cptvf->pqinfo.queue[queue]; in process_request()
484 process_pending_queue(cptvf, &cptvf->pqinfo, queue); in process_request()
489 pentry = get_free_pending_entry(pqueue, cptvf->pqinfo.qlen); in process_request()
493 process_pending_queue(cptvf, &cptvf->pqinfo, queue); in process_request()
528 ret = send_cpt_command(cptvf, &cptinst, queue); in process_request()
540 do_request_cleanup(cptvf, info); in process_request()
545 void vq_post_process(struct cpt_vf *cptvf, u32 qno) in vq_post_process() argument
547 struct pci_dev *pdev = cptvf->pdev; in vq_post_process()
549 if (unlikely(qno > cptvf->nr_queues)) { in vq_post_process()
555 process_pending_queue(cptvf, &cptvf->pqinfo, qno); in vq_post_process()
560 struct cpt_vf *cptvf = (struct cpt_vf *)vfdev; in cptvf_do_request() local
561 struct pci_dev *pdev = cptvf->pdev; in cptvf_do_request()
563 if (!cpt_device_ready(cptvf)) { in cptvf_do_request()
568 if ((cptvf->vftype == SE_TYPES) && (!req->ctrl.s.se_req)) { in cptvf_do_request()
570 cptvf->vfid); in cptvf_do_request()
572 } else if ((cptvf->vftype == AE_TYPES) && (req->ctrl.s.se_req)) { in cptvf_do_request()
574 cptvf->vfid); in cptvf_do_request()
578 return process_request(cptvf, req); in cptvf_do_request()