[ Upstream commit bbeefa7357a648afe70e7183914c87c3878d528d ]

The error return value is not written by some firmware codecs, such as
MPEG-2 decode on CodaHx4. Clear the error return value before starting
the picture run to avoid misinterpreting unrelated values returned by
sequence initialization as error return value.

Signed-off-by: Philipp Zabel <p.za...@pengutronix.de>
Signed-off-by: Hans Verkuil <hverkuil-ci...@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab+sams...@kernel.org>
Signed-off-by: Sasha Levin <sas...@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 8e0194993a52e..b9fc589161108 100644
--- a/drivers/media/platform/coda/coda-bit.c
+++ b/drivers/media/platform/coda/coda-bit.c
@@ -2006,6 +2006,9 @@ static int coda_prepare_decode(struct coda_ctx *ctx)
        /* Clear decode success flag */
        coda_write(dev, 0, CODA_RET_DEC_PIC_SUCCESS);
 
+       /* Clear error return value */
+       coda_write(dev, 0, CODA_RET_DEC_PIC_ERR_MB);
+
        trace_coda_dec_pic_run(ctx, meta);
 
        coda_command_async(ctx, CODA_COMMAND_PIC_RUN);
-- 
2.20.1



Reply via email to