media: tegra-vde: Use vb2_find_buffer

Use the newly introduced vb2_find_buffer API to get a vb2_buffer
given a buffer timestamp.

Cc: Dmitry Osipenko <digetx@gmail.com>
Signed-off-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
Acked-by: Tomasz Figa <tfiga@chromium.org>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
This commit is contained in:
Ezequiel Garcia 2022-07-11 22:11:36 +01:00 committed by Mauro Carvalho Chehab
parent 25e3bc6236
commit 6c6d3eaefe
1 changed files with 4 additions and 5 deletions

View File

@ -659,20 +659,19 @@ static struct vb2_buffer *get_ref_buf(struct tegra_ctx *ctx,
{
const struct v4l2_h264_dpb_entry *dpb = ctx->h264.decode_params->dpb;
struct vb2_queue *cap_q = &ctx->fh.m2m_ctx->cap_q_ctx.q;
int buf_idx = -1;
struct vb2_buffer *vb = NULL;
if (dpb[dpb_idx].flags & V4L2_H264_DPB_ENTRY_FLAG_ACTIVE)
buf_idx = vb2_find_timestamp(cap_q,
dpb[dpb_idx].reference_ts, 0);
vb = vb2_find_buffer(cap_q, dpb[dpb_idx].reference_ts);
/*
* If a DPB entry is unused or invalid, address of current destination
* buffer is returned.
*/
if (buf_idx < 0)
if (!vb)
return &dst->vb2_buf;
return vb2_get_buffer(cap_q, buf_idx);
return vb;
}
static int tegra_vde_validate_vb_size(struct tegra_ctx *ctx,