aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/platform
diff options
context:
space:
mode:
authorLucas Stach <l.stach@pengutronix.de>2015-01-23 13:51:19 -0300
committerMauro Carvalho Chehab <mchehab@osg.samsung.com>2015-02-02 10:00:10 -0200
commit83f31c8a5fc87a2bc384f33e66994d079adc2273 (patch)
treebc74cfff1ca2409e827dd21885a1b2636d69aeb0 /drivers/media/platform
parent[media] coda: move meta out of padding (diff)
downloadlinux-dev-83f31c8a5fc87a2bc384f33e66994d079adc2273.tar.xz
linux-dev-83f31c8a5fc87a2bc384f33e66994d079adc2273.zip
[media] coda: adjust sequence offset after unexpected decoded frame
If userspace doesn't properly separate the bitstream input into individual frames (which may happen for example on slightly corrupted streams) the CODA hardware may decode more frames than we expect. We already log an error in this case, but it's also necessary to adjust the sequence offset. Otherwise we spam the log with a sequence number mismatch on every frame frame after the unexpected one. Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Signed-off-by: Kamil Debski <k.debski@samsung.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
Diffstat (limited to 'drivers/media/platform')
-rw-r--r--drivers/media/platform/coda/coda-bit.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/media/platform/coda/coda-bit.c b/drivers/media/platform/coda/coda-bit.c
index f6cf337bf377..6b00a45e84a4 100644
--- a/drivers/media/platform/coda/coda-bit.c
+++ b/drivers/media/platform/coda/coda-bit.c
@@ -1822,6 +1822,7 @@ static void coda_finish_decode(struct coda_ctx *ctx)
memset(&ctx->frame_metas[decoded_idx], 0,
sizeof(struct coda_buffer_meta));
ctx->frame_metas[decoded_idx].sequence = val;
+ ctx->sequence_offset++;
}
mutex_unlock(&ctx->bitstream_mutex);