Home
last modified time | relevance | path

Searched refs:sg_table (Results 1 – 25 of 259) sorted by relevance

1234567891011

/Linux-v5.15/drivers/hwtracing/coresight/
Dcoresight-tmc-etr.c107 struct tmc_sg_table *sg_table; member
236 tmc_sg_get_data_page_offset(struct tmc_sg_table *sg_table, dma_addr_t addr) in tmc_sg_get_data_page_offset() argument
238 return tmc_pages_get_offset(&sg_table->data_pages, addr); in tmc_sg_get_data_page_offset()
241 static inline void tmc_free_table_pages(struct tmc_sg_table *sg_table) in tmc_free_table_pages() argument
243 if (sg_table->table_vaddr) in tmc_free_table_pages()
244 vunmap(sg_table->table_vaddr); in tmc_free_table_pages()
245 tmc_pages_free(&sg_table->table_pages, sg_table->dev, DMA_TO_DEVICE); in tmc_free_table_pages()
248 static void tmc_free_data_pages(struct tmc_sg_table *sg_table) in tmc_free_data_pages() argument
250 if (sg_table->data_vaddr) in tmc_free_data_pages()
251 vunmap(sg_table->data_vaddr); in tmc_free_data_pages()
[all …]
Dcoresight-tmc.h315 void tmc_free_sg_table(struct tmc_sg_table *sg_table);
316 void tmc_sg_table_sync_table(struct tmc_sg_table *sg_table);
319 ssize_t tmc_sg_table_get_data(struct tmc_sg_table *sg_table,
322 tmc_sg_table_buf_size(struct tmc_sg_table *sg_table) in tmc_sg_table_buf_size() argument
324 return sg_table->data_pages.nr_pages << PAGE_SHIFT; in tmc_sg_table_buf_size()
/Linux-v5.15/drivers/target/
Dtarget_core_rd.c63 static u32 rd_release_sgl_table(struct rd_dev *rd_dev, struct rd_dev_sg_table *sg_table, in rd_release_sgl_table() argument
71 sg = sg_table[i].sg_table; in rd_release_sgl_table()
72 sg_per_table = sg_table[i].rd_sg_count; in rd_release_sgl_table()
84 kfree(sg_table); in rd_release_sgl_table()
112 static int rd_allocate_sgl_table(struct rd_dev *rd_dev, struct rd_dev_sg_table *sg_table, in rd_allocate_sgl_table() argument
142 sg_chain(sg_table[i - 1].sg_table, in rd_allocate_sgl_table()
146 sg_table[i].sg_table = sg; in rd_allocate_sgl_table()
147 sg_table[i].rd_sg_count = sg_per_table; in rd_allocate_sgl_table()
148 sg_table[i].page_start_offset = page_offset; in rd_allocate_sgl_table()
149 sg_table[i++].page_end_offset = (page_offset + sg_per_table) in rd_allocate_sgl_table()
[all …]
/Linux-v5.15/drivers/media/common/videobuf2/
Dvideobuf2-dma-sg.c41 struct sg_table sg_table; member
47 struct sg_table *dma_sgt;
104 struct sg_table *sgt; in vb2_dma_sg_alloc()
121 buf->dma_sgt = &buf->sg_table; in vb2_dma_sg_alloc()
145 sgt = &buf->sg_table; in vb2_dma_sg_alloc()
181 struct sg_table *sgt = &buf->sg_table; in vb2_dma_sg_put()
203 struct sg_table *sgt = buf->dma_sgt; in vb2_dma_sg_prepare()
211 struct sg_table *sgt = buf->dma_sgt; in vb2_dma_sg_finish()
221 struct sg_table *sgt; in vb2_dma_sg_get_userptr()
236 buf->dma_sgt = &buf->sg_table; in vb2_dma_sg_get_userptr()
[all …]
Dvideobuf2-dma-contig.c33 struct sg_table *dma_sgt;
39 struct sg_table *sgt_base;
49 static unsigned long vb2_dc_get_contiguous_size(struct sg_table *sgt) in vb2_dc_get_contiguous_size()
100 struct sg_table *sgt = buf->dma_sgt; in vb2_dc_prepare()
111 struct sg_table *sgt = buf->dma_sgt; in vb2_dc_finish()
215 struct sg_table sgt;
225 struct sg_table *sgt; in vb2_dc_dmabuf_ops_attach()
261 struct sg_table *sgt; in vb2_dc_dmabuf_ops_detach()
283 static struct sg_table *vb2_dc_dmabuf_ops_map( in vb2_dc_dmabuf_ops_map()
289 struct sg_table *sgt; in vb2_dc_dmabuf_ops_map()
[all …]
/Linux-v5.15/drivers/dma-buf/heaps/
Dsystem_heap.c31 struct sg_table sg_table; member
38 struct sg_table *table;
57 static struct sg_table *dup_sg_table(struct sg_table *table) in dup_sg_table()
59 struct sg_table *new_table; in dup_sg_table()
87 struct sg_table *table; in system_heap_attach()
93 table = dup_sg_table(&buffer->sg_table); in system_heap_attach()
128 static struct sg_table *system_heap_map_dma_buf(struct dma_buf_attachment *attachment, in system_heap_map_dma_buf()
132 struct sg_table *table = a->table; in system_heap_map_dma_buf()
144 struct sg_table *table, in system_heap_unmap_dma_buf()
198 struct sg_table *table = &buffer->sg_table; in system_heap_mmap()
[all …]
/Linux-v5.15/include/drm/
Ddrm_prime.h81 struct sg_table *drm_gem_map_dma_buf(struct dma_buf_attachment *attach,
84 struct sg_table *sgt,
92 struct sg_table *drm_prime_pages_to_sg(struct drm_device *dev,
97 unsigned long drm_prime_get_contiguous_size(struct sg_table *sgt);
106 void drm_prime_gem_destroy(struct drm_gem_object *obj, struct sg_table *sg);
108 int drm_prime_sg_to_page_array(struct sg_table *sgt, struct page **pages,
110 int drm_prime_sg_to_dma_addr_array(struct sg_table *sgt, dma_addr_t *addrs,
Ddrm_gem_shmem_helper.h18 struct sg_table;
80 struct sg_table *sgt;
144 struct sg_table *drm_gem_shmem_get_sg_table(struct drm_gem_object *obj);
148 struct sg_table *sgt);
150 struct sg_table *drm_gem_shmem_get_pages_sgt(struct drm_gem_object *obj);
Ddrm_gem_cma_helper.h24 struct sg_table *sgt;
99 struct sg_table *drm_gem_cma_get_sg_table(struct drm_gem_object *obj);
103 struct sg_table *sgt);
186 struct sg_table *sgt);
/Linux-v5.15/drivers/gpu/drm/rcar-du/
Drcar_du_vsp.h18 struct sg_table;
49 struct sg_table sg_tables[3];
66 struct sg_table sg_tables[3]);
68 struct sg_table sg_tables[3]);
82 struct sg_table sg_tables[3]) in rcar_du_vsp_map_fb()
88 struct sg_table sg_tables[3]) in rcar_du_vsp_unmap_fb()
/Linux-v5.15/drivers/dma-buf/
Ddma-buf.c684 static void mangle_sg_table(struct sg_table *sg_table) in mangle_sg_table() argument
694 for_each_sgtable_sg(sg_table, sg, i) in mangle_sg_table()
699 static struct sg_table * __map_dma_buf(struct dma_buf_attachment *attach, in __map_dma_buf()
702 struct sg_table *sg_table; in __map_dma_buf() local
704 sg_table = attach->dmabuf->ops->map_dma_buf(attach, direction); in __map_dma_buf()
706 if (!IS_ERR_OR_NULL(sg_table)) in __map_dma_buf()
707 mangle_sg_table(sg_table); in __map_dma_buf()
709 return sg_table; in __map_dma_buf()
774 struct sg_table *sgt; in dma_buf_dynamic_attach()
831 struct sg_table *sg_table, in __unmap_dma_buf() argument
[all …]
/Linux-v5.15/drivers/spi/
Dinternals.h24 struct sg_table *sgt, void *buf, size_t len,
27 struct sg_table *sgt, enum dma_data_direction dir);
30 struct sg_table *sgt, void *buf, size_t len, in spi_map_buf()
37 struct device *dev, struct sg_table *sgt, in spi_unmap_buf()
/Linux-v5.15/include/linux/
Dintel_th.h43 int (*alloc_window)(void *priv, struct sg_table **sgt,
45 void (*free_window)(void *priv, struct sg_table *sgt);
59 int (*ready)(void *priv, struct sg_table *sgt, size_t bytes);
65 void intel_th_msc_window_unlock(struct device *dev, struct sg_table *sgt);
Dscatterlist.h36 struct sg_table { struct
43 struct sg_table sgt; /* The scatter list table */ argument
288 void __sg_free_table(struct sg_table *, unsigned int, unsigned int,
290 void sg_free_table(struct sg_table *);
292 int __sg_alloc_table(struct sg_table *, unsigned int, unsigned int,
294 int sg_alloc_table(struct sg_table *, unsigned int, gfp_t);
300 int sg_alloc_table_from_pages_segment(struct sg_table *sgt, struct page **pages,
325 static inline int sg_alloc_table_from_pages(struct sg_table *sgt, in sg_alloc_table_from_pages()
387 void sg_free_table_chained(struct sg_table *table,
389 int sg_alloc_table_chained(struct sg_table *table, int nents,
Ddma-mapping.h113 int dma_map_sgtable(struct device *dev, struct sg_table *sgt,
135 int dma_get_sgtable_attrs(struct device *dev, struct sg_table *sgt,
149 struct sg_table *dma_alloc_noncontiguous(struct device *dev, size_t size,
152 struct sg_table *sgt, enum dma_data_direction dir);
154 struct sg_table *sgt);
157 size_t size, struct sg_table *sgt);
180 static inline int dma_map_sgtable(struct device *dev, struct sg_table *sgt, in dma_map_sgtable()
234 struct sg_table *sgt, void *cpu_addr, dma_addr_t dma_addr, in dma_get_sgtable_attrs()
277 static inline struct sg_table *dma_alloc_noncontiguous(struct device *dev, in dma_alloc_noncontiguous()
284 struct sg_table *sgt, enum dma_data_direction dir) in dma_free_noncontiguous()
[all …]
Ddma-buf.h179 struct sg_table * (*map_dma_buf)(struct dma_buf_attachment *,
190 struct sg_table *,
512 struct sg_table *sgt;
612 struct sg_table *dma_buf_map_attachment(struct dma_buf_attachment *,
614 void dma_buf_unmap_attachment(struct dma_buf_attachment *, struct sg_table *,
/Linux-v5.15/drivers/gpu/drm/i915/
Di915_scatterlist.c16 bool i915_sg_trim(struct sg_table *orig_st) in i915_sg_trim()
18 struct sg_table new_st; in i915_sg_trim()
56 struct sg_table *i915_sg_from_mm_node(const struct drm_mm_node *node, in i915_sg_from_mm_node()
62 struct sg_table *st; in i915_sg_from_mm_node()
123 struct sg_table *i915_sg_from_buddy_resource(struct ttm_resource *res, in i915_sg_from_buddy_resource()
133 struct sg_table *st; in i915_sg_from_buddy_resource()
/Linux-v5.15/drivers/gpu/drm/xen/
Dxen_drm_front_gem.h19 struct sg_table;
28 struct sg_table *sgt);
30 struct sg_table *xen_drm_front_gem_get_sg_table(struct drm_gem_object *gem_obj);
/Linux-v5.15/drivers/gpu/drm/mediatek/
Dmtk_drm_gem.h31 struct sg_table *sg;
42 struct sg_table *mtk_gem_prime_get_sg_table(struct drm_gem_object *obj);
44 struct dma_buf_attachment *attach, struct sg_table *sg);
/Linux-v5.15/drivers/gpu/drm/i915/gt/
Dintel_ggtt_fencing.h18 struct sg_table;
50 struct sg_table *pages);
52 struct sg_table *pages);
/Linux-v5.15/drivers/hwtracing/intel_th/
Dmsu-sink.c18 struct sg_table **sgts;
51 static int msu_sink_alloc_window(void *data, struct sg_table **sgt, size_t size) in msu_sink_alloc_window()
81 static void msu_sink_free_window(void *data, struct sg_table *sgt) in msu_sink_free_window()
96 static int msu_sink_ready(void *data, struct sg_table *sgt, size_t bytes) in msu_sink_ready()
/Linux-v5.15/drivers/gpu/drm/rockchip/
Drockchip_drm_gem.h25 struct sg_table *sgt;
29 struct sg_table *rockchip_gem_prime_get_sg_table(struct drm_gem_object *obj);
33 struct sg_table *sg);
/Linux-v5.15/drivers/gpu/drm/exynos/
Dexynos_drm_gem.h46 struct sg_table *sgt;
105 struct sg_table *exynos_drm_gem_prime_get_sg_table(struct drm_gem_object *obj);
109 struct sg_table *sgt);
/Linux-v5.15/drivers/gpu/drm/omapdrm/
Domap_gem_dmabuf.c18 static struct sg_table *omap_gem_map_dma_buf( in omap_gem_map_dma_buf()
23 struct sg_table *sg; in omap_gem_map_dma_buf()
57 struct sg_table *sg, enum dma_data_direction dir) in omap_gem_unmap_dma_buf()
131 struct sg_table *sgt; in omap_gem_prime_import()
/Linux-v5.15/drivers/gpu/drm/
Ddrm_prime.c613 struct sg_table *drm_gem_map_dma_buf(struct dma_buf_attachment *attach, in drm_gem_map_dma_buf()
617 struct sg_table *sgt; in drm_gem_map_dma_buf()
651 struct sg_table *sgt, in drm_gem_unmap_dma_buf()
806 struct sg_table *drm_prime_pages_to_sg(struct drm_device *dev, in drm_prime_pages_to_sg()
809 struct sg_table *sg; in drm_prime_pages_to_sg()
813 sg = kmalloc(sizeof(struct sg_table), GFP_KERNEL); in drm_prime_pages_to_sg()
842 unsigned long drm_prime_get_contiguous_size(struct sg_table *sgt) in drm_prime_get_contiguous_size()
909 struct sg_table *sgt; in drm_gem_prime_import_dev()
993 int __deprecated drm_prime_sg_to_page_array(struct sg_table *sgt, in drm_prime_sg_to_page_array()
1020 int drm_prime_sg_to_dma_addr_array(struct sg_table *sgt, dma_addr_t *addrs, in drm_prime_sg_to_dma_addr_array()
[all …]

1234567891011