Commit 4d217b83 authored by Hans Verkuil's avatar Hans Verkuil Committed by Mauro Carvalho Chehab

[media] go7007: go7007: add device_caps and bus_info support to querycap

And don't set the version field, the core does that for you.
Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
parent c046981f
...@@ -171,6 +171,7 @@ enum go7007_parser_state { ...@@ -171,6 +171,7 @@ enum go7007_parser_state {
struct go7007 { struct go7007 {
struct device *dev; struct device *dev;
u8 bus_info[32];
struct go7007_board_info *board_info; struct go7007_board_info *board_info;
unsigned int board_id; unsigned int board_id;
int tuner_type; int tuner_type;
......
...@@ -1087,6 +1087,7 @@ static int go7007_usb_probe(struct usb_interface *intf, ...@@ -1087,6 +1087,7 @@ static int go7007_usb_probe(struct usb_interface *intf,
goto allocfail; goto allocfail;
usb->board = board; usb->board = board;
usb->usbdev = usbdev; usb->usbdev = usbdev;
usb_make_path(usbdev, go->bus_info, sizeof(go->bus_info));
go->board_id = id->driver_info; go->board_id = id->driver_info;
strncpy(go->name, name, sizeof(go->name)); strncpy(go->name, name, sizeof(go->name));
if (board->flags & GO7007_USB_EZUSB) if (board->flags & GO7007_USB_EZUSB)
......
...@@ -602,19 +602,15 @@ static int vidioc_querycap(struct file *file, void *priv, ...@@ -602,19 +602,15 @@ static int vidioc_querycap(struct file *file, void *priv,
strlcpy(cap->driver, "go7007", sizeof(cap->driver)); strlcpy(cap->driver, "go7007", sizeof(cap->driver));
strlcpy(cap->card, go->name, sizeof(cap->card)); strlcpy(cap->card, go->name, sizeof(cap->card));
#if 0 strlcpy(cap->bus_info, go->bus_info, sizeof(cap->bus_info));
strlcpy(cap->bus_info, dev_name(&dev->udev->dev), sizeof(cap->bus_info));
#endif
cap->version = KERNEL_VERSION(0, 9, 8);
cap->capabilities = V4L2_CAP_VIDEO_CAPTURE | V4L2_CAP_STREAMING; cap->capabilities = V4L2_CAP_VIDEO_CAPTURE | V4L2_CAP_STREAMING;
if (go->board_info->num_aud_inputs) if (go->board_info->num_aud_inputs)
cap->device_caps |= V4L2_CAP_AUDIO; cap->device_caps |= V4L2_CAP_AUDIO;
if (go->board_info->flags & GO7007_BOARD_HAS_TUNER) if (go->board_info->flags & GO7007_BOARD_HAS_TUNER)
cap->capabilities |= V4L2_CAP_TUNER; cap->device_caps |= V4L2_CAP_TUNER;
cap->capabilities = cap->device_caps | V4L2_CAP_DEVICE_CAPS;
return 0; return 0;
} }
......
...@@ -456,6 +456,7 @@ static int saa7134_go7007_init(struct saa7134_dev *dev) ...@@ -456,6 +456,7 @@ static int saa7134_go7007_init(struct saa7134_dev *dev)
if (go == NULL) if (go == NULL)
goto allocfail; goto allocfail;
go->board_id = GO7007_BOARDID_PCI_VOYAGER; go->board_id = GO7007_BOARDID_PCI_VOYAGER;
snprintf(go->bus_info, sizeof(go->bus_info), "PCI:%s", pci_name(dev->pci));
strncpy(go->name, saa7134_boards[dev->board].name, sizeof(go->name)); strncpy(go->name, saa7134_boards[dev->board].name, sizeof(go->name));
go->hpi_ops = &saa7134_go7007_hpi_ops; go->hpi_ops = &saa7134_go7007_hpi_ops;
go->hpi_context = saa; go->hpi_context = saa;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment