]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
media: pisp_be: add missing wait_prepare/finish ops
authorHans Verkuil <hverkuil-cisco@xs4all.nl>
Mon, 2 Sep 2024 08:31:23 +0000 (10:31 +0200)
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Sat, 12 Oct 2024 13:53:42 +0000 (15:53 +0200)
Without these ops the v4l2-compliance blocking wait test will fail.
These ops are required to ensure that when VIDIOC_DQBUF has to
wait for buffers to arrive, the queue lock is correctly released
and retaken. Otherwise the wait for a buffer would block all other
queue ioctls.

Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
Tested-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
drivers/media/platform/raspberrypi/pisp_be/pisp_be.c

index 65ff2382cffe9e9ba71c5a01b8802e700c726470..7ce3be626c4a8f32fb66d4eaa2ec444d9e4ea60a 100644 (file)
@@ -964,6 +964,8 @@ static const struct vb2_ops pispbe_node_queue_ops = {
        .buf_queue = pispbe_node_buffer_queue,
        .start_streaming = pispbe_node_start_streaming,
        .stop_streaming = pispbe_node_stop_streaming,
+       .wait_prepare = vb2_ops_wait_prepare,
+       .wait_finish = vb2_ops_wait_finish,
 };
 
 static const struct v4l2_file_operations pispbe_fops = {