OSDN Git Service

[media] solo6x10: fix querycap and update driver version
authorHans Verkuil <hans.verkuil@cisco.com>
Tue, 12 Mar 2013 21:03:20 +0000 (18:03 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Mon, 25 Mar 2013 11:26:07 +0000 (08:26 -0300)
Setup correct bus_info, let the v4l2 core set the version and add device_caps
support.
Also update the module version to 3.0.0 since this is a major upgrade.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/staging/media/solo6x10/solo6x10.h
drivers/staging/media/solo6x10/v4l2-enc.c
drivers/staging/media/solo6x10/v4l2.c

index a75d939..d8d61de 100644 (file)
 
 #define SOLO_MAX_CHANNELS              16
 
-/* Make sure these two match */
-#define SOLO6X10_VER_MAJOR             2
-#define SOLO6X10_VER_MINOR             4
-#define SOLO6X10_VER_SUB               4
-#define SOLO6X10_VER_NUM \
-       KERNEL_VERSION(SOLO6X10_VER_MAJOR, SOLO6X10_VER_MINOR, SOLO6X10_VER_SUB)
-#define SOLO6X10_VERSION \
-       __stringify(SOLO6X10_VER_MAJOR) "." \
-       __stringify(SOLO6X10_VER_MINOR) "." \
-       __stringify(SOLO6X10_VER_SUB)
+#define SOLO6X10_VERSION               "3.0.0"
 
 /*
  * The SOLO6x10 actually has 8 i2c channels, but we only use 2.
index bb4d60a..bb5f1b8 100644 (file)
@@ -991,12 +991,11 @@ static int solo_enc_querycap(struct file *file, void  *priv,
        strcpy(cap->driver, SOLO6X10_NAME);
        snprintf(cap->card, sizeof(cap->card), "Softlogic 6x10 Enc %d",
                 solo_enc->ch);
-       snprintf(cap->bus_info, sizeof(cap->bus_info), "PCI %s",
+       snprintf(cap->bus_info, sizeof(cap->bus_info), "PCI:%s",
                 pci_name(solo_dev->pdev));
-       cap->version = SOLO6X10_VER_NUM;
-       cap->capabilities =     V4L2_CAP_VIDEO_CAPTURE |
-                               V4L2_CAP_READWRITE |
-                               V4L2_CAP_STREAMING;
+       cap->device_caps = V4L2_CAP_VIDEO_CAPTURE |
+                       V4L2_CAP_READWRITE | V4L2_CAP_STREAMING;
+       cap->capabilities = cap->device_caps | V4L2_CAP_DEVICE_CAPS;
        return 0;
 }
 
index ba603ce..70da9e2 100644 (file)
@@ -476,12 +476,11 @@ static int solo_querycap(struct file *file, void  *priv,
 
        strcpy(cap->driver, SOLO6X10_NAME);
        strcpy(cap->card, "Softlogic 6x10");
-       snprintf(cap->bus_info, sizeof(cap->bus_info), "PCI %s",
+       snprintf(cap->bus_info, sizeof(cap->bus_info), "PCI:%s",
                 pci_name(solo_dev->pdev));
-       cap->version = SOLO6X10_VER_NUM;
-       cap->capabilities =     V4L2_CAP_VIDEO_CAPTURE |
-                               V4L2_CAP_READWRITE |
-                               V4L2_CAP_STREAMING;
+       cap->device_caps = V4L2_CAP_VIDEO_CAPTURE |
+                       V4L2_CAP_READWRITE | V4L2_CAP_STREAMING;
+       cap->capabilities = cap->device_caps | V4L2_CAP_DEVICE_CAPS;
        return 0;
 }