于 2013年01月31日 05:25, Hans Verkuil 写道:
> From: Hans Verkuil <hans.verk...@cisco.com>
>
> Signed-off-by: Hans Verkuil <hans.verk...@cisco.com>
> ---
>  drivers/media/usb/tlg2300/pd-video.c |   14 ++++++++++----
>  1 file changed, 10 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/media/usb/tlg2300/pd-video.c 
> b/drivers/media/usb/tlg2300/pd-video.c
> index 312809a..8ab2894 100644
> --- a/drivers/media/usb/tlg2300/pd-video.c
> +++ b/drivers/media/usb/tlg2300/pd-video.c
> @@ -142,17 +142,23 @@ static int get_audio_std(v4l2_std_id v4l2_std)
>  static int vidioc_querycap(struct file *file, void *fh,
>                       struct v4l2_capability *cap)
>  {
> +     struct video_device *vdev = video_devdata(file);
> +     struct poseidon *p = video_get_drvdata(vdev);
>       struct front_face *front = fh;
> -     struct poseidon *p = front->pd;
>  
>       logs(front);
>  
>       strcpy(cap->driver, "tele-video");
>       strcpy(cap->card, "Telegent Poseidon");
>       usb_make_path(p->udev, cap->bus_info, sizeof(cap->bus_info));
> -     cap->capabilities = V4L2_CAP_VIDEO_CAPTURE | V4L2_CAP_TUNER |
> -                             V4L2_CAP_AUDIO | V4L2_CAP_STREAMING |
> -                             V4L2_CAP_READWRITE | V4L2_CAP_VBI_CAPTURE;
> +     cap->device_caps = V4L2_CAP_TUNER | V4L2_CAP_AUDIO |
> +                     V4L2_CAP_STREAMING | V4L2_CAP_READWRITE;
> +     if (vdev->vfl_type == VFL_TYPE_VBI)
> +             cap->device_caps |= V4L2_CAP_VBI_CAPTURE;
> +     else
> +             cap->device_caps |= V4L2_CAP_VIDEO_CAPTURE;
> +     cap->capabilities = cap->device_caps | V4L2_CAP_DEVICE_CAPS |
> +             V4L2_CAP_RADIO | V4L2_CAP_VBI_CAPTURE | V4L2_CAP_VIDEO_CAPTURE;
>       return 0;
>  }
>  
Acked-by: Huang Shijie <shij...@gmail.com>
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to