[media] pvrusb2: For querystd, start with list of hardware-supported standards
authorMike Isely <isely@pobox.com>
Mon, 20 Feb 2012 05:40:56 +0000 (02:40 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Mon, 7 May 2012 19:58:00 +0000 (16:58 -0300)
The V4L querystd implementation appears to want to narrow down the
list of available standards by starting with a hardware-supported list
and then attempting to detect which among those are actually
available.  Prior to this change in the pvrusb2 driver we started with
all possible standards.  With this change in place we instead narrow
to just the standards that we know the hardware can actually support.
For example, this removes the ATSC standards from the list if we
aren't dealing with a hybrid device...

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/video/pvrusb2/pvrusb2-hdw.c

index d882c95..fb828ba 100644 (file)
@@ -2867,7 +2867,7 @@ static void pvr2_subdev_set_control(struct pvr2_hdw *hdw, int id,
 v4l2_std_id pvr2_hdw_get_detected_std(struct pvr2_hdw *hdw)
 {
        v4l2_std_id std;
-       std = V4L2_STD_ALL;
+       std = (v4l2_std_id)hdw->std_mask_avail;
        v4l2_device_call_all(&hdw->v4l2_dev, 0,
                             video, querystd, &std);
        return std;