Re: [PATCH 1/2] media: nxp: imx8-isi: Reduce minimum queued buffers from 2 to 1
From: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
Date: 2026-03-11 12:50:51
Also in:
imx, linux-media, lkml
Hello Guoniu On Wed, Mar 11, 2026 at 04:02:58PM +0800, Guoniu Zhou wrote:
From: Guoniu Zhou <redacted> Fix a hang issue when capturing a single frame with applications like cam in libcamera. It would hang waiting for the driver to complete the buffer, but streaming never starts because min_queued_buffers was set to 2. The ISI module uses a ping-pong buffer mechanism that requires two buffers to be programmed at all times. However, when fewer than 2 user buffers are available, the driver use internal discard buffers to fill the remaining slot(s). Reduce minimum queued buffers from 2 to 1 allows streaming to
Does it mean the ISI can use internal buffer discard for both buffer slots ? Can we make min_queued_buffers == 0 ?
quoted hunk ↗ jump to hunk
start with a single buffer providing more flexibility for applications. Signed-off-by: Guoniu Zhou <redacted> --- drivers/media/platform/nxp/imx8-isi/imx8-isi-video.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)diff --git a/drivers/media/platform/nxp/imx8-isi/imx8-isi-video.c b/drivers/media/platform/nxp/imx8-isi/imx8-isi-video.c index 13682bf6e9f8895bb9eb1f92d5f74b0d5968544e..2405baf21594cd18cf2b349234313c5e103b7802 100644 --- a/drivers/media/platform/nxp/imx8-isi/imx8-isi-video.c +++ b/drivers/media/platform/nxp/imx8-isi/imx8-isi-video.c@@ -1410,7 +1410,7 @@ int mxc_isi_video_register(struct mxc_isi_pipe *pipe, q->mem_ops = &vb2_dma_contig_memops; q->buf_struct_size = sizeof(struct mxc_isi_buffer); q->timestamp_flags = V4L2_BUF_FLAG_TIMESTAMP_MONOTONIC; - q->min_queued_buffers = 2; + q->min_queued_buffers = 1; q->lock = &video->lock; q->dev = pipe->isi->dev; --2.34.1