media: platform: renesas-ceu: drop buf NULL check
authorHans Verkuil <hverkuil-cisco@xs4all.nl>
Wed, 24 May 2023 12:11:46 +0000 (13:11 +0100)
committerMauro Carvalho Chehab <mchehab@kernel.org>
Fri, 9 Jun 2023 15:08:09 +0000 (16:08 +0100)
Since start_streaming is only called if there are at least two
buffers queued, the ceudev->capture list will never be empty, so
the check whether there are no buffers can be dropped.

Note that the '!buf' check was wrong in any case, if we wanted to
check for an empty list it should have used list_empty().

This fixes this smatch warning:

drivers/media/platform/renesas/renesas-ceu.c:705 ceu_start_streaming() warn: can 'buf' even be NULL?

Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Reviewed-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
drivers/media/platform/renesas/renesas-ceu.c

index 56b9c59cfda8246aa9b4c4f23e104ac5765cf5d5..5c9e27f8c94b744ddb23facef8ba3fb0d15ee555 100644 (file)
@@ -702,12 +702,6 @@ static int ceu_start_streaming(struct vb2_queue *vq, unsigned int count)
        /* Grab the first available buffer and trigger the first capture. */
        buf = list_first_entry(&ceudev->capture, struct ceu_buffer,
                               queue);
-       if (!buf) {
-               spin_unlock_irqrestore(&ceudev->lock, irqflags);
-               dev_dbg(ceudev->dev,
-                       "No buffer available for capture.\n");
-               goto error_stop_sensor;
-       }
 
        list_del(&buf->queue);
        ceudev->active = &buf->vb;
@@ -722,9 +716,6 @@ static int ceu_start_streaming(struct vb2_queue *vq, unsigned int count)
 
        return 0;
 
-error_stop_sensor:
-       v4l2_subdev_call(v4l2_sd, video, s_stream, 0);
-
 error_return_bufs:
        spin_lock_irqsave(&ceudev->lock, irqflags);
        list_for_each_entry(buf, &ceudev->capture, queue)