Home
last modified time | relevance | path

Searched refs:imgu (Results 1 – 13 of 13) sorted by relevance

/Linux-v5.10/drivers/staging/media/ipu3/
Dipu3.c56 unsigned int imgu_map_node(struct imgu_device *imgu, unsigned int css_queue) in imgu_map_node() argument
69 static void imgu_dummybufs_cleanup(struct imgu_device *imgu, unsigned int pipe) in imgu_dummybufs_cleanup() argument
72 struct imgu_media_pipe *imgu_pipe = &imgu->imgu_pipe[pipe]; in imgu_dummybufs_cleanup()
75 imgu_dmamap_free(imgu, in imgu_dummybufs_cleanup()
79 static int imgu_dummybufs_preallocate(struct imgu_device *imgu, in imgu_dummybufs_preallocate() argument
84 struct imgu_media_pipe *imgu_pipe = &imgu->imgu_pipe[pipe]; in imgu_dummybufs_preallocate()
96 if (!imgu_dmamap_alloc(imgu, in imgu_dummybufs_preallocate()
98 imgu_dummybufs_cleanup(imgu, pipe); in imgu_dummybufs_preallocate()
106 static int imgu_dummybufs_init(struct imgu_device *imgu, unsigned int pipe) in imgu_dummybufs_init() argument
112 struct imgu_media_pipe *imgu_pipe = &imgu->imgu_pipe[pipe]; in imgu_dummybufs_init()
[all …]
Dipu3-dmamap.c93 void *imgu_dmamap_alloc(struct imgu_device *imgu, struct imgu_css_map *map, in imgu_dmamap_alloc() argument
96 unsigned long shift = iova_shift(&imgu->iova_domain); in imgu_dmamap_alloc()
97 struct device *dev = &imgu->pci_dev->dev; in imgu_dmamap_alloc()
107 iova = alloc_iova(&imgu->iova_domain, size >> shift, in imgu_dmamap_alloc()
108 imgu->mmu->aperture_end >> shift, 0); in imgu_dmamap_alloc()
117 iovaddr = iova_dma_addr(&imgu->iova_domain, iova); in imgu_dmamap_alloc()
119 rval = imgu_mmu_map(imgu->mmu, iovaddr, in imgu_dmamap_alloc()
133 map->daddr = iova_dma_addr(&imgu->iova_domain, iova); in imgu_dmamap_alloc()
142 imgu_mmu_unmap(imgu->mmu, iova_dma_addr(&imgu->iova_domain, iova), in imgu_dmamap_alloc()
146 __free_iova(&imgu->iova_domain, iova); in imgu_dmamap_alloc()
[all …]
Dipu3-v4l2.c23 struct imgu_device *imgu = v4l2_get_subdevdata(sd); in imgu_subdev_open() local
24 struct imgu_media_pipe *imgu_pipe = &imgu->imgu_pipe[imgu_sd->pipe]; in imgu_subdev_open()
58 struct imgu_device *imgu = v4l2_get_subdevdata(sd); in imgu_subdev_s_stream() local
63 struct device *dev = &imgu->pci_dev->dev; in imgu_subdev_s_stream()
66 struct imgu_css_pipe *css_pipe = &imgu->css.pipes[pipe]; in imgu_subdev_s_stream()
67 struct imgu_media_pipe *imgu_pipe = &imgu->imgu_pipe[pipe]; in imgu_subdev_s_stream()
86 node = imgu_map_node(imgu, i); in imgu_subdev_s_stream()
110 r = imgu_css_fmt_set(&imgu->css, fmts, rects, pipe); in imgu_subdev_s_stream()
126 struct imgu_device *imgu = v4l2_get_subdevdata(sd); in imgu_subdev_get_fmt() local
135 imgu_pipe = &imgu->imgu_pipe[pipe]; in imgu_subdev_get_fmt()
[all …]
Dipu3-css-pool.c10 int imgu_css_dma_buffer_resize(struct imgu_device *imgu, in imgu_css_dma_buffer_resize() argument
14 dev_warn(&imgu->pci_dev->dev, "dma buf resized from %zu to %zu", in imgu_css_dma_buffer_resize()
17 imgu_dmamap_free(imgu, map); in imgu_css_dma_buffer_resize()
18 if (!imgu_dmamap_alloc(imgu, map, size)) in imgu_css_dma_buffer_resize()
25 void imgu_css_pool_cleanup(struct imgu_device *imgu, struct imgu_css_pool *pool) in imgu_css_pool_cleanup() argument
30 imgu_dmamap_free(imgu, &pool->entry[i].param); in imgu_css_pool_cleanup()
33 int imgu_css_pool_init(struct imgu_device *imgu, struct imgu_css_pool *pool, in imgu_css_pool_init() argument
45 if (!imgu_dmamap_alloc(imgu, &pool->entry[i].param, size)) in imgu_css_pool_init()
54 imgu_css_pool_cleanup(imgu, pool); in imgu_css_pool_init()
Dipu3-dmamap.h11 void *imgu_dmamap_alloc(struct imgu_device *imgu, struct imgu_css_map *map,
13 void imgu_dmamap_free(struct imgu_device *imgu, struct imgu_css_map *map);
15 int imgu_dmamap_map_sg(struct imgu_device *imgu, struct scatterlist *sglist,
17 void imgu_dmamap_unmap(struct imgu_device *imgu, struct imgu_css_map *map);
19 int imgu_dmamap_init(struct imgu_device *imgu);
20 void imgu_dmamap_exit(struct imgu_device *imgu);
Dipu3-css-pool.h42 int imgu_css_dma_buffer_resize(struct imgu_device *imgu,
44 void imgu_css_pool_cleanup(struct imgu_device *imgu,
46 int imgu_css_pool_init(struct imgu_device *imgu, struct imgu_css_pool *pool,
Dipu3.h162 unsigned int imgu_map_node(struct imgu_device *imgu, unsigned int css_queue);
163 int imgu_queue_buffers(struct imgu_device *imgu, bool initial,
170 int imgu_s_stream(struct imgu_device *imgu, int enable);
DMakefile6 ipu3-imgu-objs += \
12 obj-$(CONFIG_VIDEO_IPU3_IMGU) += ipu3-imgu.o
Dipu3-css.c664 struct imgu_device *imgu = dev_get_drvdata(css->dev); in imgu_css_pipeline_cleanup() local
668 imgu_css_pool_cleanup(imgu, &css_pipe->pool.parameter_set_info); in imgu_css_pipeline_cleanup()
669 imgu_css_pool_cleanup(imgu, &css_pipe->pool.acc); in imgu_css_pipeline_cleanup()
670 imgu_css_pool_cleanup(imgu, &css_pipe->pool.gdc); in imgu_css_pipeline_cleanup()
671 imgu_css_pool_cleanup(imgu, &css_pipe->pool.obgrid); in imgu_css_pipeline_cleanup()
674 imgu_css_pool_cleanup(imgu, &css_pipe->pool.binary_params_p[i]); in imgu_css_pipeline_cleanup()
730 struct imgu_device *imgu = dev_get_drvdata(css->dev); in imgu_css_pipeline_init() local
1039 if (imgu_css_pool_init(imgu, &css_pipe->pool.parameter_set_info, in imgu_css_pipeline_init()
1041 imgu_css_pool_init(imgu, &css_pipe->pool.acc, in imgu_css_pipeline_init()
1043 imgu_css_pool_init(imgu, &css_pipe->pool.gdc, in imgu_css_pipeline_init()
[all …]
DKconfig3 tristate "Intel ipu3-imgu driver"
16 camera. The module will be called ipu3-imgu.
Dipu3-css-fw.c96 struct imgu_device *imgu = dev_get_drvdata(css->dev); in imgu_css_fw_cleanup() local
102 imgu_dmamap_free(imgu, &css->binary[i]); in imgu_css_fw_cleanup()
115 struct imgu_device *imgu = dev_get_drvdata(css->dev); in imgu_css_fw_init() local
247 if (!imgu_dmamap_alloc(imgu, &css->binary[i], size)) { in imgu_css_fw_init()
/Linux-v5.10/Documentation/userspace-api/media/v4l/
Dpixfmt-meta-intel-ipu3.rst16 an input Bayer frame. Those statistics are obtained from the "ipu3-imgu [01] 3a
46 The pipeline parameters are passed to the "ipu3-imgu [01] parameters" metadata
/Linux-v5.10/Documentation/admin-guide/media/
Dipu3.rst182 With ImgU, once the input video node ("ipu3-imgu 0/1":0, in
270 Let us take "ipu3-imgu 0" subdev as an example.
275 media-ctl -d $MDEV -l "ipu3-imgu 0 input":0 -> "ipu3-imgu 0":0[1]
276 media-ctl -d $MDEV -l "ipu3-imgu 0":2 -> "ipu3-imgu 0 output":0[1]
277 media-ctl -d $MDEV -l "ipu3-imgu 0":3 -> "ipu3-imgu 0 viewfinder":0[1]
278 media-ctl -d $MDEV -l "ipu3-imgu 0":4 -> "ipu3-imgu 0 3a stat":0[1]