Commit 599b0892 authored by Sakari Ailus's avatar Sakari Ailus Committed by Mauro Carvalho Chehab
Browse files

[media] exynos-gsc, m2m-deinterlace, mx2_emmaprp: Copy v4l2_buffer data from src to dst



The timestamp and timecode fields were copied from destination to source,
not the other way around as they should. Fix it.

Signed-off-by: default avatarSakari Ailus <sakari.ailus@iki.fi>
Acked-by: default avatarKamil Debski <k.debski@samsung.com>
Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
parent c767492a
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -88,8 +88,8 @@ void gsc_m2m_job_finish(struct gsc_ctx *ctx, int vb_state)
	dst_vb = v4l2_m2m_dst_buf_remove(ctx->m2m_ctx);

	if (src_vb && dst_vb) {
		src_vb->v4l2_buf.timestamp = dst_vb->v4l2_buf.timestamp;
		src_vb->v4l2_buf.timecode = dst_vb->v4l2_buf.timecode;
		dst_vb->v4l2_buf.timestamp = src_vb->v4l2_buf.timestamp;
		dst_vb->v4l2_buf.timecode = src_vb->v4l2_buf.timecode;

		v4l2_m2m_buf_done(src_vb, vb_state);
		v4l2_m2m_buf_done(dst_vb, vb_state);
+2 −2
Original line number Diff line number Diff line
@@ -207,8 +207,8 @@ static void dma_callback(void *data)
	src_vb = v4l2_m2m_src_buf_remove(curr_ctx->m2m_ctx);
	dst_vb = v4l2_m2m_dst_buf_remove(curr_ctx->m2m_ctx);

	src_vb->v4l2_buf.timestamp = dst_vb->v4l2_buf.timestamp;
	src_vb->v4l2_buf.timecode = dst_vb->v4l2_buf.timecode;
	dst_vb->v4l2_buf.timestamp = src_vb->v4l2_buf.timestamp;
	dst_vb->v4l2_buf.timecode = src_vb->v4l2_buf.timecode;

	v4l2_m2m_buf_done(src_vb, VB2_BUF_STATE_DONE);
	v4l2_m2m_buf_done(dst_vb, VB2_BUF_STATE_DONE);
+2 −2
Original line number Diff line number Diff line
@@ -377,8 +377,8 @@ static irqreturn_t emmaprp_irq(int irq_emma, void *data)
			src_vb = v4l2_m2m_src_buf_remove(curr_ctx->m2m_ctx);
			dst_vb = v4l2_m2m_dst_buf_remove(curr_ctx->m2m_ctx);

			src_vb->v4l2_buf.timestamp = dst_vb->v4l2_buf.timestamp;
			src_vb->v4l2_buf.timecode = dst_vb->v4l2_buf.timecode;
			dst_vb->v4l2_buf.timestamp = src_vb->v4l2_buf.timestamp;
			dst_vb->v4l2_buf.timecode = src_vb->v4l2_buf.timecode;

			spin_lock_irqsave(&pcdev->irqlock, flags);
			v4l2_m2m_buf_done(src_vb, VB2_BUF_STATE_DONE);