lkml.org 
[lkml]   [2019]   [Jul]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH AUTOSEL 5.2 153/249] media: coda: increment sequence offset for the last returned frame
    Date
    From: Philipp Zabel <p.zabel@pengutronix.de>

    [ Upstream commit b3b7d96817cdb8b6fc353867705275dce8f41ccc ]

    If no more frames are decoded in bitstream end mode, and a previously
    decoded frame has been returned, the firmware still increments the frame
    number. To avoid a sequence number mismatch after decoder restart,
    increment the sequence_offset correction parameter.

    Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
    Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/media/platform/coda/coda-bit.c | 3 +++
    1 file changed, 3 insertions(+)

    diff --git a/drivers/media/platform/coda/coda-bit.c b/drivers/media/platform/coda/coda-bit.c
    index 1eeed34f300d..8c9743e067cf 100644
    --- a/drivers/media/platform/coda/coda-bit.c
    +++ b/drivers/media/platform/coda/coda-bit.c
    @@ -2147,6 +2147,9 @@ static void coda_finish_decode(struct coda_ctx *ctx)
    else if (ctx->display_idx < 0)
    ctx->hold = true;
    } else if (decoded_idx == -2) {
    + if (ctx->display_idx >= 0 &&
    + ctx->display_idx < ctx->num_internal_frames)
    + ctx->sequence_offset++;
    /* no frame was decoded, we still return remaining buffers */
    } else if (decoded_idx < 0 || decoded_idx >= ctx->num_internal_frames) {
    v4l2_err(&dev->v4l2_dev,
    --
    2.20.1
    \
     
     \ /
      Last update: 2019-07-15 16:15    [W:2.605 / U:0.104 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site