/arch/s390/mm/ |
D | gmap.c | 238 struct gmap *sg, *next; in gmap_remove() local 244 list_for_each_entry_safe(sg, next, &gmap->children, list) { in gmap_remove() 245 list_del(&sg->list); in gmap_remove() 246 gmap_put(sg); in gmap_remove() 1013 static inline void gmap_insert_rmap(struct gmap *sg, unsigned long vmaddr, in gmap_insert_rmap() argument 1018 BUG_ON(!gmap_is_shadow(sg)); in gmap_insert_rmap() 1019 slot = radix_tree_lookup_slot(&sg->host_to_rmap, vmaddr >> PAGE_SHIFT); in gmap_insert_rmap() 1022 &sg->guest_table_lock); in gmap_insert_rmap() 1023 radix_tree_replace_slot(&sg->host_to_rmap, slot, rmap); in gmap_insert_rmap() 1026 radix_tree_insert(&sg->host_to_rmap, vmaddr >> PAGE_SHIFT, in gmap_insert_rmap() [all …]
|
/arch/nios2/mm/ |
D | dma-mapping.c | 94 static int nios2_dma_map_sg(struct device *dev, struct scatterlist *sg, in nios2_dma_map_sg() argument 100 for_each_sg(sg, sg, nents, i) { in nios2_dma_map_sg() 101 void *addr = sg_virt(sg); in nios2_dma_map_sg() 106 sg->dma_address = sg_phys(sg); in nios2_dma_map_sg() 111 __dma_sync_for_device(addr, sg->length, direction); in nios2_dma_map_sg() 138 static void nios2_dma_unmap_sg(struct device *dev, struct scatterlist *sg, in nios2_dma_unmap_sg() argument 151 for_each_sg(sg, sg, nhwentries, i) { in nios2_dma_unmap_sg() 152 addr = sg_virt(sg); in nios2_dma_unmap_sg() 154 __dma_sync_for_cpu(addr, sg->length, direction); in nios2_dma_unmap_sg() 173 struct scatterlist *sg, int nelems, in nios2_dma_sync_sg_for_cpu() argument [all …]
|
/arch/c6x/kernel/ |
D | dma.c | 61 struct scatterlist *sg; in c6x_dma_map_sg() local 64 for_each_sg(sglist, sg, nents, i) { in c6x_dma_map_sg() 65 sg->dma_address = sg_phys(sg); in c6x_dma_map_sg() 67 c6x_dma_sync(sg->dma_address, sg->length, dir); in c6x_dma_map_sg() 76 struct scatterlist *sg; in c6x_dma_unmap_sg() local 82 for_each_sg(sglist, sg, nents, i) in c6x_dma_unmap_sg() 83 c6x_dma_sync(sg_dma_address(sg), sg->length, dir); in c6x_dma_unmap_sg() 104 struct scatterlist *sg; in c6x_dma_sync_sg_for_cpu() local 107 for_each_sg(sglist, sg, nents, i) in c6x_dma_sync_sg_for_cpu() 108 c6x_dma_sync_single_for_cpu(dev, sg_dma_address(sg), in c6x_dma_sync_sg_for_cpu() [all …]
|
/arch/tile/kernel/ |
D | pci-dma.c | 207 struct scatterlist *sg; in tile_dma_map_sg() local 214 for_each_sg(sglist, sg, nents, i) { in tile_dma_map_sg() 215 sg->dma_address = sg_phys(sg); in tile_dma_map_sg() 217 sg->dma_length = sg->length; in tile_dma_map_sg() 221 __dma_prep_pa_range(sg->dma_address, sg->length, direction); in tile_dma_map_sg() 231 struct scatterlist *sg; in tile_dma_unmap_sg() local 235 for_each_sg(sglist, sg, nents, i) { in tile_dma_unmap_sg() 236 sg->dma_address = sg_phys(sg); in tile_dma_unmap_sg() 239 __dma_complete_pa_range(sg->dma_address, sg->length, in tile_dma_unmap_sg() 292 struct scatterlist *sg; in tile_dma_sync_sg_for_cpu() local [all …]
|
/arch/arm/mm/ |
D | dma-mapping-nommu.c | 145 struct scatterlist *sg; in arm_nommu_dma_map_sg() local 147 for_each_sg(sgl, sg, nents, i) { in arm_nommu_dma_map_sg() 148 sg_dma_address(sg) = sg_phys(sg); in arm_nommu_dma_map_sg() 149 sg_dma_len(sg) = sg->length; in arm_nommu_dma_map_sg() 150 __dma_page_cpu_to_dev(sg_dma_address(sg), sg_dma_len(sg), dir); in arm_nommu_dma_map_sg() 160 struct scatterlist *sg; in arm_nommu_dma_unmap_sg() local 163 for_each_sg(sgl, sg, nents, i) in arm_nommu_dma_unmap_sg() 164 __dma_page_dev_to_cpu(sg_dma_address(sg), sg_dma_len(sg), dir); in arm_nommu_dma_unmap_sg() 182 struct scatterlist *sg; in arm_nommu_dma_sync_sg_for_device() local 185 for_each_sg(sgl, sg, nents, i) in arm_nommu_dma_sync_sg_for_device() [all …]
|
/arch/powerpc/platforms/powernv/ |
D | opal-sensor-groups.c | 31 struct attribute_group sg; member 105 static int add_attr_group(const __be32 *ops, int len, struct sensor_group *sg, in add_attr_group() argument 114 add_attr(handle, &sg->sgattrs[count], j); in add_attr_group() 115 sg->sg.attrs[count] = in add_attr_group() 116 &sg->sgattrs[count].attr.attr; in add_attr_group() 120 return sysfs_create_group(sg_kobj, &sg->sg); in add_attr_group() 138 struct device_node *sg, *node; in opal_sensor_groups_init() local 141 sg = of_find_compatible_node(NULL, NULL, "ibm,opal-sensor-group"); in opal_sensor_groups_init() 142 if (!sg) { in opal_sensor_groups_init() 147 sgs = kcalloc(of_get_child_count(sg), sizeof(*sgs), GFP_KERNEL); in opal_sensor_groups_init() [all …]
|
/arch/mips/mm/ |
D | dma-default.c | 284 struct scatterlist *sg; in mips_dma_map_sg() local 286 for_each_sg(sglist, sg, nents, i) { in mips_dma_map_sg() 289 __dma_sync(sg_page(sg), sg->offset, sg->length, in mips_dma_map_sg() 292 sg->dma_length = sg->length; in mips_dma_map_sg() 294 sg->dma_address = plat_map_dma_mem_page(dev, sg_page(sg)) + in mips_dma_map_sg() 295 sg->offset; in mips_dma_map_sg() 316 struct scatterlist *sg; in mips_dma_unmap_sg() local 318 for_each_sg(sglist, sg, nhwentries, i) { in mips_dma_unmap_sg() 322 __dma_sync(sg_page(sg), sg->offset, sg->length, in mips_dma_unmap_sg() 324 plat_unmap_dma_mem(dev, sg->dma_address, sg->length, direction); in mips_dma_unmap_sg() [all …]
|
/arch/sparc/mm/ |
D | iommu.c | 239 static void iommu_get_scsi_sgl_gflush(struct device *dev, struct scatterlist *sg, int sz) in iommu_get_scsi_sgl_gflush() argument 246 n = (sg->length + sg->offset + PAGE_SIZE-1) >> PAGE_SHIFT; in iommu_get_scsi_sgl_gflush() 247 sg->dma_address = iommu_get_one(dev, sg_page(sg), n) + sg->offset; in iommu_get_scsi_sgl_gflush() 248 sg->dma_length = sg->length; in iommu_get_scsi_sgl_gflush() 249 sg = sg_next(sg); in iommu_get_scsi_sgl_gflush() 253 static void iommu_get_scsi_sgl_pflush(struct device *dev, struct scatterlist *sg, int sz) in iommu_get_scsi_sgl_pflush() argument 261 n = (sg->length + sg->offset + PAGE_SIZE-1) >> PAGE_SHIFT; in iommu_get_scsi_sgl_pflush() 268 if ((page = (unsigned long) page_address(sg_page(sg))) != 0) { in iommu_get_scsi_sgl_pflush() 278 sg->dma_address = iommu_get_one(dev, sg_page(sg), n) + sg->offset; in iommu_get_scsi_sgl_pflush() 279 sg->dma_length = sg->length; in iommu_get_scsi_sgl_pflush() [all …]
|
D | io-unit.c | 154 static void iounit_get_scsi_sgl(struct device *dev, struct scatterlist *sg, int sz) in iounit_get_scsi_sgl() argument 163 sg->dma_address = iounit_get_area(iounit, (unsigned long) sg_virt(sg), sg->length); in iounit_get_scsi_sgl() 164 sg->dma_length = sg->length; in iounit_get_scsi_sgl() 165 sg = sg_next(sg); in iounit_get_scsi_sgl() 184 static void iounit_release_scsi_sgl(struct device *dev, struct scatterlist *sg, int sz) in iounit_release_scsi_sgl() argument 193 len = ((sg->dma_address & ~PAGE_MASK) + sg->length + (PAGE_SIZE-1)) >> PAGE_SHIFT; in iounit_release_scsi_sgl() 194 vaddr = (sg->dma_address - IOUNIT_DMA_BASE) >> PAGE_SHIFT; in iounit_release_scsi_sgl() 198 sg = sg_next(sg); in iounit_release_scsi_sgl()
|
/arch/microblaze/kernel/ |
D | dma.c | 59 struct scatterlist *sg; in dma_direct_map_sg() local 63 for_each_sg(sgl, sg, nents, i) { in dma_direct_map_sg() 64 sg->dma_address = sg_phys(sg); in dma_direct_map_sg() 69 __dma_sync(sg_phys(sg), sg->length, direction); in dma_direct_map_sg() 140 struct scatterlist *sg; in dma_direct_sync_sg_for_cpu() local 145 for_each_sg(sgl, sg, nents, i) in dma_direct_sync_sg_for_cpu() 146 __dma_sync(sg->dma_address, sg->length, direction); in dma_direct_sync_sg_for_cpu() 154 struct scatterlist *sg; in dma_direct_sync_sg_for_device() local 159 for_each_sg(sgl, sg, nents, i) in dma_direct_sync_sg_for_device() 160 __dma_sync(sg->dma_address, sg->length, direction); in dma_direct_sync_sg_for_device()
|
/arch/alpha/kernel/ |
D | pci_iommu.c | 505 sg_classify(struct device *dev, struct scatterlist *sg, struct scatterlist *end, in sg_classify() argument 513 leader = sg; in sg_classify() 520 for (++sg; sg < end; ++sg) { in sg_classify() 522 addr = SG_ENT_PHYS_ADDRESS(sg); in sg_classify() 523 len = sg->length; in sg_classify() 529 sg->dma_address = -1; in sg_classify() 532 sg->dma_address = -2; in sg_classify() 539 leader = sg; in sg_classify() 561 struct scatterlist *sg; in sg_fill() local 618 sg = leader; in sg_fill() [all …]
|
/arch/blackfin/kernel/ |
D | dma-mapping.c | 116 struct scatterlist *sg; in bfin_dma_map_sg() local 119 for_each_sg(sg_list, sg, nents, i) { in bfin_dma_map_sg() 120 sg->dma_address = (dma_addr_t) sg_virt(sg); in bfin_dma_map_sg() 125 __dma_sync(sg_dma_address(sg), sg_dma_len(sg), direction); in bfin_dma_map_sg() 135 struct scatterlist *sg; in bfin_dma_sync_sg_for_device() local 138 for_each_sg(sg_list, sg, nelems, i) { in bfin_dma_sync_sg_for_device() 139 sg->dma_address = (dma_addr_t) sg_virt(sg); in bfin_dma_sync_sg_for_device() 140 __dma_sync(sg_dma_address(sg), sg_dma_len(sg), direction); in bfin_dma_sync_sg_for_device()
|
/arch/ia64/sn/pci/ |
D | pci_dma.c | 21 #define SG_ENT_VIRT_ADDRESS(sg) (sg_virt((sg))) argument 245 struct scatterlist *sg; in sn_dma_unmap_sg() local 249 for_each_sg(sgl, sg, nhwentries, i) { in sn_dma_unmap_sg() 250 provider->dma_unmap(pdev, sg->dma_address, dir); in sn_dma_unmap_sg() 251 sg->dma_address = (dma_addr_t) NULL; in sn_dma_unmap_sg() 252 sg->dma_length = 0; in sn_dma_unmap_sg() 276 struct scatterlist *saved_sg = sgl, *sg; in sn_dma_map_sg() local 286 for_each_sg(sgl, sg, nhwentries, i) { in sn_dma_map_sg() 288 phys_addr = SG_ENT_PHYS_ADDRESS(sg); in sn_dma_map_sg() 292 sg->length, in sn_dma_map_sg() [all …]
|
/arch/m68k/kernel/ |
D | dma.c | 123 struct scatterlist *sg; in m68k_dma_sync_sg_for_device() local 125 for_each_sg(sglist, sg, nents, i) { in m68k_dma_sync_sg_for_device() 126 dma_sync_single_for_device(dev, sg->dma_address, sg->length, in m68k_dma_sync_sg_for_device() 147 struct scatterlist *sg; in m68k_dma_map_sg() local 149 for_each_sg(sglist, sg, nents, i) { in m68k_dma_map_sg() 150 sg->dma_address = sg_phys(sg); in m68k_dma_map_sg() 155 dma_sync_single_for_device(dev, sg->dma_address, sg->length, in m68k_dma_map_sg()
|
/arch/metag/kernel/ |
D | dma.c | 505 struct scatterlist *sg; in metag_dma_map_sg() local 508 for_each_sg(sglist, sg, nents, i) { in metag_dma_map_sg() 509 BUG_ON(!sg_page(sg)); in metag_dma_map_sg() 511 sg->dma_address = sg_phys(sg); in metag_dma_map_sg() 516 dma_sync_for_device(sg_virt(sg), sg->length, direction); in metag_dma_map_sg() 527 struct scatterlist *sg; in metag_dma_unmap_sg() local 530 for_each_sg(sglist, sg, nhwentries, i) { in metag_dma_unmap_sg() 531 BUG_ON(!sg_page(sg)); in metag_dma_unmap_sg() 533 sg->dma_address = sg_phys(sg); in metag_dma_unmap_sg() 538 dma_sync_for_cpu(sg_virt(sg), sg->length, direction); in metag_dma_unmap_sg() [all …]
|
/arch/arm/mach-rpc/ |
D | dma.c | 56 static void iomd_get_next_sg(struct scatterlist *sg, struct iomd_dma *idma) in iomd_get_next_sg() argument 60 if (idma->dma.sg) { in iomd_get_next_sg() 61 sg->dma_address = idma->dma_addr; in iomd_get_next_sg() 62 offset = sg->dma_address & ~PAGE_MASK; in iomd_get_next_sg() 72 sg->length = end - TRANSFER_SIZE; in iomd_get_next_sg() 79 idma->dma.sg = sg_next(idma->dma.sg); in iomd_get_next_sg() 80 idma->dma_addr = idma->dma.sg->dma_address; in iomd_get_next_sg() 81 idma->dma_len = idma->dma.sg->length; in iomd_get_next_sg() 84 idma->dma.sg = NULL; in iomd_get_next_sg() 90 sg->dma_address = 0; in iomd_get_next_sg() [all …]
|
/arch/sparc/kernel/ |
D | ioport.c | 380 static int sbus_map_sg(struct device *dev, struct scatterlist *sg, int n, in sbus_map_sg() argument 383 mmu_get_scsi_sgl(dev, sg, n); in sbus_map_sg() 387 static void sbus_unmap_sg(struct device *dev, struct scatterlist *sg, int n, in sbus_unmap_sg() argument 390 mmu_release_scsi_sgl(dev, sg, n); in sbus_unmap_sg() 393 static void sbus_sync_sg_for_cpu(struct device *dev, struct scatterlist *sg, in sbus_sync_sg_for_cpu() argument 399 static void sbus_sync_sg_for_device(struct device *dev, struct scatterlist *sg, in sbus_sync_sg_for_device() argument 560 struct scatterlist *sg; in pci32_map_sg() local 564 for_each_sg(sgl, sg, nents, n) { in pci32_map_sg() 565 sg->dma_address = sg_phys(sg); in pci32_map_sg() 566 sg->dma_length = sg->length; in pci32_map_sg() [all …]
|
/arch/arc/mm/ |
D | dma.c | 199 static int arc_dma_map_sg(struct device *dev, struct scatterlist *sg, in arc_dma_map_sg() argument 205 for_each_sg(sg, s, nents, i) in arc_dma_map_sg() 212 static void arc_dma_unmap_sg(struct device *dev, struct scatterlist *sg, in arc_dma_unmap_sg() argument 219 for_each_sg(sg, s, nents, i) in arc_dma_unmap_sg() 241 struct scatterlist *sg; in arc_dma_sync_sg_for_cpu() local 243 for_each_sg(sglist, sg, nelems, i) in arc_dma_sync_sg_for_cpu() 244 _dma_cache_sync(sg_phys(sg), sg->length, dir); in arc_dma_sync_sg_for_cpu() 252 struct scatterlist *sg; in arc_dma_sync_sg_for_device() local 254 for_each_sg(sglist, sg, nelems, i) in arc_dma_sync_sg_for_device() 255 _dma_cache_sync(sg_phys(sg), sg->length, dir); in arc_dma_sync_sg_for_device()
|
/arch/powerpc/kernel/ |
D | dma.c | 200 struct scatterlist *sg; in dma_direct_map_sg() local 203 for_each_sg(sgl, sg, nents, i) { in dma_direct_map_sg() 204 sg->dma_address = sg_phys(sg) + get_dma_offset(dev); in dma_direct_map_sg() 205 sg->dma_length = sg->length; in dma_direct_map_sg() 210 __dma_sync_page(sg_page(sg), sg->offset, sg->length, direction); in dma_direct_map_sg() 216 static void dma_direct_unmap_sg(struct device *dev, struct scatterlist *sg, in dma_direct_unmap_sg() argument 262 struct scatterlist *sg; in dma_direct_sync_sg() local 265 for_each_sg(sgl, sg, nents, i) in dma_direct_sync_sg() 266 __dma_sync_page(sg_page(sg), sg->offset, sg->length, direction); in dma_direct_sync_sg()
|
/arch/mn10300/mm/ |
D | dma-alloc.c | 80 struct scatterlist *sg; in mn10300_dma_map_sg() local 83 for_each_sg(sglist, sg, nents, i) { in mn10300_dma_map_sg() 84 BUG_ON(!sg_page(sg)); in mn10300_dma_map_sg() 86 sg->dma_address = sg_phys(sg); in mn10300_dma_map_sg() 106 static void mn10300_dma_sync_sg_for_device(struct device *dev, struct scatterlist *sg, in mn10300_dma_sync_sg_for_device() argument
|
/arch/s390/include/asm/ |
D | gmap.h | 114 int gmap_shadow_valid(struct gmap *sg, unsigned long asce, int edat_level); 115 int gmap_shadow_r2t(struct gmap *sg, unsigned long saddr, unsigned long r2t, 117 int gmap_shadow_r3t(struct gmap *sg, unsigned long saddr, unsigned long r3t, 119 int gmap_shadow_sgt(struct gmap *sg, unsigned long saddr, unsigned long sgt, 121 int gmap_shadow_pgt(struct gmap *sg, unsigned long saddr, unsigned long pgt, 123 int gmap_shadow_pgt_lookup(struct gmap *sg, unsigned long saddr, 125 int gmap_shadow_page(struct gmap *sg, unsigned long saddr, pte_t pte);
|
/arch/sh/kernel/ |
D | dma-nommu.c | 28 static int nommu_map_sg(struct device *dev, struct scatterlist *sg, in nommu_map_sg() argument 35 WARN_ON(nents == 0 || sg[0].length == 0); in nommu_map_sg() 37 for_each_sg(sg, s, nents, i) { in nommu_map_sg() 57 static void nommu_sync_sg(struct device *dev, struct scatterlist *sg, in nommu_sync_sg() argument 63 for_each_sg(sg, s, nelems, i) in nommu_sync_sg()
|
/arch/parisc/kernel/ |
D | pci-dma.c | 494 struct scatterlist *sg; in pa11_dma_map_sg() local 498 for_each_sg(sglist, sg, nents, i) { in pa11_dma_map_sg() 499 unsigned long vaddr = (unsigned long)sg_virt(sg); in pa11_dma_map_sg() 501 sg_dma_address(sg) = (dma_addr_t) virt_to_phys(vaddr); in pa11_dma_map_sg() 502 sg_dma_len(sg) = sg->length; in pa11_dma_map_sg() 507 flush_kernel_dcache_range(vaddr, sg->length); in pa11_dma_map_sg() 517 struct scatterlist *sg; in pa11_dma_unmap_sg() local 529 for_each_sg(sglist, sg, nents, i) in pa11_dma_unmap_sg() 530 flush_kernel_vmap_range(sg_virt(sg), sg->length); in pa11_dma_unmap_sg() 556 struct scatterlist *sg; in pa11_dma_sync_sg_for_cpu() local [all …]
|
/arch/h8300/kernel/ |
D | dma.c | 53 struct scatterlist *sg; in map_sg() local 56 for_each_sg(sgl, sg, nents, i) { in map_sg() 57 sg->dma_address = sg_phys(sg); in map_sg()
|
/arch/frv/mb93090-mb00/ |
D | pci-dma-nommu.c | 112 struct scatterlist *sg; in frv_dma_map_sg() local 120 for_each_sg(sglist, sg, nents, i) { in frv_dma_map_sg() 121 frv_cache_wback_inv(sg_dma_address(sg), in frv_dma_map_sg() 122 sg_dma_address(sg) + sg_dma_len(sg)); in frv_dma_map_sg() 148 struct scatterlist *sg, int nelems, in frv_dma_sync_sg_for_device() argument
|