media: hantro: h264: Get the correct fallback reference buffer
authorEzequiel Garcia <ezequiel@collabora.com>
Mon, 27 Jul 2020 17:05:37 +0000 (19:05 +0200)
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Tue, 1 Sep 2020 12:13:25 +0000 (14:13 +0200)
If the bitstream and the application are incorrectly configuring
the reference pictures, the hardware will need to fallback
to using some other reference picture.

When the post-processor is enabled, the fallback buffer
should be a shadow buffer (postproc.dec_q), and not a
CAPTURE queue buffer, since the latter is post-processed
and not really the output of the decoder core.

Fixes: 8c2d66b036c77 ("media: hantro: Support color conversion via post-processing")
Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com>
Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
drivers/staging/media/hantro/hantro_h264.c

index 194d058..6dcd47b 100644 (file)
@@ -325,7 +325,7 @@ dma_addr_t hantro_h264_get_ref_buf(struct hantro_ctx *ctx,
                 */
                dst_buf = hantro_get_dst_buf(ctx);
                buf = &dst_buf->vb2_buf;
-               dma_addr = vb2_dma_contig_plane_dma_addr(buf, 0);
+               dma_addr = hantro_get_dec_buf_addr(ctx, buf);
        }
 
        return dma_addr;