From 20c5f4925e96719eb83a4f15765a6e653d24bfde Mon Sep 17 00:00:00 2001 From: Hans Verkuil Date: Tue, 12 Mar 2013 18:03:20 -0300 Subject: [PATCH] [media] solo6x10: fix querycap and update driver version 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 Signed-off-by: Mauro Carvalho Chehab --- drivers/staging/media/solo6x10/solo6x10.h | 11 +---------- drivers/staging/media/solo6x10/v4l2-enc.c | 9 ++++----- drivers/staging/media/solo6x10/v4l2.c | 9 ++++----- 3 files changed, 9 insertions(+), 20 deletions(-) diff --git a/drivers/staging/media/solo6x10/solo6x10.h b/drivers/staging/media/solo6x10/solo6x10.h index a75d9395b7b1..d8d61deb7237 100644 --- a/drivers/staging/media/solo6x10/solo6x10.h +++ b/drivers/staging/media/solo6x10/solo6x10.h @@ -71,16 +71,7 @@ #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. diff --git a/drivers/staging/media/solo6x10/v4l2-enc.c b/drivers/staging/media/solo6x10/v4l2-enc.c index bb4d60a4c723..bb5f1b82ddcd 100644 --- a/drivers/staging/media/solo6x10/v4l2-enc.c +++ b/drivers/staging/media/solo6x10/v4l2-enc.c @@ -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; } diff --git a/drivers/staging/media/solo6x10/v4l2.c b/drivers/staging/media/solo6x10/v4l2.c index ba603ce1f746..70da9e2187d2 100644 --- a/drivers/staging/media/solo6x10/v4l2.c +++ b/drivers/staging/media/solo6x10/v4l2.c @@ -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; } -- 2.20.1