diff options
Diffstat (limited to 'drivers/media/platform/coda/coda-bit.c')
-rw-r--r-- | drivers/media/platform/coda/coda-bit.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/media/platform/coda/coda-bit.c b/drivers/media/platform/coda/coda-bit.c index 109797bb8fbb..9fbff248d7fa 100644 --- a/drivers/media/platform/coda/coda-bit.c +++ b/drivers/media/platform/coda/coda-bit.c | |||
@@ -1902,7 +1902,14 @@ static void coda_finish_decode(struct coda_ctx *ctx) | |||
1902 | meta = list_first_entry(&ctx->buffer_meta_list, | 1902 | meta = list_first_entry(&ctx->buffer_meta_list, |
1903 | struct coda_buffer_meta, list); | 1903 | struct coda_buffer_meta, list); |
1904 | list_del(&meta->list); | 1904 | list_del(&meta->list); |
1905 | if (val != (meta->sequence & 0xffff)) { | 1905 | /* |
1906 | * Clamp counters to 16 bits for comparison, as the HW | ||
1907 | * counter rolls over at this point for h.264. This | ||
1908 | * may be different for other formats, but using 16 bits | ||
1909 | * should be enough to detect most errors and saves us | ||
1910 | * from doing different things based on the format. | ||
1911 | */ | ||
1912 | if ((val & 0xffff) != (meta->sequence & 0xffff)) { | ||
1906 | v4l2_err(&dev->v4l2_dev, | 1913 | v4l2_err(&dev->v4l2_dev, |
1907 | "sequence number mismatch (%d(%d) != %d)\n", | 1914 | "sequence number mismatch (%d(%d) != %d)\n", |
1908 | val, ctx->sequence_offset, | 1915 | val, ctx->sequence_offset, |