Commit d642f7c8 authored by Ezequiel Garcia's avatar Ezequiel Garcia Committed by Mauro Carvalho Chehab
Browse files

media: hantro: Use vb2_find_buffer



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

Signed-off-by: default avatarEzequiel Garcia <ezequiel@vanguardiasur.com.ar>
Acked-by: default avatarTomasz Figa <tfiga@chromium.org>
Reviewed-by: default avatarPhilipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: default avatarHans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@kernel.org>
parent 5b25e543
Loading
Loading
Loading
Loading
+2 −4
Original line number Diff line number Diff line
@@ -47,12 +47,10 @@ dma_addr_t hantro_get_ref(struct hantro_ctx *ctx, u64 ts)
{
	struct vb2_queue *q = v4l2_m2m_get_dst_vq(ctx->fh.m2m_ctx);
	struct vb2_buffer *buf;
	int index;

	index = vb2_find_timestamp(q, ts, 0);
	if (index < 0)
	buf = vb2_find_buffer(q, ts);
	if (!buf)
		return 0;
	buf = vb2_get_buffer(q, index);
	return hantro_get_dec_buf_addr(ctx, buf);
}

+5 −5
Original line number Diff line number Diff line
@@ -111,17 +111,17 @@ get_ref_buf(struct hantro_ctx *ctx, struct vb2_v4l2_buffer *dst, u64 timestamp)
{
	struct v4l2_m2m_ctx *m2m_ctx = ctx->fh.m2m_ctx;
	struct vb2_queue *cap_q = &m2m_ctx->cap_q_ctx.q;
	int buf_idx;
	struct vb2_buffer *buf;

	/*
	 * If a ref is unused or invalid, address of current destination
	 * buffer is returned.
	 */
	buf_idx = vb2_find_timestamp(cap_q, timestamp, 0);
	if (buf_idx < 0)
		return vb2_to_hantro_decoded_buf(&dst->vb2_buf);
	buf = vb2_find_buffer(cap_q, timestamp);
	if (!buf)
		buf = &dst->vb2_buf;

	return vb2_to_hantro_decoded_buf(vb2_get_buffer(cap_q, buf_idx));
	return vb2_to_hantro_decoded_buf(buf);
}

static void update_dec_buf_info(struct hantro_decoded_buffer *buf,