Re: [PATCH v2 20/36] media: atmel: Fix misuse of min_buffers_needed field

From: Hans Verkuil
Date: Mon Dec 04 2023 - 09:52:40 EST


On 04/12/2023 14:23, Benjamin Gaignard wrote:
> 'min_buffers_needed' is suppose to be used to indicate the number
> of buffers needed by DMA engine to start streaming.
> atmel-isi driver doesn't use DMA engine and just want to specify
> the minimum number of buffers to allocate when calling VIDIOC_REQBUFS.
> That 'min_reqbufs_allocation' field purpose so use it.

It definitely has a DMA engine, it just can still work if there are no
buffers queued.

>
> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@xxxxxxxxxxxxx>
> CC: Eugen Hristev <eugen.hristev@xxxxxxxxxxxxx>
> CC: Mauro Carvalho Chehab <mchehab@xxxxxxxxxx>
> CC: Nicolas Ferre <nicolas.ferre@xxxxxxxxxxxxx>
> CC: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxx>
> CC: Claudiu Beznea <claudiu.beznea@xxxxxxxxx>
> ---
> drivers/media/platform/atmel/atmel-isi.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/media/platform/atmel/atmel-isi.c b/drivers/media/platform/atmel/atmel-isi.c
> index da58f33b6b0a..9c156771568a 100644
> --- a/drivers/media/platform/atmel/atmel-isi.c
> +++ b/drivers/media/platform/atmel/atmel-isi.c
> @@ -1244,7 +1244,7 @@ static int atmel_isi_probe(struct platform_device *pdev)
> q->ops = &isi_video_qops;
> q->mem_ops = &vb2_dma_contig_memops;
> q->timestamp_flags = V4L2_BUF_FLAG_TIMESTAMP_MONOTONIC;
> - q->min_buffers_needed = 2;
> + q->min_reqbufs_allocation = 2;

The problem is that this really needs to be tested since this change
will enable code paths that haven't been used before.

Regards,

Hans

> q->dev = &pdev->dev;
>
> ret = vb2_queue_init(q);