On Thu, Nov 9, 2023 at 6:46 PM Benjamin Gaignard <benjamin.gaignard@xxxxxxxxxxxxx> 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@xxxxxxxxxxxxx> > >> --- > >> 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