diff options
Diffstat (limited to 'drivers/media/usb/uvc/uvc_driver.c')
| -rw-r--r-- | drivers/media/usb/uvc/uvc_driver.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/media/usb/uvc/uvc_driver.c b/drivers/media/usb/uvc/uvc_driver.c index 5967081747ce..5dbefa68b1d2 100644 --- a/drivers/media/usb/uvc/uvc_driver.c +++ b/drivers/media/usb/uvc/uvc_driver.c | |||
| @@ -1562,6 +1562,9 @@ static int uvc_scan_device(struct uvc_device *dev) | |||
| 1562 | INIT_LIST_HEAD(&chain->entities); | 1562 | INIT_LIST_HEAD(&chain->entities); |
| 1563 | mutex_init(&chain->ctrl_mutex); | 1563 | mutex_init(&chain->ctrl_mutex); |
| 1564 | chain->dev = dev; | 1564 | chain->dev = dev; |
| 1565 | v4l2_prio_init(&chain->prio); | ||
| 1566 | |||
| 1567 | term->flags |= UVC_ENTITY_FLAG_DEFAULT; | ||
| 1565 | 1568 | ||
| 1566 | if (uvc_scan_chain(chain, term) < 0) { | 1569 | if (uvc_scan_chain(chain, term) < 0) { |
| 1567 | kfree(chain); | 1570 | kfree(chain); |
| @@ -1722,6 +1725,8 @@ static int uvc_register_video(struct uvc_device *dev, | |||
| 1722 | vdev->v4l2_dev = &dev->vdev; | 1725 | vdev->v4l2_dev = &dev->vdev; |
| 1723 | vdev->fops = &uvc_fops; | 1726 | vdev->fops = &uvc_fops; |
| 1724 | vdev->release = uvc_release; | 1727 | vdev->release = uvc_release; |
| 1728 | vdev->prio = &stream->chain->prio; | ||
| 1729 | set_bit(V4L2_FL_USE_FH_PRIO, &vdev->flags); | ||
| 1725 | if (stream->type == V4L2_BUF_TYPE_VIDEO_OUTPUT) | 1730 | if (stream->type == V4L2_BUF_TYPE_VIDEO_OUTPUT) |
| 1726 | vdev->vfl_dir = VFL_DIR_TX; | 1731 | vdev->vfl_dir = VFL_DIR_TX; |
| 1727 | strlcpy(vdev->name, dev->name, sizeof vdev->name); | 1732 | strlcpy(vdev->name, dev->name, sizeof vdev->name); |
| @@ -1741,6 +1746,11 @@ static int uvc_register_video(struct uvc_device *dev, | |||
| 1741 | return ret; | 1746 | return ret; |
| 1742 | } | 1747 | } |
| 1743 | 1748 | ||
| 1749 | if (stream->type == V4L2_BUF_TYPE_VIDEO_CAPTURE) | ||
| 1750 | stream->chain->caps |= V4L2_CAP_VIDEO_CAPTURE; | ||
| 1751 | else | ||
| 1752 | stream->chain->caps |= V4L2_CAP_VIDEO_OUTPUT; | ||
| 1753 | |||
| 1744 | atomic_inc(&dev->nstreams); | 1754 | atomic_inc(&dev->nstreams); |
| 1745 | return 0; | 1755 | return 0; |
| 1746 | } | 1756 | } |
