Le mercredi 17 décembre 2025 à 11:02 +0800, ming.qian@oss.nxp.com a écrit :
> From: Ming Qian <ming.qian@oss.nxp.com>
>
> The V4L2_DEC_CMD_START command may be used to handle the dynamic source
> change, which will triggers an implicit decoder drain.
> The last_buffer_dequeued flag is set in the implicit decoder drain,
> so driver need to clear it to continue the following decoding flow.
>
> Signed-off-by: Ming Qian <ming.qian@oss.nxp.com>
Reviewed-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
> ---
> drivers/media/platform/amphion/vdec.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/media/platform/amphion/vdec.c b/drivers/media/platform/amphion/vdec.c
> index c0d2aabb9e0e..f25dbcebdccf 100644
> --- a/drivers/media/platform/amphion/vdec.c
> +++ b/drivers/media/platform/amphion/vdec.c
> @@ -724,6 +724,7 @@ static int vdec_decoder_cmd(struct file *file, void *fh, struct v4l2_decoder_cmd
> switch (cmd->cmd) {
> case V4L2_DEC_CMD_START:
> vdec_cmd_start(inst);
> + vb2_clear_last_buffer_dequeued(v4l2_m2m_get_dst_vq(inst->fh.m2m_ctx));
> break;
> case V4L2_DEC_CMD_STOP:
> vdec_cmd_stop(inst);