summaryrefslogtreecommitdiff
path: root/drivers/media/platform/blackfin
diff options
context:
space:
mode:
authorHans Verkuil <hans.verkuil@cisco.com>2014-04-17 02:47:21 -0300
committerChanho Park <chanho61.park@samsung.com>2014-08-08 15:24:33 +0900
commit2483bfdf81f58dc8fb9ef0e15bb99f798b3184c8 (patch)
tree37e40c5c03d22bcadbe2c8668eaf40c46f569f61 /drivers/media/platform/blackfin
parentec0c66604bb7e9a86ceacad7966cbe10bf5961c9 (diff)
downloadlinux-3.10-2483bfdf81f58dc8fb9ef0e15bb99f798b3184c8.tar.gz
linux-3.10-2483bfdf81f58dc8fb9ef0e15bb99f798b3184c8.tar.bz2
linux-3.10-2483bfdf81f58dc8fb9ef0e15bb99f798b3184c8.zip
upstream: [media] vb2: stop_streaming should return void
The vb2 core ignores any return code from the stop_streaming op. And there really isn't anything it can do anyway in case of an error. So change the return type to void and update any drivers that implement it. The int return gave drivers the idea that this operation could actually fail, but that's really not the case. The pwc amd sdr-msi3101 drivers both had this construction: if (mutex_lock_interruptible(&s->v4l2_lock)) return -ERESTARTSYS; This has been updated to just call mutex_lock(). The stop_streaming op expects this to really stop streaming and I very much doubt this will work reliably if stop_streaming just returns without really stopping the DMA. Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Acked-by: Pawel Osciak <pawel@osciak.com> Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com> Conflicts: Documentation/video4linux/v4l2-pci-skeleton.c drivers/staging/media/msi3101/sdr-msi3101.c
Diffstat (limited to 'drivers/media/platform/blackfin')
-rw-r--r--drivers/media/platform/blackfin/bfin_capture.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/media/platform/blackfin/bfin_capture.c b/drivers/media/platform/blackfin/bfin_capture.c
index 0e97b36cd54..9eca639555b 100644
--- a/drivers/media/platform/blackfin/bfin_capture.c
+++ b/drivers/media/platform/blackfin/bfin_capture.c
@@ -427,7 +427,7 @@ static int bcap_start_streaming(struct vb2_queue *vq, unsigned int count)
return 0;
}
-static int bcap_stop_streaming(struct vb2_queue *vq)
+static void bcap_stop_streaming(struct vb2_queue *vq)
{
struct bcap_device *bcap_dev = vb2_get_drv_priv(vq);
struct ppi_if *ppi = bcap_dev->ppi;
@@ -452,7 +452,6 @@ static int bcap_stop_streaming(struct vb2_queue *vq)
list_del(&bcap_dev->cur_frm->list);
vb2_buffer_done(&bcap_dev->cur_frm->vb, VB2_BUF_STATE_ERROR);
}
- return 0;
}
static struct vb2_ops bcap_video_qops = {