Commit 2bf34b2f authored by Lad, Prabhakar's avatar Lad, Prabhakar Committed by Mauro Carvalho Chehab
Browse files

[media] media: blackfin: bfin_capture: make sure all buffers are returned on...


[media] media: blackfin: bfin_capture: make sure all buffers are returned on stop_streaming() callback

In start_streaming() callback the buffer is removed from the
dma_queue list and assigned to cur_frm, this patch makes sure
that is returned to vb2 core with VB2_BUF_STATE_ERROR flag.

Signed-off-by: default avatarLad, Prabhakar <prabhakar.csengg@gmail.com>
Tested-by: default avatarScott Jiang <scott.jiang.linux@gmail.com>
Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
parent d61233bf
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -374,6 +374,9 @@ static void bcap_stop_streaming(struct vb2_queue *vq)
				"stream off failed in subdev\n");

	/* release all active buffers */
	if (bcap_dev->cur_frm)
		vb2_buffer_done(&bcap_dev->cur_frm->vb, VB2_BUF_STATE_ERROR);

	while (!list_empty(&bcap_dev->dma_queue)) {
		bcap_dev->cur_frm = list_entry(bcap_dev->dma_queue.next,
						struct bcap_buffer, list);