|
@@ -374,6 +374,9 @@ static void bcap_stop_streaming(struct vb2_queue *vq)
|
|
"stream off failed in subdev\n");
|
|
"stream off failed in subdev\n");
|
|
|
|
|
|
/* release all active buffers */
|
|
/* 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)) {
|
|
while (!list_empty(&bcap_dev->dma_queue)) {
|
|
bcap_dev->cur_frm = list_entry(bcap_dev->dma_queue.next,
|
|
bcap_dev->cur_frm = list_entry(bcap_dev->dma_queue.next,
|
|
struct bcap_buffer, list);
|
|
struct bcap_buffer, list);
|