]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
media: ti-vpe: vpe: fix a v4l2-compliance failure about frame sequence number
authorBenoit Parrot <bparrot@ti.com>
Mon, 7 Oct 2019 15:10:00 +0000 (12:10 -0300)
committerMauro Carvalho Chehab <mchehab+samsung@kernel.org>
Thu, 10 Oct 2019 16:49:41 +0000 (13:49 -0300)
v4l2-compliance fails with this message:

   fail: v4l2-test-buffers.cpp(294): \
(int)g_sequence() < seq.last_seq + 1
   fail: v4l2-test-buffers.cpp(740): \
buf.check(m2m_q, last_m2m_seq)
   fail: v4l2-test-buffers.cpp(974): \
captureBufs(node, q, m2m_q, frame_count, true)
   test MMAP: FAIL

The driver is failing to update the source frame sequence number in the
vb2 buffer object. Only the destination frame sequence was being
updated.

This is only a reporting issue if the user space app actually cares
about the frame sequence number. But it is fixed nonetheless.

Signed-off-by: Benoit Parrot <bparrot@ti.com>
Reviewed-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
drivers/media/platform/ti-vpe/vpe.c

index 0a7cf9c820c6240ed77e9d8900f929221b9380d3..8ab1c3241b7452a12431be7c84bef8873aec9922 100644 (file)
@@ -1440,6 +1440,7 @@ static irqreturn_t vpe_irq(int irq_vpe, void *data)
                d_vb->timecode = s_vb->timecode;
 
        d_vb->sequence = ctx->sequence;
+       s_vb->sequence = ctx->sequence;
 
        d_q_data = &ctx->q_data[Q_DATA_DST];
        if (d_q_data->flags & Q_IS_INTERLACED) {