strscpy(capability->card, BCM2048_DRIVER_CARD,
                sizeof(capability->card));
        snprintf(capability->bus_info, 32, "I2C: 0x%X", bdev->client->addr);
-       capability->device_caps = V4L2_CAP_TUNER | V4L2_CAP_RADIO |
-                                       V4L2_CAP_HW_FREQ_SEEK;
-       capability->capabilities = capability->device_caps |
-               V4L2_CAP_DEVICE_CAPS;
-
        return 0;
 }
 
        .name                   = BCM2048_DRIVER_NAME,
        .release                = video_device_release_empty,
        .ioctl_ops              = &bcm2048_ioctl_ops,
+       .device_caps            = V4L2_CAP_TUNER | V4L2_CAP_RADIO |
+                                 V4L2_CAP_HW_FREQ_SEEK,
 };
 
 /*
 
 
        v4l2_dbg(1, debug, &vpfe_dev->v4l2_dev, "vpfe_querycap\n");
 
-       if (video->type == V4L2_BUF_TYPE_VIDEO_CAPTURE)
-               cap->device_caps = V4L2_CAP_VIDEO_CAPTURE | V4L2_CAP_STREAMING;
-       else
-               cap->device_caps = V4L2_CAP_VIDEO_OUTPUT | V4L2_CAP_STREAMING;
        cap->capabilities = V4L2_CAP_VIDEO_CAPTURE | V4L2_CAP_VIDEO_OUTPUT |
                            V4L2_CAP_STREAMING | V4L2_CAP_DEVICE_CAPS;
        strscpy(cap->driver, CAPTURE_DRV_NAME, sizeof(cap->driver));
 
        video->video_dev.v4l2_dev = vdev;
 
+       if (video->type == V4L2_BUF_TYPE_VIDEO_CAPTURE)
+               video->video_dev.device_caps = V4L2_CAP_VIDEO_CAPTURE;
+       else
+               video->video_dev.device_caps = V4L2_CAP_VIDEO_OUTPUT;
+       video->video_dev.device_caps |= V4L2_CAP_STREAMING;
        ret = video_register_device(&video->video_dev, VFL_TYPE_GRABBER, -1);
        if (ret < 0)
                pr_err("%s: could not register video device (%d)\n",
 
        strscpy(cap->driver, ISS_VIDEO_DRIVER_NAME, sizeof(cap->driver));
        strscpy(cap->card, video->video.name, sizeof(cap->card));
        strscpy(cap->bus_info, "media", sizeof(cap->bus_info));
-
-       if (video->type == V4L2_BUF_TYPE_VIDEO_CAPTURE)
-               cap->device_caps = V4L2_CAP_VIDEO_CAPTURE | V4L2_CAP_STREAMING;
-       else
-               cap->device_caps = V4L2_CAP_VIDEO_OUTPUT | V4L2_CAP_STREAMING;
-
        cap->capabilities = V4L2_CAP_DEVICE_CAPS | V4L2_CAP_STREAMING
                          | V4L2_CAP_VIDEO_CAPTURE | V4L2_CAP_VIDEO_OUTPUT;
 
        int ret;
 
        video->video.v4l2_dev = vdev;
+       if (video->type == V4L2_BUF_TYPE_VIDEO_CAPTURE)
+               video->video.device_caps = V4L2_CAP_VIDEO_CAPTURE;
+       else
+               video->video.device_caps = V4L2_CAP_VIDEO_OUTPUT;
+       video->video.device_caps |= V4L2_CAP_STREAMING;
 
        ret = video_register_device(&video->video, VFL_TYPE_GRABBER, -1);
        if (ret < 0)