/openbmc/linux/drivers/misc/genwqe/ |
H A D | card_utils.c | 304 sgl->fpage_offs, sgl->fpage_size, sgl->lpage_size); in genwqe_alloc_sync_sgl() 317 sgl->sgl = __genwqe_alloc_consistent(cd, sgl->sgl_size, in genwqe_alloc_sync_sgl() 319 if (sgl->sgl == NULL) { in genwqe_alloc_sync_sgl() 347 sgl->lpage_size, sgl->lpage_size)) { in genwqe_alloc_sync_sgl() 365 __genwqe_free_consistent(cd, sgl->sgl_size, sgl->sgl, in genwqe_alloc_sync_sgl() 367 sgl->sgl = NULL; in genwqe_alloc_sync_sgl() 386 s = &sgl->sgl[0]; /* first set of 8 entries */ in genwqe_setup_sgl() 483 sgl->fpage + sgl->fpage_offs, sgl->fpage_size); in genwqe_free_sync_sgl() 498 offset = sgl->user_size - sgl->lpage_size; in genwqe_free_sync_sgl() 513 __genwqe_free_consistent(cd, sgl->sgl_size, sgl->sgl, in genwqe_free_sync_sgl() [all …]
|
/openbmc/linux/crypto/ |
H A D | af_alg.c | 547 if (sgl->sgt.sgl) { in af_alg_free_sg() 550 unpin_user_page(sg_page(&sgl->sgt.sgl[i])); in af_alg_free_sg() 551 if (sgl->sgt.sgl != sgl->sgl) in af_alg_free_sg() 552 kvfree(sgl->sgt.sgl); in af_alg_free_sg() 553 sgl->sgt.sgl = NULL; in af_alg_free_sg() 1001 sg = sgl->sg + sgl->cur - 1; in af_alg_sendmsg() 1054 for (; sgl->cur < sgtable.nents; sgl->cur++) in af_alg_sendmsg() 1210 areq->first_rsgl.sgl.sgt.sgl = areq->first_rsgl.sgl.sgl; in af_alg_alloc_areq() 1262 rsgl->sgl.sgt.sgl = rsgl->sgl.sgl; in af_alg_get_rsgl() 1267 sg_init_table(rsgl->sgl.sgt.sgl, ALG_MAX_PAGES); in af_alg_get_rsgl() [all …]
|
H A D | algif_hash.c | 20 struct af_alg_sgl sgl; member 106 ctx->sgl.sgt.sgl = ctx->sgl.sgl; in hash_sendmsg() 107 ctx->sgl.sgt.nents = 0; in hash_sendmsg() 108 ctx->sgl.sgt.orig_nents = 0; in hash_sendmsg() 115 sg_init_table(ctx->sgl.sgl, npages); in hash_sendmsg() 117 ctx->sgl.need_unpin = iov_iter_extract_will_pin(&msg->msg_iter); in hash_sendmsg() 120 &ctx->sgl.sgt, npages, 0); in hash_sendmsg() 124 sg_mark_end(ctx->sgl.sgt.sgl + ctx->sgl.sgt.nents - 1); in hash_sendmsg() 132 ahash_request_set_crypt(&ctx->req, ctx->sgl.sgt.sgl, in hash_sendmsg() 160 af_alg_free_sg(&ctx->sgl); in hash_sendmsg() [all …]
|
/openbmc/linux/drivers/crypto/hisilicon/ |
H A D | sgl.c | 37 struct hisi_acc_hw_sgl *sgl; member 95 if (!block[i].sgl) { in hisi_acc_create_sgl_pool() 107 if (!block[i].sgl) { in hisi_acc_create_sgl_pool() 178 hw_sge->buf = sg_dma_address(sgl); in sg_map_to_hw_sg() 180 hw_sge->page_ctrl = sg_virt(sgl); in sg_map_to_hw_sg() 221 struct scatterlist *sgl, in hisi_acc_sg_buf_map_to_hw_sgl() argument 231 if (!dev || !sgl || !pool || !hw_sgl_dma) in hisi_acc_sg_buf_map_to_hw_sgl() 234 sg_n = sg_nents(sgl); in hisi_acc_sg_buf_map_to_hw_sgl() 256 for_each_sg(sgl, sg, sg_n_mapped, i) { in hisi_acc_sg_buf_map_to_hw_sgl() 280 if (!dev || !sgl || !hw_sgl) in hisi_acc_sg_buf_unmap() [all …]
|
/openbmc/linux/mm/ |
H A D | page_reporting.c | 108 struct scatterlist *sg = sgl; in page_reporting_drain() 137 sg_init_table(sgl, nents); in page_reporting_drain() 208 sg_set_page(&sgl[*offset], page, page_len, 0); in page_reporting_cycle() 286 sgl, &offset); in page_reporting_process_zone() 295 sgl = &sgl[offset]; in page_reporting_process_zone() 296 err = prdev->report(prdev, sgl, leftover); in page_reporting_process_zone() 313 struct scatterlist *sgl; in page_reporting_process() local 325 sgl = kmalloc_array(PAGE_REPORTING_CAPACITY, sizeof(*sgl), GFP_KERNEL); in page_reporting_process() 326 if (!sgl) in page_reporting_process() 329 sg_init_table(sgl, PAGE_REPORTING_CAPACITY); in page_reporting_process() [all …]
|
/openbmc/linux/lib/ |
H A D | scatterlist.c | 128 memset(sgl, 0, sizeof(*sgl) * nents); in sg_init_table() 129 sg_init_marker(sgl, nents); in sg_init_table() 205 sgl = table->sgl; in __sg_free_table() 230 sgl = next; in __sg_free_table() 234 table->sgl = NULL; in __sg_free_table() 346 table->sgl = sg; in __sg_alloc_table() 633 if (!sgl) in sgl_alloc_order() 637 sg = sgl; in sgl_alloc_order() 653 return sgl; in sgl_alloc_order() 698 kfree(sgl); in sgl_free_n_order() [all …]
|
H A D | kfifo.c | 295 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() 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() 370 struct scatterlist *sgl, int nents, unsigned int len) in __kfifo_dma_out_prepare() argument [all …]
|
/openbmc/qemu/hw/usb/ |
H A D | libhw.c | 26 int usb_packet_map(USBPacket *p, QEMUSGList *sgl) in usb_packet_map() argument 33 for (i = 0; i < sgl->nsg; i++) { in usb_packet_map() 34 dma_addr_t base = sgl->sg[i].base; in usb_packet_map() 35 dma_addr_t len = sgl->sg[i].len; in usb_packet_map() 39 mem = dma_memory_map(sgl->as, base, &xlen, dir, in usb_packet_map() 55 usb_packet_unmap(p, sgl); in usb_packet_map() 59 void usb_packet_unmap(USBPacket *p, QEMUSGList *sgl) in usb_packet_unmap() argument 66 dma_memory_unmap(sgl->as, p->iov.iov[i].iov_base, in usb_packet_unmap()
|
/openbmc/linux/include/linux/ |
H A D | scatterlist.h | 40 struct scatterlist *sgl; /* the list */ member 202 for_each_sg((sgt)->sgl, sg, (sgt)->orig_nents, i) 210 for_each_sg((sgt)->sgl, sg, (sgt)->nents, i) 213 struct scatterlist *sgl) in __sg_chain() argument 225 chain_sg->page_link = ((unsigned long) sgl | SG_CHAIN) & ~SG_END; in __sg_chain() 239 struct scatterlist *sgl) in sg_chain() argument 241 __sg_chain(&prv[prv_nents - 1], sgl); in sg_chain() 413 static inline void sg_init_marker(struct scatterlist *sgl, in sg_init_marker() argument 416 sg_mark_end(&sgl[nents - 1]); in sg_init_marker() 488 void sgl_free_order(struct scatterlist *sgl, int order); [all …]
|
/openbmc/linux/drivers/target/iscsi/cxgbit/ |
H A D | cxgbit_ddp.c | 133 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() 205 sgl->offset = sg_offset; in cxgbit_ddp_reserve() 245 ttinfo->sgl = cmd->se_cmd.t_data_sg; in cxgbit_get_r2t_ttt() 253 ttinfo->sgl = NULL; in cxgbit_get_r2t_ttt() 284 if (unlikely(ttinfo->sgl)) { in cxgbit_unmap_cmd() [all …]
|
/openbmc/linux/tools/virtio/linux/ |
H A D | scatterlist.h | 92 struct scatterlist *sgl) in sg_chain() argument 104 prv[prv_nents - 1].page_link = ((unsigned long) sgl | 0x01) & ~0x02; in sg_chain() 150 static inline void sg_init_table(struct scatterlist *sgl, unsigned int nents) in sg_init_table() argument 152 memset(sgl, 0, sizeof(*sgl) * nents); in sg_init_table() 153 sg_mark_end(&sgl[nents - 1]); in sg_init_table()
|
/openbmc/linux/drivers/crypto/intel/qat/qat_common/ |
H A D | qat_bl.c | 51 struct scatterlist *sgl, in __qat_bl_sgl_to_bufl() argument 62 int n = sg_nents(sgl); in __qat_bl_sgl_to_bufl() 96 for_each_sg(sgl, sg, n, i) { in __qat_bl_sgl_to_bufl() 126 if (sgl != sglout) { in __qat_bl_sgl_to_bufl() 215 n = sg_nents(sgl); in __qat_bl_sgl_to_bufl() 267 struct scatterlist *sgl, in qat_bl_sgl_map() argument 277 n = sg_nents(sgl); in qat_bl_sgl_map() 331 if (sgl) in qat_bl_sgl_free_unmap() 332 sgl_free(sgl); in qat_bl_sgl_free_unmap() 354 *sgl = dst; in qat_bl_sgl_alloc_map() [all …]
|
/openbmc/linux/kernel/dma/ |
H A D | direct.h | 21 int dma_direct_map_sg(struct device *dev, struct scatterlist *sgl, int nents, 27 void dma_direct_sync_sg_for_device(struct device *dev, struct scatterlist *sgl, 31 struct scatterlist *sgl, int nents, enum dma_data_direction dir) in dma_direct_sync_sg_for_device() argument 39 void dma_direct_unmap_sg(struct device *dev, struct scatterlist *sgl, 42 struct scatterlist *sgl, int nents, enum dma_data_direction dir); 45 struct scatterlist *sgl, int nents, enum dma_data_direction dir, in dma_direct_unmap_sg() argument 50 struct scatterlist *sgl, int nents, enum dma_data_direction dir) in dma_direct_sync_sg_for_cpu() argument
|
/openbmc/linux/drivers/scsi/lpfc/ |
H A D | lpfc_scsi.c | 106 sgl->word2 = le32_to_cpu(sgl->word2); in lpfc_sli4_set_rsp_sgl_last() 108 sgl->word2 = cpu_to_le32(sgl->word2); in lpfc_sli4_set_rsp_sgl_last() 656 sgl->word2 = le32_to_cpu(sgl->word2); in lpfc_get_scsi_buf_s4() 658 sgl->word2 = cpu_to_le32(sgl->word2); in lpfc_get_scsi_buf_s4() 666 sgl->word2 = le32_to_cpu(sgl->word2); in lpfc_get_scsi_buf_s4() 668 sgl->word2 = cpu_to_le32(sgl->word2); in lpfc_get_scsi_buf_s4() 2248 sgl->word2 = cpu_to_le32(sgl->word2); in lpfc_bg_setup_sgl_prot() 3077 sgl->word2 = le32_to_cpu(sgl->word2); in lpfc_scsi_prep_dma_buf_s4() 3079 sgl->word2 = cpu_to_le32(sgl->word2); in lpfc_scsi_prep_dma_buf_s4() 3208 sgl->word2 = le32_to_cpu(sgl->word2); in lpfc_scsi_prep_dma_buf_s4() [all …]
|
H A D | lpfc_nvme.c | 852 sgl->addr_hi = 0; in lpfc_nvme_adj_fcp_sgls() 853 sgl->addr_lo = 0; in lpfc_nvme_adj_fcp_sgls() 906 sgl++; in lpfc_nvme_adj_fcp_sgls() 911 sgl->word2 = le32_to_cpu(sgl->word2); in lpfc_nvme_adj_fcp_sgls() 916 sgl->word2 = cpu_to_le32(sgl->word2); in lpfc_nvme_adj_fcp_sgls() 1364 sgl += 2; in lpfc_nvme_prep_io_dma() 1399 sgl->word2 = 0; in lpfc_nvme_prep_io_dma() 1446 sgl->word2 = cpu_to_le32(sgl->word2); in lpfc_nvme_prep_io_dma() 1452 sgl++; in lpfc_nvme_prep_io_dma() 1456 sgl->word2 = cpu_to_le32(sgl->word2); in lpfc_nvme_prep_io_dma() [all …]
|
/openbmc/linux/drivers/spi/ |
H A D | spi-bcm2835.c | 493 if (bs->tx_buf && !sg_is_last(&tfr->tx_sg.sgl[0])) in bcm2835_spi_transfer_prologue() 505 !(sg_dma_len(&tfr->tx_sg.sgl[0]) & ~3); in bcm2835_spi_transfer_prologue() 527 sg_dma_address(&tfr->rx_sg.sgl[0]), in bcm2835_spi_transfer_prologue() 556 sg_dma_len(&tfr->tx_sg.sgl[0]) = 0; in bcm2835_spi_transfer_prologue() 557 sg_dma_address(&tfr->tx_sg.sgl[1]) += 4; in bcm2835_spi_transfer_prologue() 558 sg_dma_len(&tfr->tx_sg.sgl[1]) -= 4; in bcm2835_spi_transfer_prologue() 590 sg_dma_address(&tfr->tx_sg.sgl[1]) -= 4; in bcm2835_spi_undo_prologue() 591 sg_dma_len(&tfr->tx_sg.sgl[1]) += 4; in bcm2835_spi_undo_prologue() 674 struct scatterlist *sgl; in bcm2835_spi_prepare_sg() local 686 sgl = tfr->tx_sg.sgl; in bcm2835_spi_prepare_sg() [all …]
|
/openbmc/linux/drivers/gpu/drm/nouveau/nvkm/core/ |
H A D | firmware.c | 124 .sgl = &fw->mem.sgl, in nvkm_firmware_mem_map() 136 return sg_dma_len(&nvkm_firmware_mem(memory)->mem.sgl); in nvkm_firmware_mem_size() 190 dma_free_noncoherent(fw->device->dev, sg_dma_len(&fw->mem.sgl), in nvkm_firmware_dtor() 227 sg_init_one(&fw->mem.sgl, fw->img, len); in nvkm_firmware_ctor() 228 sg_dma_address(&fw->mem.sgl) = fw->phys; in nvkm_firmware_ctor() 229 sg_dma_len(&fw->mem.sgl) = len; in nvkm_firmware_ctor()
|
/openbmc/linux/drivers/xen/ |
H A D | swiotlb-xen.c | 311 xen_swiotlb_unmap_sg(struct device *hwdev, struct scatterlist *sgl, int nelems, in xen_swiotlb_unmap_sg() argument 319 for_each_sg(sgl, sg, nelems, i) in xen_swiotlb_unmap_sg() 326 xen_swiotlb_map_sg(struct device *dev, struct scatterlist *sgl, int nelems, in xen_swiotlb_map_sg() argument 334 for_each_sg(sgl, sg, nelems, i) { in xen_swiotlb_map_sg() 344 xen_swiotlb_unmap_sg(dev, sgl, i, dir, attrs | DMA_ATTR_SKIP_CPU_SYNC); in xen_swiotlb_map_sg() 345 sg_dma_len(sgl) = 0; in xen_swiotlb_map_sg() 350 xen_swiotlb_sync_sg_for_cpu(struct device *dev, struct scatterlist *sgl, in xen_swiotlb_sync_sg_for_cpu() argument 356 for_each_sg(sgl, sg, nelems, i) { in xen_swiotlb_sync_sg_for_cpu() 363 xen_swiotlb_sync_sg_for_device(struct device *dev, struct scatterlist *sgl, in xen_swiotlb_sync_sg_for_device() argument 369 for_each_sg(sgl, sg, nelems, i) { in xen_swiotlb_sync_sg_for_device()
|
/openbmc/linux/drivers/media/platform/rockchip/rga/ |
H A D | rga-buf.c | 118 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()
|
/openbmc/linux/drivers/vfio/pci/pds/ |
H A D | cmds.c | 206 struct pds_lm_sg_elem *sgl, *sge; in pds_vfio_dma_map_lm_file() local 225 sgl = kzalloc(sgl_size, GFP_KERNEL); in pds_vfio_dma_map_lm_file() 226 if (!sgl) { in pds_vfio_dma_map_lm_file() 232 sge = sgl; in pds_vfio_dma_map_lm_file() 240 sgl_addr = dma_map_single(dev, sgl, sgl_size, DMA_TO_DEVICE); in pds_vfio_dma_map_lm_file() 246 lm_file->sgl = sgl; in pds_vfio_dma_map_lm_file() 252 kfree(sgl); in pds_vfio_dma_map_lm_file() 267 if (lm_file->sgl) { in pds_vfio_dma_unmap_lm_file() 269 lm_file->num_sge * sizeof(*lm_file->sgl), in pds_vfio_dma_unmap_lm_file() 271 kfree(lm_file->sgl); in pds_vfio_dma_unmap_lm_file() [all …]
|
/openbmc/linux/drivers/media/platform/ |
H A D | m2m-deinterlace.c | 236 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() 251 ctx->xt->sgl[0].icg = s_width / 2; in deinterlace_issue_dma() 258 ctx->xt->sgl[0].icg = s_width / 2; in deinterlace_issue_dma() 265 ctx->xt->sgl[0].icg = s_width / 2; in deinterlace_issue_dma() 272 ctx->xt->sgl[0].icg = s_width / 2; in deinterlace_issue_dma() 278 ctx->xt->sgl[0].size = s_width; in deinterlace_issue_dma() 279 ctx->xt->sgl[0].icg = s_width; in deinterlace_issue_dma() [all …]
|
/openbmc/linux/drivers/gpu/drm/i915/ |
H A D | i915_scatterlist.h | 31 } __sgt_iter(struct scatterlist *sgl, bool dma) { in __sgt_iter() argument 32 struct sgt_iter s = { .sgp = sgl }; in __sgt_iter() 90 for ((__iter) = __sgt_iter((__sgt)->sgl, true); \ 102 for ((__iter) = __sgt_iter((__sgt)->sgl, false); \ 215 rsgt->table.sgl = NULL; in __i915_refct_sgt_init()
|
/openbmc/linux/drivers/net/ethernet/intel/ixgbe/ |
H A D | ixgbe_fcoe.c | 29 ddp->sgl = NULL; in ixgbe_fcoe_clear_ddp() 110 if (ddp->sgl) in ixgbe_fcoe_ddp_put() 134 struct scatterlist *sgl, unsigned int sgc, in ixgbe_fcoe_ddp_setup() argument 153 if (!netdev || !sgl) in ixgbe_fcoe_ddp_setup() 169 if (ddp->sgl) { in ixgbe_fcoe_ddp_setup() 171 xid, ddp->sgl, ddp->sgc); in ixgbe_fcoe_ddp_setup() 202 ddp->sgl = sgl; in ixgbe_fcoe_ddp_setup() 206 for_each_sg(sgl, sg, dmacount, i) { in ixgbe_fcoe_ddp_setup() 366 struct scatterlist *sgl, unsigned int sgc) in ixgbe_fcoe_ddp_target() argument 442 dma_unmap_sg(&adapter->pdev->dev, ddp->sgl, in ixgbe_fcoe_ddp() [all …]
|
/openbmc/linux/drivers/scsi/qedf/ |
H A D | drv_scsi_fw_funcs.c | 34 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()
|
/openbmc/linux/drivers/scsi/esas2r/ |
H A D | esas2r_io.c | 224 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() 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() 451 if (unlikely(sgl == NULL)) in esas2r_build_prd_iblk() 458 list_add(&sgl->next_desc, &rq->sg_table_head); in esas2r_build_prd_iblk() [all …]
|