aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/usb/stk1160/stk1160-v4l.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/media/usb/stk1160/stk1160-v4l.c')
-rw-r--r--drivers/media/usb/stk1160/stk1160-v4l.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/drivers/media/usb/stk1160/stk1160-v4l.c b/drivers/media/usb/stk1160/stk1160-v4l.c
index e12b10352871..10e35e6479ad 100644
--- a/drivers/media/usb/stk1160/stk1160-v4l.c
+++ b/drivers/media/usb/stk1160/stk1160-v4l.c
@@ -695,8 +695,9 @@ static void buffer_queue(struct vb2_buffer *vb)
695{ 695{
696 unsigned long flags; 696 unsigned long flags;
697 struct stk1160 *dev = vb2_get_drv_priv(vb->vb2_queue); 697 struct stk1160 *dev = vb2_get_drv_priv(vb->vb2_queue);
698 struct vb2_v4l2_buffer *vbuf = to_vb2_v4l2_buffer(vb);
698 struct stk1160_buffer *buf = 699 struct stk1160_buffer *buf =
699 container_of(vb, struct stk1160_buffer, vb); 700 container_of(vbuf, struct stk1160_buffer, vb);
700 701
701 spin_lock_irqsave(&dev->buf_lock, flags); 702 spin_lock_irqsave(&dev->buf_lock, flags);
702 if (!dev->udev) { 703 if (!dev->udev) {
@@ -704,7 +705,7 @@ static void buffer_queue(struct vb2_buffer *vb)
704 * If the device is disconnected return the buffer to userspace 705 * If the device is disconnected return the buffer to userspace
705 * directly. The next QBUF call will fail with -ENODEV. 706 * directly. The next QBUF call will fail with -ENODEV.
706 */ 707 */
707 vb2_buffer_done(&buf->vb, VB2_BUF_STATE_ERROR); 708 vb2_buffer_done(&buf->vb.vb2_buf, VB2_BUF_STATE_ERROR);
708 } else { 709 } else {
709 710
710 buf->mem = vb2_plane_vaddr(vb, 0); 711 buf->mem = vb2_plane_vaddr(vb, 0);
@@ -717,7 +718,7 @@ static void buffer_queue(struct vb2_buffer *vb)
717 * the buffer to userspace directly. 718 * the buffer to userspace directly.
718 */ 719 */
719 if (buf->length < dev->width * dev->height * 2) 720 if (buf->length < dev->width * dev->height * 2)
720 vb2_buffer_done(&buf->vb, VB2_BUF_STATE_ERROR); 721 vb2_buffer_done(&buf->vb.vb2_buf, VB2_BUF_STATE_ERROR);
721 else 722 else
722 list_add_tail(&buf->list, &dev->avail_bufs); 723 list_add_tail(&buf->list, &dev->avail_bufs);
723 724
@@ -769,9 +770,9 @@ void stk1160_clear_queue(struct stk1160 *dev)
769 buf = list_first_entry(&dev->avail_bufs, 770 buf = list_first_entry(&dev->avail_bufs,
770 struct stk1160_buffer, list); 771 struct stk1160_buffer, list);
771 list_del(&buf->list); 772 list_del(&buf->list);
772 vb2_buffer_done(&buf->vb, VB2_BUF_STATE_ERROR); 773 vb2_buffer_done(&buf->vb.vb2_buf, VB2_BUF_STATE_ERROR);
773 stk1160_dbg("buffer [%p/%d] aborted\n", 774 stk1160_dbg("buffer [%p/%d] aborted\n",
774 buf, buf->vb.v4l2_buf.index); 775 buf, buf->vb.vb2_buf.index);
775 } 776 }
776 777
777 /* It's important to release the current buffer */ 778 /* It's important to release the current buffer */
@@ -779,9 +780,9 @@ void stk1160_clear_queue(struct stk1160 *dev)
779 buf = dev->isoc_ctl.buf; 780 buf = dev->isoc_ctl.buf;
780 dev->isoc_ctl.buf = NULL; 781 dev->isoc_ctl.buf = NULL;
781 782
782 vb2_buffer_done(&buf->vb, VB2_BUF_STATE_ERROR); 783 vb2_buffer_done(&buf->vb.vb2_buf, VB2_BUF_STATE_ERROR);
783 stk1160_dbg("buffer [%p/%d] aborted\n", 784 stk1160_dbg("buffer [%p/%d] aborted\n",
784 buf, buf->vb.v4l2_buf.index); 785 buf, buf->vb.vb2_buf.index);
785 } 786 }
786 spin_unlock_irqrestore(&dev->buf_lock, flags); 787 spin_unlock_irqrestore(&dev->buf_lock, flags);
787} 788}