[PATCH v14 56/56] media: test-drivers: Use helper for DELETE_BUFS ioctl

Tomasz Figa tfiga at chromium.org
Thu Nov 9 01:48:15 PST 2023


On Thu, Nov 9, 2023 at 6:46 PM Benjamin Gaignard
<benjamin.gaignard at collabora.com> wrote:
>
>
> Le 09/11/2023 à 10:43, Tomasz Figa a écrit :
> > On Tue, Oct 31, 2023 at 05:31:04PM +0100, Benjamin Gaignard wrote:
> >> Allow test drivers to use DELETE_BUFS by adding vb2_ioctl_delete_bufs() helper.
> >>
> >> Signed-off-by: Benjamin Gaignard <benjamin.gaignard at collabora.com>
> >> ---
> >>   drivers/media/test-drivers/vicodec/vicodec-core.c |  2 ++
> >>   drivers/media/test-drivers/vimc/vimc-capture.c    |  2 ++
> >>   drivers/media/test-drivers/visl/visl-video.c      |  2 ++
> >>   drivers/media/test-drivers/vivid/vivid-core.c     | 13 ++++++++++---
> >>   4 files changed, 16 insertions(+), 3 deletions(-)
> >>
> >> diff --git a/drivers/media/test-drivers/vicodec/vicodec-core.c b/drivers/media/test-drivers/vicodec/vicodec-core.c
> >> index 69cbe2c094e1..f14a8fd506d0 100644
> >> --- a/drivers/media/test-drivers/vicodec/vicodec-core.c
> >> +++ b/drivers/media/test-drivers/vicodec/vicodec-core.c
> >> @@ -1339,6 +1339,7 @@ static const struct v4l2_ioctl_ops vicodec_ioctl_ops = {
> >>      .vidioc_prepare_buf     = v4l2_m2m_ioctl_prepare_buf,
> >>      .vidioc_create_bufs     = v4l2_m2m_ioctl_create_bufs,
> >>      .vidioc_expbuf          = v4l2_m2m_ioctl_expbuf,
> >> +    .vidioc_delete_bufs     = v4l2_m2m_ioctl_delete_bufs,
> >>
> >>      .vidioc_streamon        = v4l2_m2m_ioctl_streamon,
> >>      .vidioc_streamoff       = v4l2_m2m_ioctl_streamoff,
> >> @@ -1725,6 +1726,7 @@ static int queue_init(void *priv, struct vb2_queue *src_vq,
> >>      dst_vq->mem_ops = &vb2_vmalloc_memops;
> >>      dst_vq->timestamp_flags = V4L2_BUF_FLAG_TIMESTAMP_COPY;
> >>      dst_vq->lock = src_vq->lock;
> >> +    dst_vq->supports_delete_bufs = true;
> > Since we have to explicitly provide the vidioc_delete_bufs callback anyway,
> > is there any value in having a separate supports_delete_bufs flag? Or we
> > envision that some drivers would support deleting buffers only for some
> > queues?
>
> That exactly the case for Hantro driver, it can support deleting buffers on
> capture queue but not on output queue.

Fair enough.

Best regards,
Tomasz



More information about the linux-arm-kernel mailing list