On 14/09/2023 15:33, Benjamin Gaignard wrote: > Use vb2_get_num_buffers() to avoid using queue num_buffer field directly. > > Signed-off-by: Benjamin Gaignard <benjamin.gaignard@xxxxxxxxxxxxx> > --- > drivers/media/platform/renesas/rcar_drif.c | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/drivers/media/platform/renesas/rcar_drif.c b/drivers/media/platform/renesas/rcar_drif.c > index 163a4ba61c17..020845689ed3 100644 > --- a/drivers/media/platform/renesas/rcar_drif.c > +++ b/drivers/media/platform/renesas/rcar_drif.c > @@ -424,10 +424,11 @@ static int rcar_drif_queue_setup(struct vb2_queue *vq, > unsigned int sizes[], struct device *alloc_devs[]) > { > struct rcar_drif_sdr *sdr = vb2_get_drv_priv(vq); > + unsigned int q_num_buffers = vb2_get_num_buffers(vq); > > /* Need at least 16 buffers */ > - if (vq->num_buffers + *num_buffers < 16) > - *num_buffers = 16 - vq->num_buffers; > + if (q_num_buffers + *num_buffers < 16) > + *num_buffers = 16 - q_num_buffers; This should be dropped, and instead min_buffers_needed should be set to 16. Regards, Hans > > *num_planes = 1; > sizes[0] = PAGE_ALIGN(sdr->fmt->buffersize);