]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
media: chips-media: wave5: Process ready frames when CMD_STOP sent to Encoder
authorBrandon Brnich <b-brnich@ti.com>
Tue, 21 Oct 2025 20:46:18 +0000 (15:46 -0500)
committerHans Verkuil <hverkuil+cisco@kernel.org>
Mon, 5 Jan 2026 14:56:31 +0000 (15:56 +0100)
CMD_STOP being sent to encoder before last job is executed by device_run
can lead to an occasional dropped frame. Ensure that remaining ready
buffers are drained by making a call to v4l2_m2m_try_schedule.

Signed-off-by: Brandon Brnich <b-brnich@ti.com>
Reviewed-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
Signed-off-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
Signed-off-by: Hans Verkuil <hverkuil+cisco@kernel.org>
drivers/media/platform/chips-media/wave5/wave5-vpu-enc.c

index bca881a0a161709da56e257888bedbef903b6342..8e3dd9e34abc3dac3c35cd68a6dbda40855aad0a 100644 (file)
@@ -649,6 +649,8 @@ static int wave5_vpu_enc_encoder_cmd(struct file *file, void *fh, struct v4l2_en
 
                m2m_ctx->last_src_buf = v4l2_m2m_last_src_buf(m2m_ctx);
                m2m_ctx->is_draining = true;
+
+               v4l2_m2m_try_schedule(m2m_ctx);
                break;
        case V4L2_ENC_CMD_START:
                break;