aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/media/sn9c102_tas5110c1b.c
diff options
context:
space:
mode:
authorLuca Risolia <luca.risolia@studio.unibo.it>2006-02-25 06:50:47 +0000
committerGreg Kroah-Hartman <gregkh@suse.de>2006-03-20 14:49:59 -0800
commit2ffab02fea5880da284dc5511479b25a796a8dee (patch)
treeb94481244ae823598d06cd72472b9c76e9639bd1 /drivers/usb/media/sn9c102_tas5110c1b.c
parent7039f4224d4e40b06308d5c1a97427af1a142459 (diff)
downloadlinux-2ffab02fea5880da284dc5511479b25a796a8dee.tar.gz
[PATCH] USB: SN9C10x driver updates
SN9C10x driver updates. Changes: + new, - removed, * cleanup, @ bugfix @ Fix stream_interrupt() @ Fix vidioc_enum_input() and split vidioc_gs_input() @ Need usb_get|put_dev() when disconnecting, if the device is open * Use wait_event_interruptible_timeout() instead of wait_event_interruptible() when waiting for video frames * replace wake_up_interruptible(&wait_stream) with wake_up(&wait_stream) * Cleanups and updates in the documentation + Use per-device sensor structures + Add support for PAS202BCA image sensors + Add frame_timeout module parameter Signed-off-by: Luca Risolia <luca.risolia@studio.unibo.it> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb/media/sn9c102_tas5110c1b.c')
-rw-r--r--drivers/usb/media/sn9c102_tas5110c1b.c14
1 files changed, 9 insertions, 5 deletions
diff --git a/drivers/usb/media/sn9c102_tas5110c1b.c b/drivers/usb/media/sn9c102_tas5110c1b.c
index 32ddf236cafe..2e08c552f40a 100644
--- a/drivers/usb/media/sn9c102_tas5110c1b.c
+++ b/drivers/usb/media/sn9c102_tas5110c1b.c
@@ -142,14 +142,18 @@ static struct sn9c102_sensor tas5110c1b = {
int sn9c102_probe_tas5110c1b(struct sn9c102_device* cam)
{
- /* This sensor has no identifiers, so let's attach it anyway */
- sn9c102_attach_sensor(cam, &tas5110c1b);
+ const struct usb_device_id tas5110c1b_id_table[] = {
+ { USB_DEVICE(0x0c45, 0x6001), },
+ { USB_DEVICE(0x0c45, 0x6005), },
+ { USB_DEVICE(0x0c45, 0x60ab), },
+ { }
+ };
/* Sensor detection is based on USB pid/vid */
- if (le16_to_cpu(tas5110c1b.usbdev->descriptor.idProduct) != 0x6001 &&
- le16_to_cpu(tas5110c1b.usbdev->descriptor.idProduct) != 0x6005 &&
- le16_to_cpu(tas5110c1b.usbdev->descriptor.idProduct) != 0x60ab)
+ if (!sn9c102_match_id(cam, tas5110c1b_id_table))
return -ENODEV;
+ sn9c102_attach_sensor(cam, &tas5110c1b);
+
return 0;
}