Home
last modified time | relevance | path

Searched refs:sgl (Results 1 – 25 of 430) sorted by relevance

12345678910>>...18

/Linux-v5.4/drivers/misc/genwqe/
Dcard_utils.c288 int genwqe_alloc_sync_sgl(struct genwqe_dev *cd, struct genwqe_sgl *sgl, in genwqe_alloc_sync_sgl() argument
294 sgl->fpage_offs = offset_in_page((unsigned long)user_addr); in genwqe_alloc_sync_sgl()
295 sgl->fpage_size = min_t(size_t, PAGE_SIZE-sgl->fpage_offs, user_size); in genwqe_alloc_sync_sgl()
296 sgl->nr_pages = DIV_ROUND_UP(sgl->fpage_offs + user_size, PAGE_SIZE); in genwqe_alloc_sync_sgl()
297 sgl->lpage_size = (user_size - sgl->fpage_size) % PAGE_SIZE; in genwqe_alloc_sync_sgl()
300 __func__, user_addr, user_size, sgl->nr_pages, in genwqe_alloc_sync_sgl()
301 sgl->fpage_offs, sgl->fpage_size, sgl->lpage_size); in genwqe_alloc_sync_sgl()
303 sgl->user_addr = user_addr; in genwqe_alloc_sync_sgl()
304 sgl->user_size = user_size; in genwqe_alloc_sync_sgl()
305 sgl->write = write; in genwqe_alloc_sync_sgl()
[all …]
/Linux-v5.4/lib/
Dscatterlist.c101 struct scatterlist *sg_last(struct scatterlist *sgl, unsigned int nents) in sg_last() argument
106 for_each_sg(sgl, sg, nents, i) in sg_last()
124 void sg_init_table(struct scatterlist *sgl, unsigned int nents) in sg_init_table() argument
126 memset(sgl, 0, sizeof(*sgl) * nents); in sg_init_table()
127 sg_init_marker(sgl, nents); in sg_init_table()
195 struct scatterlist *sgl, *next; in __sg_free_table() local
198 if (unlikely(!table->sgl)) in __sg_free_table()
201 sgl = table->sgl; in __sg_free_table()
213 next = sg_chain_ptr(&sgl[curr_max_ents - 1]); in __sg_free_table()
225 free_fn(sgl, alloc_size); in __sg_free_table()
[all …]
Dkfifo.c295 static int setup_sgl_buf(struct scatterlist *sgl, void *buf, in setup_sgl_buf() argument
321 sg_set_page(sgl, page, l - off, off); in setup_sgl_buf()
322 sgl = sg_next(sgl); in setup_sgl_buf()
323 if (++n == nents || sgl == NULL) in setup_sgl_buf()
330 sg_set_page(sgl, page, len, off); in setup_sgl_buf()
334 static unsigned int setup_sgl(struct __kfifo *fifo, struct scatterlist *sgl, in setup_sgl() argument
350 n = setup_sgl_buf(sgl, fifo->data + off, nents, l); in setup_sgl()
351 n += setup_sgl_buf(sgl + n, fifo->data, nents - n, len - l); in setup_sgl()
357 struct scatterlist *sgl, int nents, unsigned int len) in __kfifo_dma_in_prepare() argument
365 return setup_sgl(fifo, sgl, nents, len, fifo->in); in __kfifo_dma_in_prepare()
[all …]
/Linux-v5.4/drivers/crypto/hisilicon/
Dsgl.c80 pool->sgl = dma_alloc_coherent(dev, size, &pool->sgl_dma, GFP_KERNEL); in hisi_acc_create_sgl_pool()
81 if (!pool->sgl) in hisi_acc_create_sgl_pool()
101 dma_free_coherent(dev, pool->size, pool->sgl, pool->sgl_dma); in hisi_acc_free_sgl_pool()
109 if (!pool || !hw_sgl_dma || index >= pool->count || !pool->sgl) in acc_get_sgl()
113 return (void *)pool->sgl + pool->sgl_size * index; in acc_get_sgl()
118 static void sg_map_to_hw_sg(struct scatterlist *sgl, in sg_map_to_hw_sg() argument
121 hw_sge->buf = sgl->dma_address; in sg_map_to_hw_sg()
122 hw_sge->len = sgl->dma_length; in sg_map_to_hw_sg()
148 struct scatterlist *sgl, in hisi_acc_sg_buf_map_to_hw_sgl() argument
156 int sg_n = sg_nents(sgl); in hisi_acc_sg_buf_map_to_hw_sgl()
[all …]
Dsgl.h7 struct hisi_acc_hw_sgl *sgl; member
16 struct scatterlist *sgl,
19 void hisi_acc_sg_buf_unmap(struct device *dev, struct scatterlist *sgl,
/Linux-v5.4/crypto/
Daf_alg.c391 int af_alg_make_sg(struct af_alg_sgl *sgl, struct iov_iter *iter, int len) in af_alg_make_sg() argument
397 n = iov_iter_get_pages(iter, sgl->pages, len, ALG_MAX_PAGES, &off); in af_alg_make_sg()
405 sg_init_table(sgl->sg, npages + 1); in af_alg_make_sg()
410 sg_set_page(sgl->sg + i, sgl->pages[i], plen, off); in af_alg_make_sg()
415 sg_mark_end(sgl->sg + npages - 1); in af_alg_make_sg()
416 sgl->npages = npages; in af_alg_make_sg()
429 void af_alg_free_sg(struct af_alg_sgl *sgl) in af_alg_free_sg() argument
433 for (i = 0; i < sgl->npages; i++) in af_alg_free_sg()
434 put_page(sgl->pages[i]); in af_alg_free_sg()
488 struct af_alg_tsgl *sgl; in af_alg_alloc_tsgl() local
[all …]
/Linux-v5.4/include/linux/
Dscatterlist.h43 struct scatterlist *sgl; /* the list */ member
165 struct scatterlist *sgl) in sg_chain() argument
177 prv[prv_nents - 1].page_link = ((unsigned long) sgl | SG_CHAIN) in sg_chain()
248 static inline void sg_init_marker(struct scatterlist *sgl, in sg_init_marker() argument
251 sg_mark_end(&sgl[nents - 1]); in sg_init_marker()
289 void sgl_free_n_order(struct scatterlist *sgl, int nents, int order);
290 void sgl_free_order(struct scatterlist *sgl, int order);
291 void sgl_free(struct scatterlist *sgl);
294 size_t sg_copy_buffer(struct scatterlist *sgl, unsigned int nents, void *buf,
297 size_t sg_copy_from_buffer(struct scatterlist *sgl, unsigned int nents,
[all …]
/Linux-v5.4/drivers/target/iscsi/cxgbit/
Dcxgbit_ddp.c133 struct scatterlist *sg = ttinfo->sgl; in cxgbit_ddp_set_map()
176 struct scatterlist *sgl = ttinfo->sgl; in cxgbit_ddp_reserve() local
178 unsigned int sg_offset = sgl->offset; in cxgbit_ddp_reserve()
188 if (cxgbit_ddp_sgl_check(sgl, sgcnt) < 0) in cxgbit_ddp_reserve()
191 ttinfo->nr_pages = (xferlen + sgl->offset + in cxgbit_ddp_reserve()
203 sgl->offset = 0; in cxgbit_ddp_reserve()
204 ret = dma_map_sg(&ppm->pdev->dev, sgl, sgcnt, DMA_FROM_DEVICE); in cxgbit_ddp_reserve()
205 sgl->offset = sg_offset; in cxgbit_ddp_reserve()
212 cxgbi_ppm_make_ppod_hdr(ppm, ttinfo->tag, csk->tid, sgl->offset, in cxgbit_ddp_reserve()
218 dma_unmap_sg(&ppm->pdev->dev, sgl, sgcnt, DMA_FROM_DEVICE); in cxgbit_ddp_reserve()
[all …]
/Linux-v5.4/tools/virtio/linux/
Dscatterlist.h91 struct scatterlist *sgl) in sg_chain() argument
103 prv[prv_nents - 1].page_link = ((unsigned long) sgl | 0x01) & ~0x02; in sg_chain()
149 static inline void sg_init_table(struct scatterlist *sgl, unsigned int nents) in sg_init_table() argument
151 memset(sgl, 0, sizeof(*sgl) * nents); in sg_init_table()
152 sg_mark_end(&sgl[nents - 1]); in sg_init_table()
/Linux-v5.4/drivers/scsi/lpfc/
Dlpfc_scsi.c126 struct sli4_sge *sgl = (struct sli4_sge *)lpfc_cmd->dma_sgl; in lpfc_sli4_set_rsp_sgl_last() local
127 if (sgl) { in lpfc_sli4_set_rsp_sgl_last()
128 sgl += 1; in lpfc_sli4_set_rsp_sgl_last()
129 sgl->word2 = le32_to_cpu(sgl->word2); in lpfc_sli4_set_rsp_sgl_last()
130 bf_set(lpfc_sli4_sge_last, sgl, 1); in lpfc_sli4_set_rsp_sgl_last()
131 sgl->word2 = cpu_to_le32(sgl->word2); in lpfc_sli4_set_rsp_sgl_last()
635 struct sli4_sge *sgl; in lpfc_get_scsi_buf_s4() local
685 sgl = (struct sli4_sge *)lpfc_cmd->dma_sgl; in lpfc_get_scsi_buf_s4()
687 sgl->addr_hi = cpu_to_le32(putPaddrHigh(pdma_phys_fcp_cmd)); in lpfc_get_scsi_buf_s4()
688 sgl->addr_lo = cpu_to_le32(putPaddrLow(pdma_phys_fcp_cmd)); in lpfc_get_scsi_buf_s4()
[all …]
Dlpfc_nvme.c770 struct sli4_sge *sgl; in lpfc_nvme_adj_fcp_sgls() local
789 sgl = lpfc_ncmd->dma_sgl; in lpfc_nvme_adj_fcp_sgls()
790 sgl->sge_len = cpu_to_le32(nCmd->cmdlen); in lpfc_nvme_adj_fcp_sgls()
792 sgl->addr_hi = 0; in lpfc_nvme_adj_fcp_sgls()
793 sgl->addr_lo = 0; in lpfc_nvme_adj_fcp_sgls()
832 sgl->addr_hi = cpu_to_le32(putPaddrHigh(nCmd->cmddma)); in lpfc_nvme_adj_fcp_sgls()
833 sgl->addr_lo = cpu_to_le32(putPaddrLow(nCmd->cmddma)); in lpfc_nvme_adj_fcp_sgls()
838 wqe->generic.bde.addrHigh = sgl->addr_hi; in lpfc_nvme_adj_fcp_sgls()
839 wqe->generic.bde.addrLow = sgl->addr_lo; in lpfc_nvme_adj_fcp_sgls()
846 sgl++; in lpfc_nvme_adj_fcp_sgls()
[all …]
/Linux-v5.4/arch/arm/mm/
Ddma-mapping-nommu.c117 static int arm_nommu_dma_map_sg(struct device *dev, struct scatterlist *sgl, in arm_nommu_dma_map_sg() argument
124 for_each_sg(sgl, sg, nents, i) { in arm_nommu_dma_map_sg()
133 static void arm_nommu_dma_unmap_sg(struct device *dev, struct scatterlist *sgl, in arm_nommu_dma_unmap_sg() argument
140 for_each_sg(sgl, sg, nents, i) in arm_nommu_dma_unmap_sg()
156 static void arm_nommu_dma_sync_sg_for_device(struct device *dev, struct scatterlist *sgl, in arm_nommu_dma_sync_sg_for_device() argument
162 for_each_sg(sgl, sg, nents, i) in arm_nommu_dma_sync_sg_for_device()
166 static void arm_nommu_dma_sync_sg_for_cpu(struct device *dev, struct scatterlist *sgl, in arm_nommu_dma_sync_sg_for_cpu() argument
172 for_each_sg(sgl, sg, nents, i) in arm_nommu_dma_sync_sg_for_cpu()
/Linux-v5.4/drivers/gpu/drm/v3d/
Dv3d_mmu.c94 struct scatterlist *sgl; in v3d_mmu_insert_ptes() local
96 for_each_sg(shmem_obj->sgt->sgl, sgl, shmem_obj->sgt->nents, count) { in v3d_mmu_insert_ptes()
97 u32 page_address = sg_dma_address(sgl) >> V3D_MMU_PAGE_SHIFT; in v3d_mmu_insert_ptes()
101 BUG_ON(page_address + (sg_dma_len(sgl) >> V3D_MMU_PAGE_SHIFT) >= in v3d_mmu_insert_ptes()
104 for (i = 0; i < sg_dma_len(sgl) >> V3D_MMU_PAGE_SHIFT; i++) in v3d_mmu_insert_ptes()
/Linux-v5.4/drivers/spi/
Dspi-bcm2835.c484 if (bs->tx_buf && !sg_is_last(&tfr->tx_sg.sgl[0])) in bcm2835_spi_transfer_prologue()
485 bs->tx_prologue = sg_dma_len(&tfr->tx_sg.sgl[0]) & 3; in bcm2835_spi_transfer_prologue()
487 if (bs->rx_buf && !sg_is_last(&tfr->rx_sg.sgl[0])) { in bcm2835_spi_transfer_prologue()
488 bs->rx_prologue = sg_dma_len(&tfr->rx_sg.sgl[0]) & 3; in bcm2835_spi_transfer_prologue()
491 if (!bs->tx_buf || sg_is_last(&tfr->tx_sg.sgl[0])) { in bcm2835_spi_transfer_prologue()
496 !(sg_dma_len(&tfr->tx_sg.sgl[0]) & ~3); in bcm2835_spi_transfer_prologue()
518 sg_dma_address(&tfr->rx_sg.sgl[0]), in bcm2835_spi_transfer_prologue()
521 sg_dma_address(&tfr->rx_sg.sgl[0]) += bs->rx_prologue; in bcm2835_spi_transfer_prologue()
522 sg_dma_len(&tfr->rx_sg.sgl[0]) -= bs->rx_prologue; in bcm2835_spi_transfer_prologue()
544 sg_dma_address(&tfr->tx_sg.sgl[0]) += bs->tx_prologue; in bcm2835_spi_transfer_prologue()
[all …]
/Linux-v5.4/drivers/media/platform/
Dm2m-deinterlace.c236 ctx->xt->sgl[0].size = s_width; in deinterlace_issue_dma()
237 ctx->xt->sgl[0].icg = s_width; in deinterlace_issue_dma()
243 ctx->xt->sgl[0].size = s_width; in deinterlace_issue_dma()
244 ctx->xt->sgl[0].icg = s_width; in deinterlace_issue_dma()
250 ctx->xt->sgl[0].size = s_width / 2; in deinterlace_issue_dma()
251 ctx->xt->sgl[0].icg = s_width / 2; in deinterlace_issue_dma()
257 ctx->xt->sgl[0].size = s_width / 2; in deinterlace_issue_dma()
258 ctx->xt->sgl[0].icg = s_width / 2; in deinterlace_issue_dma()
264 ctx->xt->sgl[0].size = s_width / 2; in deinterlace_issue_dma()
265 ctx->xt->sgl[0].icg = s_width / 2; in deinterlace_issue_dma()
[all …]
/Linux-v5.4/drivers/media/platform/rockchip/rga/
Drga-buf.c118 struct scatterlist *sgl; in rga_buf_map() local
131 for_each_sg(sgt->sgl, sgl, sgt->nents, i) { in rga_buf_map()
132 len = sg_dma_len(sgl) >> PAGE_SHIFT; in rga_buf_map()
133 address = sg_phys(sgl); in rga_buf_map()
/Linux-v5.4/drivers/media/common/videobuf2/
Dvideobuf2-dma-contig.c52 dma_addr_t expected = sg_dma_address(sgt->sgl); in vb2_dc_get_contiguous_size()
56 for_each_sg(sgt->sgl, s, sgt->nents, i) { in vb2_dc_get_contiguous_size()
102 dma_sync_sg_for_device(buf->dev, sgt->sgl, sgt->orig_nents, in vb2_dc_prepare()
115 dma_sync_sg_for_cpu(buf->dev, sgt->sgl, sgt->orig_nents, buf->dma_dir); in vb2_dc_finish()
243 rd = buf->sgt_base->sgl; in vb2_dc_dmabuf_ops_attach()
244 wr = sgt->sgl; in vb2_dc_dmabuf_ops_attach()
276 dma_unmap_sg_attrs(db_attach->dev, sgt->sgl, sgt->orig_nents, in vb2_dc_dmabuf_ops_detach()
302 dma_unmap_sg_attrs(db_attach->dev, sgt->sgl, sgt->orig_nents, in vb2_dc_dmabuf_ops_map()
311 sgt->nents = dma_map_sg_attrs(db_attach->dev, sgt->sgl, sgt->orig_nents, in vb2_dc_dmabuf_ops_map()
434 dma_unmap_sg_attrs(buf->dev, sgt->sgl, sgt->orig_nents, in vb2_dc_put_userptr()
[all …]
/Linux-v5.4/drivers/gpu/drm/i915/
Di915_scatterlist.h27 } __sgt_iter(struct scatterlist *sgl, bool dma) { in __sgt_iter() argument
28 struct sgt_iter s = { .sgp = sgl }; in __sgt_iter()
77 for ((__iter) = __sgt_iter((__sgt)->sgl, true); \
89 for ((__iter) = __sgt_iter((__sgt)->sgl, false); \
/Linux-v5.4/drivers/net/ethernet/intel/ixgbe/
Dixgbe_fcoe.c28 ddp->sgl = NULL; in ixgbe_fcoe_clear_ddp()
109 if (ddp->sgl) in ixgbe_fcoe_ddp_put()
110 dma_unmap_sg(&adapter->pdev->dev, ddp->sgl, ddp->sgc, in ixgbe_fcoe_ddp_put()
133 struct scatterlist *sgl, unsigned int sgc, in ixgbe_fcoe_ddp_setup() argument
152 if (!netdev || !sgl) in ixgbe_fcoe_ddp_setup()
168 if (ddp->sgl) { in ixgbe_fcoe_ddp_setup()
170 xid, ddp->sgl, ddp->sgc); in ixgbe_fcoe_ddp_setup()
188 dmacount = dma_map_sg(&adapter->pdev->dev, sgl, sgc, DMA_FROM_DEVICE); in ixgbe_fcoe_ddp_setup()
201 ddp->sgl = sgl; in ixgbe_fcoe_ddp_setup()
205 for_each_sg(sgl, sg, dmacount, i) { in ixgbe_fcoe_ddp_setup()
[all …]
/Linux-v5.4/drivers/xen/
Dswiotlb-xen.c466 xen_swiotlb_unmap_sg(struct device *hwdev, struct scatterlist *sgl, int nelems, in xen_swiotlb_unmap_sg() argument
474 for_each_sg(sgl, sg, nelems, i) in xen_swiotlb_unmap_sg()
481 xen_swiotlb_map_sg(struct device *dev, struct scatterlist *sgl, int nelems, in xen_swiotlb_map_sg() argument
489 for_each_sg(sgl, sg, nelems, i) { in xen_swiotlb_map_sg()
499 xen_swiotlb_unmap_sg(dev, sgl, i, dir, attrs | DMA_ATTR_SKIP_CPU_SYNC); in xen_swiotlb_map_sg()
500 sg_dma_len(sgl) = 0; in xen_swiotlb_map_sg()
505 xen_swiotlb_sync_sg_for_cpu(struct device *dev, struct scatterlist *sgl, in xen_swiotlb_sync_sg_for_cpu() argument
511 for_each_sg(sgl, sg, nelems, i) { in xen_swiotlb_sync_sg_for_cpu()
518 xen_swiotlb_sync_sg_for_device(struct device *dev, struct scatterlist *sgl, in xen_swiotlb_sync_sg_for_device() argument
524 for_each_sg(sgl, sg, nelems, i) { in xen_swiotlb_sync_sg_for_device()
/Linux-v5.4/drivers/gpu/drm/armada/
Darmada_gem.c398 for_each_sg(sgt->sgl, sg, count, i) { in armada_gem_prime_map_dma_buf()
410 if (dma_map_sg(attach->dev, sgt->sgl, sgt->nents, dir) == 0) { in armada_gem_prime_map_dma_buf()
419 sg_set_page(sgt->sgl, dobj->page, dobj->obj.size, 0); in armada_gem_prime_map_dma_buf()
421 if (dma_map_sg(attach->dev, sgt->sgl, sgt->nents, dir) == 0) in armada_gem_prime_map_dma_buf()
427 sg_dma_address(sgt->sgl) = dobj->dev_addr; in armada_gem_prime_map_dma_buf()
428 sg_dma_len(sgt->sgl) = dobj->obj.size; in armada_gem_prime_map_dma_buf()
435 for_each_sg(sgt->sgl, sg, num, i) in armada_gem_prime_map_dma_buf()
452 dma_unmap_sg(attach->dev, sgt->sgl, sgt->nents, dir); in armada_gem_prime_unmap_dma_buf()
456 for_each_sg(sgt->sgl, sg, sgt->nents, i) in armada_gem_prime_unmap_dma_buf()
557 if (sg_dma_len(dobj->sgt->sgl) < dobj->obj.size) { in armada_gem_map_import()
[all …]
/Linux-v5.4/drivers/infiniband/core/
Dumem.c52 ib_dma_unmap_sg(dev, umem->sg_head.sgl, umem->sg_nents, in __ib_umem_release()
55 for_each_sg_page(umem->sg_head.sgl, &sg_iter, umem->sg_nents, 0) { in __ib_umem_release()
164 for_each_sg(umem->sg_head.sgl, sg, umem->nmap, i) { in ib_umem_find_best_pgsz()
271 sg = umem->sg_head.sgl; in ib_umem_get()
298 umem->sg_head.sgl, in ib_umem_get()
350 for_each_sg(umem->sg_head.sgl, sg, umem->nmap, i) in ib_umem_page_count()
379 ret = sg_pcopy_to_buffer(umem->sg_head.sgl, umem->sg_nents, dst, length, in ib_umem_copy_from()
/Linux-v5.4/drivers/scsi/esas2r/
Desas2r_io.c224 struct esas2r_mem_desc *sgl; in esas2r_build_sg_list_sge() local
231 sgl = esas2r_alloc_sgl(a); in esas2r_build_sg_list_sge()
233 if (unlikely(sgl == NULL)) in esas2r_build_sg_list_sge()
244 memcpy(sgl->virt_addr, sgc->sge.a64.last, sgelen); in esas2r_build_sg_list_sge()
248 (struct atto_vda_sge *)((u8 *)sgl->virt_addr + in esas2r_build_sg_list_sge()
253 (struct atto_vda_sge *)((u8 *)sgl->virt_addr in esas2r_build_sg_list_sge()
260 cpu_to_le64(sgl->phys_addr); in esas2r_build_sg_list_sge()
302 list_add(&sgl->next_desc, &rq->sg_table_head); in esas2r_build_sg_list_sge()
376 struct esas2r_mem_desc *sgl; in esas2r_build_prd_iblk() local
449 sgl = esas2r_alloc_sgl(a); in esas2r_build_prd_iblk()
[all …]
/Linux-v5.4/drivers/scsi/qedf/
Ddrv_scsi_fw_funcs.c34 val = cpu_to_le32(sgl_task_params->sgl[sge_index].sge_addr.lo); in init_scsi_sgl_context()
36 val = cpu_to_le32(sgl_task_params->sgl[sge_index].sge_addr.hi); in init_scsi_sgl_context()
38 val = cpu_to_le32(sgl_task_params->sgl[sge_index].sge_len); in init_scsi_sgl_context()
/Linux-v5.4/drivers/gpu/drm/i915/gem/selftests/
Dhuge_gem_object.c17 for (sg = pages->sgl; sg && nreal--; sg = __sg_next(sg)) in huge_free_pages()
42 sg = pages->sgl; in huge_get_pages()
56 for (end = sg, src = pages->sgl; sg; sg = __sg_next(sg)) { in huge_get_pages()
60 src = pages->sgl; in huge_get_pages()

12345678910>>...18