media: bttv: fix WARNING regression on tunerless devices
authorOndrej Zary <linux@zary.sk>
Sat, 25 Dec 2021 21:58:44 +0000 (22:58 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 8 Apr 2022 12:23:13 +0000 (14:23 +0200)
[ Upstream commit ef058cc8b7193d15a771272359c7454839ae74ee ]

Commit 2161536516ed ("media: media/pci: set device_caps in struct video_device")
introduced a regression: V4L2_CAP_TUNER is always present in device_caps,
even when the device has no tuner.

This causes a warning:
WARNING: CPU: 0 PID: 249 at drivers/media/v4l2-core/v4l2-ioctl.c:1102 v4l_querycap+0xa0/0xb0 [videodev]

Fixes: 2161536516ed ("media: media/pci: set device_caps in struct video_device")
Signed-off-by: Ondrej Zary <linux@zary.sk>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/media/pci/bt8xx/bttv-driver.c

index 0e9df8b..661ebfa 100644 (file)
@@ -3890,7 +3890,7 @@ static int bttv_register_video(struct bttv *btv)
 
        /* video */
        vdev_init(btv, &btv->video_dev, &bttv_video_template, "video");
-       btv->video_dev.device_caps = V4L2_CAP_VIDEO_CAPTURE | V4L2_CAP_TUNER |
+       btv->video_dev.device_caps = V4L2_CAP_VIDEO_CAPTURE |
                                     V4L2_CAP_READWRITE | V4L2_CAP_STREAMING;
        if (btv->tuner_type != TUNER_ABSENT)
                btv->video_dev.device_caps |= V4L2_CAP_TUNER;
@@ -3911,7 +3911,7 @@ static int bttv_register_video(struct bttv *btv)
        /* vbi */
        vdev_init(btv, &btv->vbi_dev, &bttv_video_template, "vbi");
        btv->vbi_dev.device_caps = V4L2_CAP_VBI_CAPTURE | V4L2_CAP_READWRITE |
-                                  V4L2_CAP_STREAMING | V4L2_CAP_TUNER;
+                                  V4L2_CAP_STREAMING;
        if (btv->tuner_type != TUNER_ABSENT)
                btv->vbi_dev.device_caps |= V4L2_CAP_TUNER;