Lines Matching defs:dmabuf

78 					  struct hbq_dmabuf *dmabuf);
1992 struct lpfc_dmabuf *dmabuf, *next_dmabuf;
2001 list_for_each_entry_safe(dmabuf, next_dmabuf,
2003 hbq_buf = container_of(dmabuf, struct hbq_dmabuf, dbuf);
4004 struct hbq_dmabuf *dmabuf;
4033 dmabuf = container_of(cq_event, struct hbq_dmabuf,
4035 lpfc_sli4_handle_received_buffer(phba, dmabuf);
5411 struct lpfc_dmabuf *dmabuf;
5414 dmabuf = kzalloc(sizeof(struct lpfc_dmabuf), GFP_KERNEL);
5415 if (!dmabuf)
5423 dmabuf->virt = dma_alloc_coherent(&phba->pcidev->dev, dma_size,
5424 &dmabuf->phys, GFP_KERNEL);
5425 if (!dmabuf->virt) {
5426 kfree(dmabuf);
5437 mqe->un.read_rev.vpd_paddr_high = putPaddrHigh(dmabuf->phys);
5438 mqe->un.read_rev.vpd_paddr_low = putPaddrLow(dmabuf->phys);
5446 dmabuf->virt, dmabuf->phys);
5447 kfree(dmabuf);
5459 memcpy(vpd, dmabuf->virt, *vpd_size);
5462 dmabuf->virt, dmabuf->phys);
5463 kfree(dmabuf);
6341 struct lpfc_dmabuf *dmabuf, *next;
6344 list_for_each_entry_safe(dmabuf, next,
6347 list_del(&dmabuf->list);
6350 dmabuf->virt, dmabuf->phys);
6351 kfree(dmabuf);
6384 struct lpfc_dmabuf *dmabuf;
6404 dmabuf = kzalloc(sizeof(struct lpfc_dmabuf),
6406 if (!dmabuf) {
6413 dmabuf->virt = dma_alloc_coherent(&phba->pcidev->dev,
6415 &dmabuf->phys, GFP_KERNEL);
6416 if (!dmabuf->virt) {
6417 kfree(dmabuf);
6423 dmabuf->buffer_tag = i;
6424 list_add_tail(&dmabuf->list, &ras_fwlog->fwlog_buff_list);
6496 struct lpfc_dmabuf *dmabuf;
6550 list_for_each_entry(dmabuf, &ras_fwlog->fwlog_buff_list, list) {
6551 memset(dmabuf->virt, 0, LPFC_RAS_MAX_ENTRY_SIZE);
6553 mbx_fwlog->u.request.buff_fwlog[dmabuf->buffer_tag].addr_lo =
6554 putPaddrLow(dmabuf->phys);
6556 mbx_fwlog->u.request.buff_fwlog[dmabuf->buffer_tag].addr_hi =
6557 putPaddrHigh(dmabuf->phys);
9420 struct lpfc_dmabuf *dmabuf;
9442 dmabuf = (struct lpfc_dmabuf *)piocbq->context3;
9446 bpl = (struct ulp_bde64 *)dmabuf->virt;
13156 struct lpfc_dmabuf *dmabuf;
13176 dmabuf = (struct lpfc_dmabuf *)pIocbOut->context3;
13177 bpl = (struct ulp_bde64 *)dmabuf->virt;
13187 dmabuf = (struct lpfc_dmabuf *)pIocbOut->context3;
13188 bpl = (struct ulp_bde64 *)dmabuf->virt;
14828 struct lpfc_dmabuf *dmabuf;
14837 list_remove_head(&queue->page_list, dmabuf, struct lpfc_dmabuf,
14840 dmabuf->virt, dmabuf->phys);
14841 kfree(dmabuf);
14872 struct lpfc_dmabuf *dmabuf;
14910 dmabuf = kzalloc_node(sizeof(*dmabuf), GFP_KERNEL,
14912 if (!dmabuf)
14914 dmabuf->virt = dma_alloc_coherent(&phba->pcidev->dev,
14915 hw_page_size, &dmabuf->phys,
14917 if (!dmabuf->virt) {
14918 kfree(dmabuf);
14921 dmabuf->buffer_tag = x;
14922 list_add_tail(&dmabuf->list, &queue->page_list);
14924 queue->q_pgs[x] = dmabuf->virt;
15109 struct lpfc_dmabuf *dmabuf;
15180 list_for_each_entry(dmabuf, &eq->page_list, list) {
15181 memset(dmabuf->virt, 0, hw_page_size);
15182 eq_create->u.request.page[dmabuf->buffer_tag].addr_lo =
15183 putPaddrLow(dmabuf->phys);
15184 eq_create->u.request.page[dmabuf->buffer_tag].addr_hi =
15185 putPaddrHigh(dmabuf->phys);
15251 struct lpfc_dmabuf *dmabuf;
15325 list_for_each_entry(dmabuf, &cq->page_list, list) {
15326 memset(dmabuf->virt, 0, cq->page_size);
15327 cq_create->u.request.page[dmabuf->buffer_tag].addr_lo =
15328 putPaddrLow(dmabuf->phys);
15329 cq_create->u.request.page[dmabuf->buffer_tag].addr_hi =
15330 putPaddrHigh(dmabuf->phys);
15403 struct lpfc_dmabuf *dmabuf;
15581 list_for_each_entry(dmabuf, &cq->page_list, list) {
15582 memset(dmabuf->virt, 0, hw_page_size);
15583 cnt = page_idx + dmabuf->buffer_tag;
15585 putPaddrLow(dmabuf->phys);
15587 putPaddrHigh(dmabuf->phys);
15643 struct lpfc_dmabuf *dmabuf;
15675 list_for_each_entry(dmabuf, &mq->page_list, list) {
15676 mq_create->u.request.page[dmabuf->buffer_tag].addr_lo =
15677 putPaddrLow(dmabuf->phys);
15678 mq_create->u.request.page[dmabuf->buffer_tag].addr_hi =
15679 putPaddrHigh(dmabuf->phys);
15710 struct lpfc_dmabuf *dmabuf;
15786 list_for_each_entry(dmabuf, &mq->page_list, list) {
15787 memset(dmabuf->virt, 0, hw_page_size);
15788 mq_create_ext->u.request.page[dmabuf->buffer_tag].addr_lo =
15789 putPaddrLow(dmabuf->phys);
15790 mq_create_ext->u.request.page[dmabuf->buffer_tag].addr_hi =
15791 putPaddrHigh(dmabuf->phys);
15864 struct lpfc_dmabuf *dmabuf;
15950 list_for_each_entry(dmabuf, &wq->page_list, list) {
15951 memset(dmabuf->virt, 0, hw_page_size);
15952 page[dmabuf->buffer_tag].addr_lo = putPaddrLow(dmabuf->phys);
15953 page[dmabuf->buffer_tag].addr_hi = putPaddrHigh(dmabuf->phys);
16134 struct lpfc_dmabuf *dmabuf;
16214 list_for_each_entry(dmabuf, &hrq->page_list, list) {
16215 memset(dmabuf->virt, 0, hw_page_size);
16216 rq_create->u.request.page[dmabuf->buffer_tag].addr_lo =
16217 putPaddrLow(dmabuf->phys);
16218 rq_create->u.request.page[dmabuf->buffer_tag].addr_hi =
16219 putPaddrHigh(dmabuf->phys);
16357 list_for_each_entry(dmabuf, &drq->page_list, list) {
16358 rq_create->u.request.page[dmabuf->buffer_tag].addr_lo =
16359 putPaddrLow(dmabuf->phys);
16360 rq_create->u.request.page[dmabuf->buffer_tag].addr_hi =
16361 putPaddrHigh(dmabuf->phys);
16426 struct lpfc_dmabuf *dmabuf;
16513 list_for_each_entry(dmabuf, &hrq->page_list, list) {
16514 memset(dmabuf->virt, 0, hw_page_size);
16515 cnt = page_idx + dmabuf->buffer_tag;
16517 putPaddrLow(dmabuf->phys);
16519 putPaddrHigh(dmabuf->phys);
16525 list_for_each_entry(dmabuf, &drq->page_list, list) {
16526 memset(dmabuf->virt, 0, hw_page_size);
16527 cnt = page_idx + dmabuf->buffer_tag;
16529 putPaddrLow(dmabuf->phys);
16531 putPaddrHigh(dmabuf->phys);
17576 struct hbq_dmabuf *dmabuf = NULL;
17583 dmabuf = container_of(h_buf, struct hbq_dmabuf, hbuf);
17584 vport->rcv_buffer_time_stamp = dmabuf->time_stamp;
17600 struct hbq_dmabuf *dmabuf = NULL;
17604 dmabuf = container_of(h_buf, struct hbq_dmabuf, hbuf);
17605 list_del_init(&dmabuf->hbuf.list);
17607 &dmabuf->dbuf.list, list) {
17611 lpfc_in_buf_free(vport->phba, &dmabuf->dbuf);
17632 struct hbq_dmabuf *dmabuf = NULL;
17643 dmabuf = container_of(h_buf, struct hbq_dmabuf, hbuf);
17645 dmabuf->time_stamp);
17649 list_del_init(&dmabuf->hbuf.list);
17651 &dmabuf->dbuf.list, list) {
17655 lpfc_in_buf_free(vport->phba, &dmabuf->dbuf);
17664 * @dmabuf: pointer to a dmabuf that describes the hdr and data of the FC frame
17668 * sequences then the dbuf in the @dmabuf is added to the list of frames that
17670 * the function will add the hbuf in the @dmabuf to the @vport's rcv_buffer_list
17671 * This function returns a pointer to the first dmabuf in the sequence list that
17675 lpfc_fc_frame_add(struct lpfc_vport *vport, struct hbq_dmabuf *dmabuf)
17685 INIT_LIST_HEAD(&dmabuf->dbuf.list);
17686 dmabuf->time_stamp = jiffies;
17687 new_hdr = (struct fc_frame_header *)dmabuf->hbuf.virt;
17705 list_add_tail(&dmabuf->hbuf.list, &vport->rcv_buffer_list);
17707 return dmabuf;
17713 list_add_tail(&dmabuf->hbuf.list, &vport->rcv_buffer_list);
17714 list_add_tail(&dmabuf->dbuf.list, &seq_dmabuf->dbuf.list);
17716 return dmabuf;
17723 temp_hdr = dmabuf->hbuf.virt;
17724 list_add_tail(&dmabuf->dbuf.list, &seq_dmabuf->dbuf.list);
17738 list_add(&dmabuf->dbuf.list, &temp_dmabuf->dbuf.list);
17756 * @dmabuf: pointer to a dmabuf that describes the FC sequence
17759 * by the information from basic abbort @dmabuf. It checks to see whether such
17771 struct hbq_dmabuf *dmabuf)
17779 INIT_LIST_HEAD(&dmabuf->dbuf.list);
17780 INIT_LIST_HEAD(&dmabuf->hbuf.list);
17781 new_hdr = (struct fc_frame_header *)dmabuf->hbuf.virt;
17808 * @dmabuf: pointer to a dmabuf that describes the FC sequence
17811 * protocol, described by the information from basic abbort @dmabuf. It
17822 lpfc_sli4_abort_ulp_seq(struct lpfc_vport *vport, struct hbq_dmabuf *dmabuf)
17832 handled = lpfc_ct_handle_unsol_abort(phba, dmabuf);
18041 * @dmabuf: pointer to a dmabuf that describes the FC sequence
18053 struct hbq_dmabuf *dmabuf)
18060 /* Make a copy of fc_hdr before the dmabuf being released */
18061 memcpy(&fc_hdr, dmabuf->hbuf.virt, sizeof(struct fc_frame_header));
18069 aborted = lpfc_sli4_abort_partial_seq(vport, dmabuf);
18071 aborted = lpfc_sli4_abort_ulp_seq(vport, dmabuf);
18073 lpfc_in_buf_free(phba, &dmabuf->dbuf);
18086 * @dmabuf: pointer to a dmabuf that describes the FC sequence
18089 * @dmabuf, to see if all the frames associated with this sequence are present.
18090 * the frames associated with this sequence are linked to the @dmabuf using the
18097 lpfc_seq_complete(struct hbq_dmabuf *dmabuf)
18105 hdr = (struct fc_frame_header *)dmabuf->hbuf.virt;
18115 list_for_each_entry(d_buf, &dmabuf->dbuf.list, list) {
18134 * @seq_dmabuf: pointer to a dmabuf that describes the FC sequence
18320 struct hbq_dmabuf *dmabuf)
18331 fc_hdr = (struct fc_frame_header *)dmabuf->hbuf.virt;
18332 frame_len = bf_get(lpfc_rcqe_length, &dmabuf->cq_event.cqe.rcqe_cmpl);
18339 list_add_tail(&dmabuf->cq_event.list,
18358 memcpy(pcmd->virt, dmabuf->dbuf.virt, frame_len);
18392 lpfc_in_buf_free(phba, &dmabuf->dbuf);
18403 lpfc_in_buf_free(phba, &dmabuf->dbuf);
18409 * @dmabuf: Pointer to a dmabuf that describes the FC sequence.
18420 struct hbq_dmabuf *dmabuf)
18429 fc_hdr = (struct fc_frame_header *)dmabuf->hbuf.virt;
18436 lpfc_sli4_handle_mds_loopback(vport, dmabuf);
18438 lpfc_in_buf_free(phba, &dmabuf->dbuf);
18444 lpfc_in_buf_free(phba, &dmabuf->dbuf);
18449 &dmabuf->cq_event.cqe.rcqe_cmpl) == CQE_CODE_RECEIVE_V1))
18451 &dmabuf->cq_event.cqe.rcqe_cmpl);
18454 &dmabuf->cq_event.cqe.rcqe_cmpl);
18461 &dmabuf->cq_event.cqe.rcqe_cmpl));
18463 lpfc_sli4_handle_mds_loopback(vport, dmabuf);
18473 lpfc_in_buf_free(phba, &dmabuf->dbuf);
18487 lpfc_in_buf_free(phba, &dmabuf->dbuf);
18494 lpfc_sli4_handle_unsol_abort(vport, dmabuf);
18499 seq_dmabuf = lpfc_fc_frame_add(vport, dmabuf);
18502 lpfc_in_buf_free(phba, &dmabuf->dbuf);
18626 hdr_tmpl->rpi_paddr_lo = putPaddrLow(rpi_page->dmabuf->phys);
18627 hdr_tmpl->rpi_paddr_hi = putPaddrHigh(rpi_page->dmabuf->phys);
19785 struct lpfc_dmabuf *dmabuf;
19804 list_for_each_entry(dmabuf, dmabuf_list, list) {
19807 wr_object->u.request.bde[i].addrLow = putPaddrLow(dmabuf->phys);
19809 putPaddrHigh(dmabuf->phys);
20133 struct lpfc_dmabuf *dmabuf;
20158 dmabuf = (struct lpfc_dmabuf *)pwqeq->context3;
20162 bpl = (struct ulp_bde64 *)dmabuf->virt;