Lines Matching refs:dmabuf

908 	struct lpfc_dmabuf *dmabuf = NULL;  in lpfc_bsg_ct_unsol_event()  local
938 dmabuf = bdeBuf1; in lpfc_bsg_ct_unsol_event()
942 dmabuf = lpfc_sli_ringpostbuf_get(phba, pring, dma_addr); in lpfc_bsg_ct_unsol_event()
944 if (dmabuf == NULL) in lpfc_bsg_ct_unsol_event()
946 ct_req = (struct lpfc_sli_ct_request *)dmabuf->virt; in lpfc_bsg_ct_unsol_event()
951 lpfc_sli_ringpostbuf_put(phba, pring, dmabuf); in lpfc_bsg_ct_unsol_event()
1009 dmabuf = bdeBuf1; in lpfc_bsg_ct_unsol_event()
1015 dmabuf = bdeBuf2; in lpfc_bsg_ct_unsol_event()
1025 dmabuf = lpfc_sli_ringpostbuf_get(phba, in lpfc_bsg_ct_unsol_event()
1028 if (!dmabuf) { in lpfc_bsg_ct_unsol_event()
1043 dmabuf->virt, size); in lpfc_bsg_ct_unsol_event()
1049 dmabuf); in lpfc_bsg_ct_unsol_event()
1057 *)dmabuf); in lpfc_bsg_ct_unsol_event()
1066 dmabuf); in lpfc_bsg_ct_unsol_event()
1159 lpfc_bsg_ct_unsol_abort(struct lpfc_hba *phba, struct hbq_dmabuf *dmabuf) in lpfc_bsg_ct_unsol_abort() argument
1167 memcpy(fc_hdr_ptr, dmabuf->hbuf.virt, sizeof(struct fc_frame_header)); in lpfc_bsg_ct_unsol_abort()
2540 struct lpfc_dmabuf *dmabuf; in lpfcdiag_loop_get_xri() local
2563 dmabuf = kmalloc(sizeof(struct lpfc_dmabuf), GFP_KERNEL); in lpfcdiag_loop_get_xri()
2564 if (dmabuf) { in lpfcdiag_loop_get_xri()
2565 dmabuf->virt = lpfc_mbuf_alloc(phba, 0, &dmabuf->phys); in lpfcdiag_loop_get_xri()
2566 if (dmabuf->virt) { in lpfcdiag_loop_get_xri()
2567 INIT_LIST_HEAD(&dmabuf->list); in lpfcdiag_loop_get_xri()
2568 bpl = (struct ulp_bde64 *) dmabuf->virt; in lpfcdiag_loop_get_xri()
2572 le32_to_cpu(putPaddrHigh(dmabuf->phys + in lpfcdiag_loop_get_xri()
2575 le32_to_cpu(putPaddrLow(dmabuf->phys + in lpfcdiag_loop_get_xri()
2584 dmabuf == NULL || bpl == NULL || ctreq == NULL || in lpfcdiag_loop_get_xri()
2585 dmabuf->virt == NULL) { in lpfcdiag_loop_get_xri()
2603 cmd->un.xseq64.bdl.addrHigh = putPaddrHigh(dmabuf->phys); in lpfcdiag_loop_get_xri()
2604 cmd->un.xseq64.bdl.addrLow = putPaddrLow(dmabuf->phys); in lpfcdiag_loop_get_xri()
2657 if (dmabuf) { in lpfcdiag_loop_get_xri()
2658 if (dmabuf->virt) in lpfcdiag_loop_get_xri()
2659 lpfc_mbuf_free(phba, dmabuf->virt, dmabuf->phys); in lpfcdiag_loop_get_xri()
2660 kfree(dmabuf); in lpfcdiag_loop_get_xri()
2680 struct lpfc_dmabuf *dmabuf; in lpfc_bsg_dma_page_alloc() local
2684 dmabuf = kmalloc(sizeof(struct lpfc_dmabuf), GFP_KERNEL); in lpfc_bsg_dma_page_alloc()
2685 if (!dmabuf) in lpfc_bsg_dma_page_alloc()
2688 INIT_LIST_HEAD(&dmabuf->list); in lpfc_bsg_dma_page_alloc()
2691 dmabuf->virt = dma_zalloc_coherent(&pcidev->dev, BSG_MBOX_SIZE, in lpfc_bsg_dma_page_alloc()
2692 &(dmabuf->phys), GFP_KERNEL); in lpfc_bsg_dma_page_alloc()
2694 if (!dmabuf->virt) { in lpfc_bsg_dma_page_alloc()
2695 kfree(dmabuf); in lpfc_bsg_dma_page_alloc()
2699 return dmabuf; in lpfc_bsg_dma_page_alloc()
2711 lpfc_bsg_dma_page_free(struct lpfc_hba *phba, struct lpfc_dmabuf *dmabuf) in lpfc_bsg_dma_page_free() argument
2715 if (!dmabuf) in lpfc_bsg_dma_page_free()
2718 if (dmabuf->virt) in lpfc_bsg_dma_page_free()
2720 dmabuf->virt, dmabuf->phys); in lpfc_bsg_dma_page_free()
2721 kfree(dmabuf); in lpfc_bsg_dma_page_free()
2737 struct lpfc_dmabuf *dmabuf, *next_dmabuf; in lpfc_bsg_dma_page_list_free() local
2742 list_for_each_entry_safe(dmabuf, next_dmabuf, dmabuf_list, list) { in lpfc_bsg_dma_page_list_free()
2743 list_del_init(&dmabuf->list); in lpfc_bsg_dma_page_list_free()
2744 lpfc_bsg_dma_page_free(phba, dmabuf); in lpfc_bsg_dma_page_list_free()
3531 struct lpfc_dmabuf *dmabuf; in lpfc_bsg_issue_mbox_ext_handle_job() local
3556 dmabuf = phba->mbox_ext_buf_ctx.mbx_dmabuf; in lpfc_bsg_issue_mbox_ext_handle_job()
3557 sli_cfg_mbx = (struct lpfc_sli_config_mbox *)dmabuf->virt; in lpfc_bsg_issue_mbox_ext_handle_job()
3560 pmbx = (uint8_t *)dmabuf->virt; in lpfc_bsg_issue_mbox_ext_handle_job()
3782 struct lpfc_dmabuf *dmabuf) in lpfc_bsg_sli_cfg_read_cmd_ext() argument
3799 sli_cfg_mbx = (struct lpfc_sli_config_mbox *)dmabuf->virt; in lpfc_bsg_sli_cfg_read_cmd_ext()
3841 sta_pre_addr, dmabuf, ext_buf_cnt); in lpfc_bsg_sli_cfg_read_cmd_ext()
3876 lpfc_bsg_sli_cfg_dma_desc_setup(phba, nemb_tp, 0, dmabuf, dmabuf); in lpfc_bsg_sli_cfg_read_cmd_ext()
3884 ext_buf_index, dmabuf, in lpfc_bsg_sli_cfg_read_cmd_ext()
3892 sta_pos_addr, dmabuf, ext_buf_cnt); in lpfc_bsg_sli_cfg_read_cmd_ext()
3896 pmbx = (uint8_t *)dmabuf->virt; in lpfc_bsg_sli_cfg_read_cmd_ext()
3907 phba->mbox_ext_buf_ctx.mbx_dmabuf = dmabuf; in lpfc_bsg_sli_cfg_read_cmd_ext()
3969 struct lpfc_dmabuf *dmabuf) in lpfc_bsg_sli_cfg_write_cmd_ext() argument
3984 sli_cfg_mbx = (struct lpfc_sli_config_mbox *)dmabuf->virt; in lpfc_bsg_sli_cfg_write_cmd_ext()
4022 sta_pre_addr, dmabuf, ext_buf_cnt); in lpfc_bsg_sli_cfg_write_cmd_ext()
4028 lpfc_bsg_sli_cfg_dma_desc_setup(phba, nemb_tp, 0, dmabuf, dmabuf); in lpfc_bsg_sli_cfg_write_cmd_ext()
4032 sta_pos_addr, dmabuf, ext_buf_cnt); in lpfc_bsg_sli_cfg_write_cmd_ext()
4055 phba->mbox_ext_buf_ctx.mbx_dmabuf = dmabuf; in lpfc_bsg_sli_cfg_write_cmd_ext()
4073 mbx = (uint8_t *)dmabuf->virt; in lpfc_bsg_sli_cfg_write_cmd_ext()
4132 struct lpfc_dmabuf *dmabuf) in lpfc_bsg_handle_sli_cfg_mbox() argument
4142 sli_cfg_mbx = (struct lpfc_sli_config_mbox *)dmabuf->virt; in lpfc_bsg_handle_sli_cfg_mbox()
4159 nemb_mse, dmabuf); in lpfc_bsg_handle_sli_cfg_mbox()
4169 nemb_mse, dmabuf); in lpfc_bsg_handle_sli_cfg_mbox()
4189 nemb_mse, dmabuf); in lpfc_bsg_handle_sli_cfg_mbox()
4220 nemb_hbd, dmabuf); in lpfc_bsg_handle_sli_cfg_mbox()
4228 nemb_hbd, dmabuf); in lpfc_bsg_handle_sli_cfg_mbox()
4283 struct lpfc_dmabuf *dmabuf; in lpfc_bsg_read_ebuf_get() local
4309 dmabuf = list_first_entry(&phba->mbox_ext_buf_ctx.ext_dmabuf_list, in lpfc_bsg_read_ebuf_get()
4311 list_del_init(&dmabuf->list); in lpfc_bsg_read_ebuf_get()
4316 dmabuf, index); in lpfc_bsg_read_ebuf_get()
4318 pbuf = (uint8_t *)dmabuf->virt; in lpfc_bsg_read_ebuf_get()
4324 lpfc_bsg_dma_page_free(phba, dmabuf); in lpfc_bsg_read_ebuf_get()
4349 struct lpfc_dmabuf *dmabuf) in lpfc_bsg_write_ebuf_set() argument
4374 pbuf = (uint8_t *)dmabuf->virt; in lpfc_bsg_write_ebuf_set()
4397 dmabuf); in lpfc_bsg_write_ebuf_set()
4398 list_add_tail(&dmabuf->list, &phba->mbox_ext_buf_ctx.ext_dmabuf_list); in lpfc_bsg_write_ebuf_set()
4403 dmabuf, index); in lpfc_bsg_write_ebuf_set()
4457 lpfc_bsg_dma_page_free(phba, dmabuf); in lpfc_bsg_write_ebuf_set()
4474 struct lpfc_dmabuf *dmabuf) in lpfc_bsg_handle_sli_cfg_ebuf() argument
4493 lpfc_bsg_dma_page_free(phba, dmabuf); in lpfc_bsg_handle_sli_cfg_ebuf()
4503 rc = lpfc_bsg_write_ebuf_set(phba, job, dmabuf); in lpfc_bsg_handle_sli_cfg_ebuf()
4519 struct lpfc_dmabuf *dmabuf) in lpfc_bsg_handle_sli_cfg_ext() argument
4538 rc = lpfc_bsg_handle_sli_cfg_mbox(phba, job, dmabuf); in lpfc_bsg_handle_sli_cfg_ext()
4561 rc = lpfc_bsg_handle_sli_cfg_ebuf(phba, job, dmabuf); in lpfc_bsg_handle_sli_cfg_ext()
4603 struct lpfc_dmabuf *dmabuf = NULL; in lpfc_bsg_issue_mbox() local
4645 dmabuf = lpfc_bsg_dma_page_alloc(phba); in lpfc_bsg_issue_mbox()
4646 if (!dmabuf || !dmabuf->virt) { in lpfc_bsg_issue_mbox()
4652 pmbx = (uint8_t *)dmabuf->virt; in lpfc_bsg_issue_mbox()
4659 rc = lpfc_bsg_handle_sli_cfg_ext(phba, job, dmabuf); in lpfc_bsg_issue_mbox()
4733 putPaddrHigh(dmabuf->phys + sizeof(MAILBOX_t)); in lpfc_bsg_issue_mbox()
4735 putPaddrLow(dmabuf->phys + sizeof(MAILBOX_t)); in lpfc_bsg_issue_mbox()
4738 putPaddrHigh(dmabuf->phys + sizeof(MAILBOX_t) in lpfc_bsg_issue_mbox()
4741 putPaddrLow(dmabuf->phys + sizeof(MAILBOX_t) in lpfc_bsg_issue_mbox()
4758 pmb->un.varWords[3] = putPaddrLow(dmabuf->phys in lpfc_bsg_issue_mbox()
4760 pmb->un.varWords[4] = putPaddrHigh(dmabuf->phys in lpfc_bsg_issue_mbox()
4781 pmb->un.varWords[3] = putPaddrLow(dmabuf->phys in lpfc_bsg_issue_mbox()
4783 pmb->un.varWords[4] = putPaddrHigh(dmabuf->phys in lpfc_bsg_issue_mbox()
4795 bde->addrHigh = putPaddrHigh(dmabuf->phys in lpfc_bsg_issue_mbox()
4797 bde->addrLow = putPaddrLow(dmabuf->phys in lpfc_bsg_issue_mbox()
4824 putPaddrHigh(dmabuf->phys in lpfc_bsg_issue_mbox()
4827 putPaddrLow(dmabuf->phys in lpfc_bsg_issue_mbox()
4833 dd_data->context_un.mbox.dmabuffers = dmabuf; in lpfc_bsg_issue_mbox()
4877 lpfc_bsg_dma_page_free(phba, dmabuf); in lpfc_bsg_issue_mbox()