Commit dce57314 authored by Hans Verkuil's avatar Hans Verkuil Committed by Mauro Carvalho Chehab

[media] media/platform: convert drivers to use the new vb2_queue dev field

Stop using alloc_ctx and just fill in the device pointer.
Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
Acked-by: default avatarFabien Dessenne <fabien.dessenne@st.com>
Acked-by: default avatarBenoit Parrot <bparrot@ti.com>
Reviewed-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
parent 53ddcc68
...@@ -439,7 +439,7 @@ static void bdisp_ctrls_delete(struct bdisp_ctx *ctx) ...@@ -439,7 +439,7 @@ static void bdisp_ctrls_delete(struct bdisp_ctx *ctx)
static int bdisp_queue_setup(struct vb2_queue *vq, static int bdisp_queue_setup(struct vb2_queue *vq,
unsigned int *nb_buf, unsigned int *nb_planes, unsigned int *nb_buf, unsigned int *nb_planes,
unsigned int sizes[], void *allocators[]) unsigned int sizes[], void *alloc_ctxs[])
{ {
struct bdisp_ctx *ctx = vb2_get_drv_priv(vq); struct bdisp_ctx *ctx = vb2_get_drv_priv(vq);
struct bdisp_frame *frame = ctx_get_frame(ctx, vq->type); struct bdisp_frame *frame = ctx_get_frame(ctx, vq->type);
...@@ -453,7 +453,6 @@ static int bdisp_queue_setup(struct vb2_queue *vq, ...@@ -453,7 +453,6 @@ static int bdisp_queue_setup(struct vb2_queue *vq,
dev_err(ctx->bdisp_dev->dev, "Invalid format\n"); dev_err(ctx->bdisp_dev->dev, "Invalid format\n");
return -EINVAL; return -EINVAL;
} }
allocators[0] = ctx->bdisp_dev->alloc_ctx;
if (*nb_planes) if (*nb_planes)
return sizes[0] < frame->sizeimage ? -EINVAL : 0; return sizes[0] < frame->sizeimage ? -EINVAL : 0;
...@@ -553,6 +552,7 @@ static int queue_init(void *priv, ...@@ -553,6 +552,7 @@ static int queue_init(void *priv,
src_vq->buf_struct_size = sizeof(struct v4l2_m2m_buffer); src_vq->buf_struct_size = sizeof(struct v4l2_m2m_buffer);
src_vq->timestamp_flags = V4L2_BUF_FLAG_TIMESTAMP_COPY; src_vq->timestamp_flags = V4L2_BUF_FLAG_TIMESTAMP_COPY;
src_vq->lock = &ctx->bdisp_dev->lock; src_vq->lock = &ctx->bdisp_dev->lock;
src_vq->dev = ctx->bdisp_dev->v4l2_dev.dev;
ret = vb2_queue_init(src_vq); ret = vb2_queue_init(src_vq);
if (ret) if (ret)
...@@ -567,6 +567,7 @@ static int queue_init(void *priv, ...@@ -567,6 +567,7 @@ static int queue_init(void *priv,
dst_vq->buf_struct_size = sizeof(struct v4l2_m2m_buffer); dst_vq->buf_struct_size = sizeof(struct v4l2_m2m_buffer);
dst_vq->timestamp_flags = V4L2_BUF_FLAG_TIMESTAMP_COPY; dst_vq->timestamp_flags = V4L2_BUF_FLAG_TIMESTAMP_COPY;
dst_vq->lock = &ctx->bdisp_dev->lock; dst_vq->lock = &ctx->bdisp_dev->lock;
dst_vq->dev = ctx->bdisp_dev->v4l2_dev.dev;
return vb2_queue_init(dst_vq); return vb2_queue_init(dst_vq);
} }
...@@ -1269,8 +1270,6 @@ static int bdisp_remove(struct platform_device *pdev) ...@@ -1269,8 +1270,6 @@ static int bdisp_remove(struct platform_device *pdev)
bdisp_hw_free_filters(bdisp->dev); bdisp_hw_free_filters(bdisp->dev);
vb2_dma_contig_cleanup_ctx(bdisp->alloc_ctx);
pm_runtime_disable(&pdev->dev); pm_runtime_disable(&pdev->dev);
bdisp_debugfs_remove(bdisp); bdisp_debugfs_remove(bdisp);
...@@ -1371,18 +1370,11 @@ static int bdisp_probe(struct platform_device *pdev) ...@@ -1371,18 +1370,11 @@ static int bdisp_probe(struct platform_device *pdev)
goto err_dbg; goto err_dbg;
} }
/* Continuous memory allocator */
bdisp->alloc_ctx = vb2_dma_contig_init_ctx(dev);
if (IS_ERR(bdisp->alloc_ctx)) {
ret = PTR_ERR(bdisp->alloc_ctx);
goto err_pm;
}
/* Filters */ /* Filters */
if (bdisp_hw_alloc_filters(bdisp->dev)) { if (bdisp_hw_alloc_filters(bdisp->dev)) {
dev_err(bdisp->dev, "no memory for filters\n"); dev_err(bdisp->dev, "no memory for filters\n");
ret = -ENOMEM; ret = -ENOMEM;
goto err_vb2_dma; goto err_pm;
} }
/* Register */ /* Register */
...@@ -1401,8 +1393,6 @@ static int bdisp_probe(struct platform_device *pdev) ...@@ -1401,8 +1393,6 @@ static int bdisp_probe(struct platform_device *pdev)
err_filter: err_filter:
bdisp_hw_free_filters(bdisp->dev); bdisp_hw_free_filters(bdisp->dev);
err_vb2_dma:
vb2_dma_contig_cleanup_ctx(bdisp->alloc_ctx);
err_pm: err_pm:
pm_runtime_put(dev); pm_runtime_put(dev);
err_dbg: err_dbg:
......
...@@ -175,7 +175,6 @@ struct bdisp_dbg { ...@@ -175,7 +175,6 @@ struct bdisp_dbg {
* @id: device index * @id: device index
* @m2m: memory-to-memory V4L2 device information * @m2m: memory-to-memory V4L2 device information
* @state: flags used to synchronize m2m and capture mode operation * @state: flags used to synchronize m2m and capture mode operation
* @alloc_ctx: videobuf2 memory allocator context
* @clock: IP clock * @clock: IP clock
* @regs: registers * @regs: registers
* @irq_queue: interrupt handler waitqueue * @irq_queue: interrupt handler waitqueue
...@@ -193,7 +192,6 @@ struct bdisp_dev { ...@@ -193,7 +192,6 @@ struct bdisp_dev {
u16 id; u16 id;
struct bdisp_m2m_device m2m; struct bdisp_m2m_device m2m;
unsigned long state; unsigned long state;
struct vb2_alloc_ctx *alloc_ctx;
struct clk *clock; struct clk *clock;
void __iomem *regs; void __iomem *regs;
wait_queue_head_t irq_queue; wait_queue_head_t irq_queue;
......
...@@ -287,7 +287,6 @@ struct cal_ctx { ...@@ -287,7 +287,6 @@ struct cal_ctx {
/* Several counters */ /* Several counters */
unsigned long jiffies; unsigned long jiffies;
struct vb2_alloc_ctx *alloc_ctx;
struct cal_dmaqueue vidq; struct cal_dmaqueue vidq;
/* Input Number */ /* Input Number */
...@@ -1233,7 +1232,6 @@ static int cal_queue_setup(struct vb2_queue *vq, ...@@ -1233,7 +1232,6 @@ static int cal_queue_setup(struct vb2_queue *vq,
if (vq->num_buffers + *nbuffers < 3) if (vq->num_buffers + *nbuffers < 3)
*nbuffers = 3 - vq->num_buffers; *nbuffers = 3 - vq->num_buffers;
alloc_ctxs[0] = ctx->alloc_ctx;
if (*nplanes) { if (*nplanes) {
if (sizes[0] < size) if (sizes[0] < size)
...@@ -1551,6 +1549,7 @@ static int cal_complete_ctx(struct cal_ctx *ctx) ...@@ -1551,6 +1549,7 @@ static int cal_complete_ctx(struct cal_ctx *ctx)
q->timestamp_flags = V4L2_BUF_FLAG_TIMESTAMP_MONOTONIC; q->timestamp_flags = V4L2_BUF_FLAG_TIMESTAMP_MONOTONIC;
q->lock = &ctx->mutex; q->lock = &ctx->mutex;
q->min_buffers_needed = 3; q->min_buffers_needed = 3;
q->dev = ctx->v4l2_dev.dev;
ret = vb2_queue_init(q); ret = vb2_queue_init(q);
if (ret) if (ret)
...@@ -1578,18 +1577,7 @@ static int cal_complete_ctx(struct cal_ctx *ctx) ...@@ -1578,18 +1577,7 @@ static int cal_complete_ctx(struct cal_ctx *ctx)
v4l2_info(&ctx->v4l2_dev, "V4L2 device registered as %s\n", v4l2_info(&ctx->v4l2_dev, "V4L2 device registered as %s\n",
video_device_node_name(vfd)); video_device_node_name(vfd));
ctx->alloc_ctx = vb2_dma_contig_init_ctx(vfd->v4l2_dev->dev);
if (IS_ERR(ctx->alloc_ctx)) {
ctx_err(ctx, "Failed to alloc vb2 context\n");
ret = PTR_ERR(ctx->alloc_ctx);
goto vdev_unreg;
}
return 0; return 0;
vdev_unreg:
video_unregister_device(vfd);
return ret;
} }
static struct device_node * static struct device_node *
...@@ -1914,7 +1902,6 @@ static int cal_remove(struct platform_device *pdev) ...@@ -1914,7 +1902,6 @@ static int cal_remove(struct platform_device *pdev)
video_device_node_name(&ctx->vdev)); video_device_node_name(&ctx->vdev));
camerarx_phy_disable(ctx); camerarx_phy_disable(ctx);
v4l2_async_notifier_unregister(&ctx->notifier); v4l2_async_notifier_unregister(&ctx->notifier);
vb2_dma_contig_cleanup_ctx(ctx->alloc_ctx);
v4l2_ctrl_handler_free(&ctx->ctrl_handler); v4l2_ctrl_handler_free(&ctx->ctrl_handler);
v4l2_device_unregister(&ctx->v4l2_dev); v4l2_device_unregister(&ctx->v4l2_dev);
video_unregister_device(&ctx->vdev); video_unregister_device(&ctx->vdev);
......
...@@ -362,7 +362,6 @@ struct vpe_dev { ...@@ -362,7 +362,6 @@ struct vpe_dev {
void __iomem *base; void __iomem *base;
struct resource *res; struct resource *res;
struct vb2_alloc_ctx *alloc_ctx;
struct vpdma_data *vpdma; /* vpdma data handle */ struct vpdma_data *vpdma; /* vpdma data handle */
struct sc_data *sc; /* scaler data handle */ struct sc_data *sc; /* scaler data handle */
struct csc_data *csc; /* csc data handle */ struct csc_data *csc; /* csc data handle */
...@@ -1807,10 +1806,8 @@ static int vpe_queue_setup(struct vb2_queue *vq, ...@@ -1807,10 +1806,8 @@ static int vpe_queue_setup(struct vb2_queue *vq,
*nplanes = q_data->fmt->coplanar ? 2 : 1; *nplanes = q_data->fmt->coplanar ? 2 : 1;
for (i = 0; i < *nplanes; i++) { for (i = 0; i < *nplanes; i++)
sizes[i] = q_data->sizeimage[i]; sizes[i] = q_data->sizeimage[i];
alloc_ctxs[i] = ctx->dev->alloc_ctx;
}
vpe_dbg(ctx->dev, "get %d buffer(s) of size %d", *nbuffers, vpe_dbg(ctx->dev, "get %d buffer(s) of size %d", *nbuffers,
sizes[VPE_LUMA]); sizes[VPE_LUMA]);
...@@ -1907,6 +1904,7 @@ static int queue_init(void *priv, struct vb2_queue *src_vq, ...@@ -1907,6 +1904,7 @@ static int queue_init(void *priv, struct vb2_queue *src_vq,
src_vq->mem_ops = &vb2_dma_contig_memops; src_vq->mem_ops = &vb2_dma_contig_memops;
src_vq->timestamp_flags = V4L2_BUF_FLAG_TIMESTAMP_COPY; src_vq->timestamp_flags = V4L2_BUF_FLAG_TIMESTAMP_COPY;
src_vq->lock = &dev->dev_mutex; src_vq->lock = &dev->dev_mutex;
src_vq->dev = dev->v4l2_dev.dev;
ret = vb2_queue_init(src_vq); ret = vb2_queue_init(src_vq);
if (ret) if (ret)
...@@ -1921,6 +1919,7 @@ static int queue_init(void *priv, struct vb2_queue *src_vq, ...@@ -1921,6 +1919,7 @@ static int queue_init(void *priv, struct vb2_queue *src_vq,
dst_vq->mem_ops = &vb2_dma_contig_memops; dst_vq->mem_ops = &vb2_dma_contig_memops;
dst_vq->timestamp_flags = V4L2_BUF_FLAG_TIMESTAMP_COPY; dst_vq->timestamp_flags = V4L2_BUF_FLAG_TIMESTAMP_COPY;
dst_vq->lock = &dev->dev_mutex; dst_vq->lock = &dev->dev_mutex;
dst_vq->dev = dev->v4l2_dev.dev;
return vb2_queue_init(dst_vq); return vb2_queue_init(dst_vq);
} }
...@@ -2161,7 +2160,6 @@ static void vpe_fw_cb(struct platform_device *pdev) ...@@ -2161,7 +2160,6 @@ static void vpe_fw_cb(struct platform_device *pdev)
vpe_runtime_put(pdev); vpe_runtime_put(pdev);
pm_runtime_disable(&pdev->dev); pm_runtime_disable(&pdev->dev);
v4l2_m2m_release(dev->m2m_dev); v4l2_m2m_release(dev->m2m_dev);
vb2_dma_contig_cleanup_ctx(dev->alloc_ctx);
v4l2_device_unregister(&dev->v4l2_dev); v4l2_device_unregister(&dev->v4l2_dev);
return; return;
...@@ -2213,18 +2211,11 @@ static int vpe_probe(struct platform_device *pdev) ...@@ -2213,18 +2211,11 @@ static int vpe_probe(struct platform_device *pdev)
platform_set_drvdata(pdev, dev); platform_set_drvdata(pdev, dev);
dev->alloc_ctx = vb2_dma_contig_init_ctx(&pdev->dev);
if (IS_ERR(dev->alloc_ctx)) {
vpe_err(dev, "Failed to alloc vb2 context\n");
ret = PTR_ERR(dev->alloc_ctx);
goto v4l2_dev_unreg;
}
dev->m2m_dev = v4l2_m2m_init(&m2m_ops); dev->m2m_dev = v4l2_m2m_init(&m2m_ops);
if (IS_ERR(dev->m2m_dev)) { if (IS_ERR(dev->m2m_dev)) {
vpe_err(dev, "Failed to init mem2mem device\n"); vpe_err(dev, "Failed to init mem2mem device\n");
ret = PTR_ERR(dev->m2m_dev); ret = PTR_ERR(dev->m2m_dev);
goto rel_ctx; goto v4l2_dev_unreg;
} }
pm_runtime_enable(&pdev->dev); pm_runtime_enable(&pdev->dev);
...@@ -2269,8 +2260,6 @@ static int vpe_probe(struct platform_device *pdev) ...@@ -2269,8 +2260,6 @@ static int vpe_probe(struct platform_device *pdev)
rel_m2m: rel_m2m:
pm_runtime_disable(&pdev->dev); pm_runtime_disable(&pdev->dev);
v4l2_m2m_release(dev->m2m_dev); v4l2_m2m_release(dev->m2m_dev);
rel_ctx:
vb2_dma_contig_cleanup_ctx(dev->alloc_ctx);
v4l2_dev_unreg: v4l2_dev_unreg:
v4l2_device_unregister(&dev->v4l2_dev); v4l2_device_unregister(&dev->v4l2_dev);
...@@ -2286,7 +2275,6 @@ static int vpe_remove(struct platform_device *pdev) ...@@ -2286,7 +2275,6 @@ static int vpe_remove(struct platform_device *pdev)
v4l2_m2m_release(dev->m2m_dev); v4l2_m2m_release(dev->m2m_dev);
video_unregister_device(&dev->vfd); video_unregister_device(&dev->vfd);
v4l2_device_unregister(&dev->v4l2_dev); v4l2_device_unregister(&dev->v4l2_dev);
vb2_dma_contig_cleanup_ctx(dev->alloc_ctx);
vpe_set_clock_enable(dev, 0); vpe_set_clock_enable(dev, 0);
vpe_runtime_put(pdev); vpe_runtime_put(pdev);
......
...@@ -533,17 +533,14 @@ vsp1_video_queue_setup(struct vb2_queue *vq, ...@@ -533,17 +533,14 @@ vsp1_video_queue_setup(struct vb2_queue *vq,
for (i = 0; i < *nplanes; i++) { for (i = 0; i < *nplanes; i++) {
if (sizes[i] < format->plane_fmt[i].sizeimage) if (sizes[i] < format->plane_fmt[i].sizeimage)
return -EINVAL; return -EINVAL;
alloc_ctxs[i] = video->alloc_ctx;
} }
return 0; return 0;
} }
*nplanes = format->num_planes; *nplanes = format->num_planes;
for (i = 0; i < format->num_planes; ++i) { for (i = 0; i < format->num_planes; ++i)
sizes[i] = format->plane_fmt[i].sizeimage; sizes[i] = format->plane_fmt[i].sizeimage;
alloc_ctxs[i] = video->alloc_ctx;
}
return 0; return 0;
} }
...@@ -983,12 +980,6 @@ struct vsp1_video *vsp1_video_create(struct vsp1_device *vsp1, ...@@ -983,12 +980,6 @@ struct vsp1_video *vsp1_video_create(struct vsp1_device *vsp1,
video_set_drvdata(&video->video, video); video_set_drvdata(&video->video, video);
/* ... and the buffers queue... */ /* ... and the buffers queue... */
video->alloc_ctx = vb2_dma_contig_init_ctx(video->vsp1->dev);
if (IS_ERR(video->alloc_ctx)) {
ret = PTR_ERR(video->alloc_ctx);
goto error;
}
video->queue.type = video->type; video->queue.type = video->type;
video->queue.io_modes = VB2_MMAP | VB2_USERPTR | VB2_DMABUF; video->queue.io_modes = VB2_MMAP | VB2_USERPTR | VB2_DMABUF;
video->queue.lock = &video->lock; video->queue.lock = &video->lock;
...@@ -997,6 +988,7 @@ struct vsp1_video *vsp1_video_create(struct vsp1_device *vsp1, ...@@ -997,6 +988,7 @@ struct vsp1_video *vsp1_video_create(struct vsp1_device *vsp1,
video->queue.ops = &vsp1_video_queue_qops; video->queue.ops = &vsp1_video_queue_qops;
video->queue.mem_ops = &vb2_dma_contig_memops; video->queue.mem_ops = &vb2_dma_contig_memops;
video->queue.timestamp_flags = V4L2_BUF_FLAG_TIMESTAMP_COPY; video->queue.timestamp_flags = V4L2_BUF_FLAG_TIMESTAMP_COPY;
video->queue.dev = video->vsp1->dev;
ret = vb2_queue_init(&video->queue); ret = vb2_queue_init(&video->queue);
if (ret < 0) { if (ret < 0) {
dev_err(video->vsp1->dev, "failed to initialize vb2 queue\n"); dev_err(video->vsp1->dev, "failed to initialize vb2 queue\n");
...@@ -1014,7 +1006,6 @@ struct vsp1_video *vsp1_video_create(struct vsp1_device *vsp1, ...@@ -1014,7 +1006,6 @@ struct vsp1_video *vsp1_video_create(struct vsp1_device *vsp1,
return video; return video;
error: error:
vb2_dma_contig_cleanup_ctx(video->alloc_ctx);
vsp1_video_cleanup(video); vsp1_video_cleanup(video);
return ERR_PTR(ret); return ERR_PTR(ret);
} }
...@@ -1024,6 +1015,5 @@ void vsp1_video_cleanup(struct vsp1_video *video) ...@@ -1024,6 +1015,5 @@ void vsp1_video_cleanup(struct vsp1_video *video)
if (video_is_registered(&video->video)) if (video_is_registered(&video->video))
video_unregister_device(&video->video); video_unregister_device(&video->video);
vb2_dma_contig_cleanup_ctx(video->alloc_ctx);
media_entity_cleanup(&video->video.entity); media_entity_cleanup(&video->video.entity);
} }
...@@ -46,7 +46,6 @@ struct vsp1_video { ...@@ -46,7 +46,6 @@ struct vsp1_video {
unsigned int pipe_index; unsigned int pipe_index;
struct vb2_queue queue; struct vb2_queue queue;
void *alloc_ctx;
spinlock_t irqlock; spinlock_t irqlock;
struct list_head irqqueue; struct list_head irqqueue;
unsigned int sequence; unsigned int sequence;
......
...@@ -322,7 +322,6 @@ xvip_dma_queue_setup(struct vb2_queue *vq, ...@@ -322,7 +322,6 @@ xvip_dma_queue_setup(struct vb2_queue *vq,
{ {
struct xvip_dma *dma = vb2_get_drv_priv(vq); struct xvip_dma *dma = vb2_get_drv_priv(vq);
alloc_ctxs[0] = dma->alloc_ctx;
/* Make sure the image size is large enough. */ /* Make sure the image size is large enough. */
if (*nplanes) if (*nplanes)
return sizes[0] < dma->format.sizeimage ? -EINVAL : 0; return sizes[0] < dma->format.sizeimage ? -EINVAL : 0;
...@@ -706,12 +705,6 @@ int xvip_dma_init(struct xvip_composite_device *xdev, struct xvip_dma *dma, ...@@ -706,12 +705,6 @@ int xvip_dma_init(struct xvip_composite_device *xdev, struct xvip_dma *dma,
video_set_drvdata(&dma->video, dma); video_set_drvdata(&dma->video, dma);
/* ... and the buffers queue... */ /* ... and the buffers queue... */
dma->alloc_ctx = vb2_dma_contig_init_ctx(dma->xdev->dev);
if (IS_ERR(dma->alloc_ctx)) {
ret = PTR_ERR(dma->alloc_ctx);
goto error;
}
/* Don't enable VB2_READ and VB2_WRITE, as using the read() and write() /* Don't enable VB2_READ and VB2_WRITE, as using the read() and write()
* V4L2 APIs would be inefficient. Testing on the command line with a * V4L2 APIs would be inefficient. Testing on the command line with a
* 'cat /dev/video?' thus won't be possible, but given that the driver * 'cat /dev/video?' thus won't be possible, but given that the driver
...@@ -728,6 +721,7 @@ int xvip_dma_init(struct xvip_composite_device *xdev, struct xvip_dma *dma, ...@@ -728,6 +721,7 @@ int xvip_dma_init(struct xvip_composite_device *xdev, struct xvip_dma *dma,
dma->queue.mem_ops = &vb2_dma_contig_memops; dma->queue.mem_ops = &vb2_dma_contig_memops;
dma->queue.timestamp_flags = V4L2_BUF_FLAG_TIMESTAMP_MONOTONIC dma->queue.timestamp_flags = V4L2_BUF_FLAG_TIMESTAMP_MONOTONIC
| V4L2_BUF_FLAG_TSTAMP_SRC_EOF; | V4L2_BUF_FLAG_TSTAMP_SRC_EOF;
dma->queue.dev = dma->xdev->dev;
ret = vb2_queue_init(&dma->queue); ret = vb2_queue_init(&dma->queue);
if (ret < 0) { if (ret < 0) {
dev_err(dma->xdev->dev, "failed to initialize VB2 queue\n"); dev_err(dma->xdev->dev, "failed to initialize VB2 queue\n");
...@@ -766,9 +760,6 @@ void xvip_dma_cleanup(struct xvip_dma *dma) ...@@ -766,9 +760,6 @@ void xvip_dma_cleanup(struct xvip_dma *dma)
if (dma->dma) if (dma->dma)
dma_release_channel(dma->dma); dma_release_channel(dma->dma);
if (!IS_ERR_OR_NULL(dma->alloc_ctx))
vb2_dma_contig_cleanup_ctx(dma->alloc_ctx);
media_entity_cleanup(&dma->video.entity); media_entity_cleanup(&dma->video.entity);
mutex_destroy(&dma->lock); mutex_destroy(&dma->lock);
......
...@@ -65,7 +65,6 @@ static inline struct xvip_pipeline *to_xvip_pipeline(struct media_entity *e) ...@@ -65,7 +65,6 @@ static inline struct xvip_pipeline *to_xvip_pipeline(struct media_entity *e)
* @format: active V4L2 pixel format * @format: active V4L2 pixel format
* @fmtinfo: format information corresponding to the active @format * @fmtinfo: format information corresponding to the active @format
* @queue: vb2 buffers queue * @queue: vb2 buffers queue
* @alloc_ctx: allocation context for the vb2 @queue
* @sequence: V4L2 buffers sequence number * @sequence: V4L2 buffers sequence number
* @queued_bufs: list of queued buffers * @queued_bufs: list of queued buffers
* @queued_lock: protects the buf_queued list * @queued_lock: protects the buf_queued list
...@@ -88,7 +87,6 @@ struct xvip_dma { ...@@ -88,7 +87,6 @@ struct xvip_dma {
const struct xvip_video_format *fmtinfo; const struct xvip_video_format *fmtinfo;
struct vb2_queue queue; struct vb2_queue queue;
void *alloc_ctx;
unsigned int sequence; unsigned int sequence;
struct list_head queued_bufs; struct list_head queued_bufs;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment