Re: [PATCH v2 31/36] media: starfive: Fix misuse of min_buffers_needed field

From: Hans Verkuil
Date: Mon Dec 04 2023 - 10:07:46 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.
> starfive 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.
>
> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@xxxxxxxxxxxxx>
> CC: Jack Zhu <jack.zhu@xxxxxxxxxxxxxxxx>
> CC: Changhuang Liang <changhuang.liang@xxxxxxxxxxxxxxxx>
> ---
> drivers/staging/media/starfive/camss/stf-video.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/staging/media/starfive/camss/stf-video.c b/drivers/staging/media/starfive/camss/stf-video.c
> index 0b305f21eb53..25038e37e8a6 100644
> --- a/drivers/staging/media/starfive/camss/stf-video.c
> +++ b/drivers/staging/media/starfive/camss/stf-video.c
> @@ -513,7 +513,7 @@ int stf_video_register(struct stfcamss_video *video,
> q->buf_struct_size = sizeof(struct stfcamss_buffer);
> q->dev = video->stfcamss->dev;
> q->lock = &video->q_lock;
> - q->min_buffers_needed = STFCAMSS_MIN_BUFFERS;
> + q->min_reqbufs_allocation = STFCAMSS_MIN_BUFFERS;
> ret = vb2_queue_init(q);
> if (ret < 0) {
> dev_err(video->stfcamss->dev,

It's not clear to me if this driver can work without at least one buffer
queued. This would need to be tested first.

Regards,

Hans