media: hantro: vp8: Move noisy WARN_ON to vpu_debug
[ Upstream commit 6ad61a7847da09b6261824accb539d05bcdfef65 ] When the VP8 decoders can't find a reference frame, the driver falls back to the current output frame. This will probably produce some undesirable results, leading to frame corruption, but shouldn't cause noisy warnings. Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com> Acked-by: Nicolas Dufresne <nicolas.dufresne@collabora.com> Tested-by: Alex Bee <knaerzche@gmail.com> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:

committed by
Greg Kroah-Hartman

parent
f462a39eb8
commit
c6e5eebd95
@@ -377,12 +377,17 @@ static void cfg_ref(struct hantro_ctx *ctx,
|
||||
vb2_dst = hantro_get_dst_buf(ctx);
|
||||
|
||||
ref = hantro_get_ref(ctx, hdr->last_frame_ts);
|
||||
if (!ref)
|
||||
if (!ref) {
|
||||
vpu_debug(0, "failed to find last frame ts=%llu\n",
|
||||
hdr->last_frame_ts);
|
||||
ref = vb2_dma_contig_plane_dma_addr(&vb2_dst->vb2_buf, 0);
|
||||
}
|
||||
vdpu_write_relaxed(vpu, ref, G1_REG_ADDR_REF(0));
|
||||
|
||||
ref = hantro_get_ref(ctx, hdr->golden_frame_ts);
|
||||
WARN_ON(!ref && hdr->golden_frame_ts);
|
||||
if (!ref && hdr->golden_frame_ts)
|
||||
vpu_debug(0, "failed to find golden frame ts=%llu\n",
|
||||
hdr->golden_frame_ts);
|
||||
if (!ref)
|
||||
ref = vb2_dma_contig_plane_dma_addr(&vb2_dst->vb2_buf, 0);
|
||||
if (hdr->flags & V4L2_VP8_FRAME_HEADER_FLAG_SIGN_BIAS_GOLDEN)
|
||||
@@ -390,7 +395,9 @@ static void cfg_ref(struct hantro_ctx *ctx,
|
||||
vdpu_write_relaxed(vpu, ref, G1_REG_ADDR_REF(4));
|
||||
|
||||
ref = hantro_get_ref(ctx, hdr->alt_frame_ts);
|
||||
WARN_ON(!ref && hdr->alt_frame_ts);
|
||||
if (!ref && hdr->alt_frame_ts)
|
||||
vpu_debug(0, "failed to find alt frame ts=%llu\n",
|
||||
hdr->alt_frame_ts);
|
||||
if (!ref)
|
||||
ref = vb2_dma_contig_plane_dma_addr(&vb2_dst->vb2_buf, 0);
|
||||
if (hdr->flags & V4L2_VP8_FRAME_HEADER_FLAG_SIGN_BIAS_ALT)
|
||||
|
@@ -454,12 +454,17 @@ static void cfg_ref(struct hantro_ctx *ctx,
|
||||
vb2_dst = hantro_get_dst_buf(ctx);
|
||||
|
||||
ref = hantro_get_ref(ctx, hdr->last_frame_ts);
|
||||
if (!ref)
|
||||
if (!ref) {
|
||||
vpu_debug(0, "failed to find last frame ts=%llu\n",
|
||||
hdr->last_frame_ts);
|
||||
ref = vb2_dma_contig_plane_dma_addr(&vb2_dst->vb2_buf, 0);
|
||||
}
|
||||
vdpu_write_relaxed(vpu, ref, VDPU_REG_VP8_ADDR_REF0);
|
||||
|
||||
ref = hantro_get_ref(ctx, hdr->golden_frame_ts);
|
||||
WARN_ON(!ref && hdr->golden_frame_ts);
|
||||
if (!ref && hdr->golden_frame_ts)
|
||||
vpu_debug(0, "failed to find golden frame ts=%llu\n",
|
||||
hdr->golden_frame_ts);
|
||||
if (!ref)
|
||||
ref = vb2_dma_contig_plane_dma_addr(&vb2_dst->vb2_buf, 0);
|
||||
if (hdr->flags & V4L2_VP8_FRAME_HEADER_FLAG_SIGN_BIAS_GOLDEN)
|
||||
@@ -467,7 +472,9 @@ static void cfg_ref(struct hantro_ctx *ctx,
|
||||
vdpu_write_relaxed(vpu, ref, VDPU_REG_VP8_ADDR_REF2_5(2));
|
||||
|
||||
ref = hantro_get_ref(ctx, hdr->alt_frame_ts);
|
||||
WARN_ON(!ref && hdr->alt_frame_ts);
|
||||
if (!ref && hdr->alt_frame_ts)
|
||||
vpu_debug(0, "failed to find alt frame ts=%llu\n",
|
||||
hdr->alt_frame_ts);
|
||||
if (!ref)
|
||||
ref = vb2_dma_contig_plane_dma_addr(&vb2_dst->vb2_buf, 0);
|
||||
if (hdr->flags & V4L2_VP8_FRAME_HEADER_FLAG_SIGN_BIAS_ALT)
|
||||
|
Reference in New Issue
Block a user