Lines Matching refs:dmabuf
1692 struct lpfc_dmabuf *dmabuf, *next_dmabuf; in lpfc_sli_hbqbuf_free_all() local
1702 list_for_each_entry_safe(dmabuf, next_dmabuf, in lpfc_sli_hbqbuf_free_all()
1704 hbq_buf = container_of(dmabuf, struct hbq_dmabuf, dbuf); in lpfc_sli_hbqbuf_free_all()
1711 list_for_each_entry_safe(dmabuf, next_dmabuf, &phba->rb_pend_list, in lpfc_sli_hbqbuf_free_all()
1713 hbq_buf = container_of(dmabuf, struct hbq_dmabuf, dbuf); in lpfc_sli_hbqbuf_free_all()
3481 struct hbq_dmabuf *dmabuf; in lpfc_sli_handle_slow_ring_event_s4() local
3508 dmabuf = container_of(cq_event, struct hbq_dmabuf, in lpfc_sli_handle_slow_ring_event_s4()
3510 lpfc_sli4_handle_received_buffer(phba, dmabuf); in lpfc_sli_handle_slow_ring_event_s4()
4861 struct lpfc_dmabuf *dmabuf; in lpfc_sli4_read_rev() local
4864 dmabuf = kzalloc(sizeof(struct lpfc_dmabuf), GFP_KERNEL); in lpfc_sli4_read_rev()
4865 if (!dmabuf) in lpfc_sli4_read_rev()
4873 dmabuf->virt = dma_zalloc_coherent(&phba->pcidev->dev, dma_size, in lpfc_sli4_read_rev()
4874 &dmabuf->phys, GFP_KERNEL); in lpfc_sli4_read_rev()
4875 if (!dmabuf->virt) { in lpfc_sli4_read_rev()
4876 kfree(dmabuf); in lpfc_sli4_read_rev()
4887 mqe->un.read_rev.vpd_paddr_high = putPaddrHigh(dmabuf->phys); in lpfc_sli4_read_rev()
4888 mqe->un.read_rev.vpd_paddr_low = putPaddrLow(dmabuf->phys); in lpfc_sli4_read_rev()
4896 dmabuf->virt, dmabuf->phys); in lpfc_sli4_read_rev()
4897 kfree(dmabuf); in lpfc_sli4_read_rev()
4909 memcpy(vpd, dmabuf->virt, *vpd_size); in lpfc_sli4_read_rev()
4912 dmabuf->virt, dmabuf->phys); in lpfc_sli4_read_rev()
4913 kfree(dmabuf); in lpfc_sli4_read_rev()
8057 struct lpfc_dmabuf *dmabuf; in lpfc_sli4_bpl2sgl() local
8079 dmabuf = (struct lpfc_dmabuf *)piocbq->context3; in lpfc_sli4_bpl2sgl()
8083 bpl = (struct ulp_bde64 *)dmabuf->virt; in lpfc_sli4_bpl2sgl()
11477 struct lpfc_dmabuf *dmabuf; in lpfc_sli4_iocb_param_transfer() local
11497 dmabuf = (struct lpfc_dmabuf *)pIocbOut->context3; in lpfc_sli4_iocb_param_transfer()
11498 bpl = (struct ulp_bde64 *)dmabuf->virt; in lpfc_sli4_iocb_param_transfer()
11508 dmabuf = (struct lpfc_dmabuf *)pIocbOut->context3; in lpfc_sli4_iocb_param_transfer()
11509 bpl = (struct ulp_bde64 *)dmabuf->virt; in lpfc_sli4_iocb_param_transfer()
12752 struct lpfc_dmabuf *dmabuf; in lpfc_sli4_queue_free() local
12758 list_remove_head(&queue->page_list, dmabuf, struct lpfc_dmabuf, in lpfc_sli4_queue_free()
12761 dmabuf->virt, dmabuf->phys); in lpfc_sli4_queue_free()
12762 kfree(dmabuf); in lpfc_sli4_queue_free()
12783 struct lpfc_dmabuf *dmabuf; in lpfc_sli4_queue_alloc() local
12801 dmabuf = kzalloc(sizeof(struct lpfc_dmabuf), GFP_KERNEL); in lpfc_sli4_queue_alloc()
12802 if (!dmabuf) in lpfc_sli4_queue_alloc()
12804 dmabuf->virt = dma_zalloc_coherent(&phba->pcidev->dev, in lpfc_sli4_queue_alloc()
12805 hw_page_size, &dmabuf->phys, in lpfc_sli4_queue_alloc()
12807 if (!dmabuf->virt) { in lpfc_sli4_queue_alloc()
12808 kfree(dmabuf); in lpfc_sli4_queue_alloc()
12811 dmabuf->buffer_tag = x; in lpfc_sli4_queue_alloc()
12812 list_add_tail(&dmabuf->list, &queue->page_list); in lpfc_sli4_queue_alloc()
12814 dma_pointer = dmabuf->virt; in lpfc_sli4_queue_alloc()
12816 dma_pointer < (hw_page_size + dmabuf->virt); in lpfc_sli4_queue_alloc()
12980 struct lpfc_dmabuf *dmabuf; in lpfc_eq_create() local
13039 list_for_each_entry(dmabuf, &eq->page_list, list) { in lpfc_eq_create()
13040 memset(dmabuf->virt, 0, hw_page_size); in lpfc_eq_create()
13041 eq_create->u.request.page[dmabuf->buffer_tag].addr_lo = in lpfc_eq_create()
13042 putPaddrLow(dmabuf->phys); in lpfc_eq_create()
13043 eq_create->u.request.page[dmabuf->buffer_tag].addr_hi = in lpfc_eq_create()
13044 putPaddrHigh(dmabuf->phys); in lpfc_eq_create()
13098 struct lpfc_dmabuf *dmabuf; in lpfc_cq_create() local
13159 list_for_each_entry(dmabuf, &cq->page_list, list) { in lpfc_cq_create()
13160 memset(dmabuf->virt, 0, hw_page_size); in lpfc_cq_create()
13161 cq_create->u.request.page[dmabuf->buffer_tag].addr_lo = in lpfc_cq_create()
13162 putPaddrLow(dmabuf->phys); in lpfc_cq_create()
13163 cq_create->u.request.page[dmabuf->buffer_tag].addr_hi = in lpfc_cq_create()
13164 putPaddrHigh(dmabuf->phys); in lpfc_cq_create()
13218 struct lpfc_dmabuf *dmabuf; in lpfc_mq_create_fb_init() local
13250 list_for_each_entry(dmabuf, &mq->page_list, list) { in lpfc_mq_create_fb_init()
13251 mq_create->u.request.page[dmabuf->buffer_tag].addr_lo = in lpfc_mq_create_fb_init()
13252 putPaddrLow(dmabuf->phys); in lpfc_mq_create_fb_init()
13253 mq_create->u.request.page[dmabuf->buffer_tag].addr_hi = in lpfc_mq_create_fb_init()
13254 putPaddrHigh(dmabuf->phys); in lpfc_mq_create_fb_init()
13285 struct lpfc_dmabuf *dmabuf; in lpfc_mq_create() local
13361 list_for_each_entry(dmabuf, &mq->page_list, list) { in lpfc_mq_create()
13362 memset(dmabuf->virt, 0, hw_page_size); in lpfc_mq_create()
13363 mq_create_ext->u.request.page[dmabuf->buffer_tag].addr_lo = in lpfc_mq_create()
13364 putPaddrLow(dmabuf->phys); in lpfc_mq_create()
13365 mq_create_ext->u.request.page[dmabuf->buffer_tag].addr_hi = in lpfc_mq_create()
13366 putPaddrHigh(dmabuf->phys); in lpfc_mq_create()
13439 struct lpfc_dmabuf *dmabuf; in lpfc_wq_create() local
13537 list_for_each_entry(dmabuf, &wq->page_list, list) { in lpfc_wq_create()
13538 memset(dmabuf->virt, 0, hw_page_size); in lpfc_wq_create()
13539 page[dmabuf->buffer_tag].addr_lo = putPaddrLow(dmabuf->phys); in lpfc_wq_create()
13540 page[dmabuf->buffer_tag].addr_hi = putPaddrHigh(dmabuf->phys); in lpfc_wq_create()
13675 struct lpfc_dmabuf *dmabuf; in lpfc_rq_create() local
13755 list_for_each_entry(dmabuf, &hrq->page_list, list) { in lpfc_rq_create()
13756 memset(dmabuf->virt, 0, hw_page_size); in lpfc_rq_create()
13757 rq_create->u.request.page[dmabuf->buffer_tag].addr_lo = in lpfc_rq_create()
13758 putPaddrLow(dmabuf->phys); in lpfc_rq_create()
13759 rq_create->u.request.page[dmabuf->buffer_tag].addr_hi = in lpfc_rq_create()
13760 putPaddrHigh(dmabuf->phys); in lpfc_rq_create()
13886 list_for_each_entry(dmabuf, &drq->page_list, list) { in lpfc_rq_create()
13887 rq_create->u.request.page[dmabuf->buffer_tag].addr_lo = in lpfc_rq_create()
13888 putPaddrLow(dmabuf->phys); in lpfc_rq_create()
13889 rq_create->u.request.page[dmabuf->buffer_tag].addr_hi = in lpfc_rq_create()
13890 putPaddrHigh(dmabuf->phys); in lpfc_rq_create()
14763 struct hbq_dmabuf *dmabuf = NULL; in lpfc_update_rcv_time_stamp() local
14770 dmabuf = container_of(h_buf, struct hbq_dmabuf, hbuf); in lpfc_update_rcv_time_stamp()
14771 vport->rcv_buffer_time_stamp = dmabuf->time_stamp; in lpfc_update_rcv_time_stamp()
14787 struct hbq_dmabuf *dmabuf = NULL; in lpfc_cleanup_rcv_buffers() local
14791 dmabuf = container_of(h_buf, struct hbq_dmabuf, hbuf); in lpfc_cleanup_rcv_buffers()
14792 list_del_init(&dmabuf->hbuf.list); in lpfc_cleanup_rcv_buffers()
14794 &dmabuf->dbuf.list, list) { in lpfc_cleanup_rcv_buffers()
14798 lpfc_in_buf_free(vport->phba, &dmabuf->dbuf); in lpfc_cleanup_rcv_buffers()
14819 struct hbq_dmabuf *dmabuf = NULL; in lpfc_rcv_seq_check_edtov() local
14830 dmabuf = container_of(h_buf, struct hbq_dmabuf, hbuf); in lpfc_rcv_seq_check_edtov()
14832 dmabuf->time_stamp); in lpfc_rcv_seq_check_edtov()
14836 list_del_init(&dmabuf->hbuf.list); in lpfc_rcv_seq_check_edtov()
14838 &dmabuf->dbuf.list, list) { in lpfc_rcv_seq_check_edtov()
14842 lpfc_in_buf_free(vport->phba, &dmabuf->dbuf); in lpfc_rcv_seq_check_edtov()
14861 lpfc_fc_frame_add(struct lpfc_vport *vport, struct hbq_dmabuf *dmabuf) in lpfc_fc_frame_add() argument
14870 INIT_LIST_HEAD(&dmabuf->dbuf.list); in lpfc_fc_frame_add()
14871 dmabuf->time_stamp = jiffies; in lpfc_fc_frame_add()
14872 new_hdr = (struct fc_frame_header *)dmabuf->hbuf.virt; in lpfc_fc_frame_add()
14889 list_add_tail(&dmabuf->hbuf.list, &vport->rcv_buffer_list); in lpfc_fc_frame_add()
14891 return dmabuf; in lpfc_fc_frame_add()
14897 list_add_tail(&dmabuf->hbuf.list, &vport->rcv_buffer_list); in lpfc_fc_frame_add()
14898 list_add_tail(&dmabuf->dbuf.list, &seq_dmabuf->dbuf.list); in lpfc_fc_frame_add()
14900 return dmabuf; in lpfc_fc_frame_add()
14907 temp_hdr = dmabuf->hbuf.virt; in lpfc_fc_frame_add()
14908 list_add_tail(&dmabuf->dbuf.list, &seq_dmabuf->dbuf.list); in lpfc_fc_frame_add()
14921 list_add(&dmabuf->dbuf.list, &temp_dmabuf->dbuf.list); in lpfc_fc_frame_add()
14946 struct hbq_dmabuf *dmabuf) in lpfc_sli4_abort_partial_seq() argument
14954 INIT_LIST_HEAD(&dmabuf->dbuf.list); in lpfc_sli4_abort_partial_seq()
14955 INIT_LIST_HEAD(&dmabuf->hbuf.list); in lpfc_sli4_abort_partial_seq()
14956 new_hdr = (struct fc_frame_header *)dmabuf->hbuf.virt; in lpfc_sli4_abort_partial_seq()
14997 lpfc_sli4_abort_ulp_seq(struct lpfc_vport *vport, struct hbq_dmabuf *dmabuf) in lpfc_sli4_abort_ulp_seq() argument
15007 handled = lpfc_ct_handle_unsol_abort(phba, dmabuf); in lpfc_sli4_abort_ulp_seq()
15230 struct hbq_dmabuf *dmabuf) in lpfc_sli4_handle_unsol_abort() argument
15238 memcpy(&fc_hdr, dmabuf->hbuf.virt, sizeof(struct fc_frame_header)); in lpfc_sli4_handle_unsol_abort()
15246 aborted = lpfc_sli4_abort_partial_seq(vport, dmabuf); in lpfc_sli4_handle_unsol_abort()
15248 aborted = lpfc_sli4_abort_ulp_seq(vport, dmabuf); in lpfc_sli4_handle_unsol_abort()
15250 lpfc_in_buf_free(phba, &dmabuf->dbuf); in lpfc_sli4_handle_unsol_abort()
15269 lpfc_seq_complete(struct hbq_dmabuf *dmabuf) in lpfc_seq_complete() argument
15277 hdr = (struct fc_frame_header *)dmabuf->hbuf.virt; in lpfc_seq_complete()
15287 list_for_each_entry(d_buf, &dmabuf->dbuf.list, list) { in lpfc_seq_complete()
15484 struct hbq_dmabuf *dmabuf) in lpfc_sli4_handle_received_buffer() argument
15493 fc_hdr = (struct fc_frame_header *)dmabuf->hbuf.virt; in lpfc_sli4_handle_received_buffer()
15496 lpfc_in_buf_free(phba, &dmabuf->dbuf); in lpfc_sli4_handle_received_buffer()
15500 &dmabuf->cq_event.cqe.rcqe_cmpl) == CQE_CODE_RECEIVE_V1)) in lpfc_sli4_handle_received_buffer()
15502 &dmabuf->cq_event.cqe.rcqe_cmpl); in lpfc_sli4_handle_received_buffer()
15505 &dmabuf->cq_event.cqe.rcqe_cmpl); in lpfc_sli4_handle_received_buffer()
15510 lpfc_in_buf_free(phba, &dmabuf->dbuf); in lpfc_sli4_handle_received_buffer()
15527 lpfc_in_buf_free(phba, &dmabuf->dbuf); in lpfc_sli4_handle_received_buffer()
15534 lpfc_sli4_handle_unsol_abort(vport, dmabuf); in lpfc_sli4_handle_received_buffer()
15539 seq_dmabuf = lpfc_fc_frame_add(vport, dmabuf); in lpfc_sli4_handle_received_buffer()
15542 lpfc_in_buf_free(phba, &dmabuf->dbuf); in lpfc_sli4_handle_received_buffer()
15666 hdr_tmpl->rpi_paddr_lo = putPaddrLow(rpi_page->dmabuf->phys); in lpfc_sli4_post_rpi_hdr()
15667 hdr_tmpl->rpi_paddr_hi = putPaddrHigh(rpi_page->dmabuf->phys); in lpfc_sli4_post_rpi_hdr()
16804 struct lpfc_dmabuf *dmabuf; in lpfc_wr_object() local
16822 list_for_each_entry(dmabuf, dmabuf_list, list) { in lpfc_wr_object()
16825 wr_object->u.request.bde[i].addrLow = putPaddrLow(dmabuf->phys); in lpfc_wr_object()
16827 putPaddrHigh(dmabuf->phys); in lpfc_wr_object()