mirror of https://gitee.com/openkylin/linux.git
[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: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
parent
c046981f1a
commit
4d217b83fe
|
@ -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,
|
||||||
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,
|
||||||
|
|
||||||
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)
|
||||||
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;
|
||||||
|
|
Loading…
Reference in New Issue