diff options
Diffstat (limited to 'drivers/media')
-rw-r--r-- | drivers/media/video/usbvision/usbvision-cards.c | 1305 | ||||
-rw-r--r-- | drivers/media/video/usbvision/usbvision-cards.h | 65 | ||||
-rw-r--r-- | drivers/media/video/usbvision/usbvision-video.c | 47 | ||||
-rw-r--r-- | drivers/media/video/usbvision/usbvision.h | 2 |
4 files changed, 1258 insertions, 161 deletions
diff --git a/drivers/media/video/usbvision/usbvision-cards.c b/drivers/media/video/usbvision/usbvision-cards.c index 78d2c845b363..c63048da9713 100644 --- a/drivers/media/video/usbvision/usbvision-cards.c +++ b/drivers/media/video/usbvision/usbvision-cards.c | |||
@@ -1,6 +1,6 @@ | |||
1 | /* | 1 | /* |
2 | * USBVISION.H | 2 | * usbvision-cards.c |
3 | * usbvision header file | 3 | * usbvision cards definition file |
4 | * | 4 | * |
5 | * Copyright (c) 1999-2005 Joerg Heckenbach <joerg@heckenbach-aw.de> | 5 | * Copyright (c) 1999-2005 Joerg Heckenbach <joerg@heckenbach-aw.de> |
6 | * | 6 | * |
@@ -28,145 +28,1186 @@ | |||
28 | #include <media/v4l2-dev.h> | 28 | #include <media/v4l2-dev.h> |
29 | #include <media/tuner.h> | 29 | #include <media/tuner.h> |
30 | #include "usbvision.h" | 30 | #include "usbvision.h" |
31 | #include "usbvision-cards.h" | ||
31 | 32 | ||
32 | /* Supported Devices: A table for usbvision.c*/ | 33 | /* Supported Devices: A table for usbvision.c*/ |
33 | struct usbvision_device_data_st usbvision_device_data[] = { | 34 | struct usbvision_device_data_st usbvision_device_data[] = { |
34 | {0xfff0, 0xfff0, -1, CODEC_SAA7111, 3, V4L2_STD_NTSC, 1, 1, 1, 1, TUNER_PHILIPS_NTSC_M, -1, -1, -1, -1, -1, "Custom Dummy USBVision Device"}, | 35 | [DUMMY_DEVICE] = { |
35 | {0x0a6f, 0x0400, -1, CODEC_SAA7113, 4, V4L2_STD_NTSC, 1, 0, 1, 0, 0, -1, -1, -1, -1, -1, "Xanboo"}, | 36 | .Interface = -1, |
36 | {0x050d, 0x0106, -1, CODEC_SAA7113, 2, V4L2_STD_PAL, 1, 0, 1, 0, 0, -1, -1, 0, 3, 7, "Belkin USB VideoBus II Adapter"}, | 37 | .Codec = CODEC_SAA7111, |
37 | {0x050d, 0x0207, -1, CODEC_SAA7111, 2, V4L2_STD_NTSC, 1, 0, 1, 0, 0, -1, -1, -1, -1, -1, "Belkin Components USB VideoBus"}, | 38 | .VideoChannels = 3, |
38 | {0x050d, 0x0208, -1, CODEC_SAA7113, 2, V4L2_STD_PAL, 1, 0, 1, 0, 0, -1, -1, 0, 3, 7, "Belkin USB VideoBus II"}, | 39 | .VideoNorm = V4L2_STD_NTSC, |
39 | {0x0571, 0x0002, 0, CODEC_SAA7111, 2, V4L2_STD_PAL, 0, 0, 1, 0, 0, -1, -1, -1, -1, 7, "echoFX InterView Lite"}, | 40 | .AudioChannels = 1, |
40 | {0x0573, 0x0003, -1, CODEC_SAA7111, 2, V4L2_STD_NTSC, 1, 0, 1, 0, 0, -1, -1, -1, -1, -1, "USBGear USBG-V1 resp. HAMA USB"}, | 41 | .Radio = 1, |
41 | {0x0573, 0x0400, -1, CODEC_SAA7113, 4, V4L2_STD_NTSC, 0, 0, 1, 0, 0, -1, -1, 0, 3, 7, "D-Link V100"}, | 42 | .vbi = 1, |
42 | {0x0573, 0x2000, -1, CODEC_SAA7111, 2, V4L2_STD_NTSC, 1, 0, 1, 0, 0, -1, -1, -1, -1, -1, "X10 USB Camera"}, | 43 | .Tuner = 1, |
43 | {0x0573, 0x2d00, -1, CODEC_SAA7111, 2, V4L2_STD_PAL, 1, 0, 1, 0, 0, -1, -1, -1, 3, 7, "Hauppauge WinTV USB Live (PAL B/G)"}, | 44 | .TunerType = TUNER_PHILIPS_NTSC_M, |
44 | {0x0573, 0x2d01, -1, CODEC_SAA7113, 2, V4L2_STD_NTSC, 0, 0, 1, 0, 0, -1, -1, 0, 3, 7, "Hauppauge WinTV USB Live Pro (NTSC M/N)"}, | 45 | .Vin_Reg1 = -1, |
45 | {0x0573, 0x2101, -1, CODEC_SAA7113, 2, V4L2_STD_PAL, 2, 0, 1, 0, 0, -1, -1, 0, 3, 7, "Zoran Co. PMD (Nogatech) AV-grabber Manhattan"}, | 46 | .Vin_Reg2 = -1, |
46 | {0x0573, 0x4100, -1, CODEC_SAA7111, 3, V4L2_STD_NTSC, 1, 1, 1, 1, TUNER_PHILIPS_NTSC_M, -1, -1, -1, 20, -1, "Nogatech USB-TV (NTSC) FM"}, | 47 | .X_Offset = -1, |
47 | {0x0573, 0x4110, -1, CODEC_SAA7111, 3, V4L2_STD_NTSC, 1, 1, 1, 1, TUNER_PHILIPS_NTSC_M, -1, -1, -1, 20, -1, "PNY USB-TV (NTSC) FM"}, | 48 | .Y_Offset = -1, |
48 | {0x0573, 0x4450, 0, CODEC_SAA7113, 3, V4L2_STD_PAL, 1, 1, 1, 1, TUNER_PHILIPS_PAL, -1, -1, 0, 3, 7, "PixelView PlayTv-USB PRO (PAL) FM"}, | 49 | .Dvi_yuv = -1, |
49 | {0x0573, 0x4550, 0, CODEC_SAA7113, 3, V4L2_STD_PAL, 1, 1, 1, 1, TUNER_PHILIPS_PAL, -1, -1, 0, 3, 7, "ZTV ZT-721 2.4GHz USB A/V Receiver"}, | 50 | .ModelString = "Custom Dummy USBVision Device", |
50 | {0x0573, 0x4d00, -1, CODEC_SAA7111, 3, V4L2_STD_NTSC, 1, 0, 1, 1, TUNER_PHILIPS_NTSC_M, -1, -1, -1, 20, -1, "Hauppauge WinTV USB (NTSC M/N)"}, | 51 | }, |
51 | {0x0573, 0x4d01, -1, CODEC_SAA7111, 3, V4L2_STD_PAL, 1, 0, 1, 1, TUNER_PHILIPS_PAL, -1, -1, -1, -1, -1, "Hauppauge WinTV USB (PAL B/G)"}, | 52 | [XANBOO] = { |
52 | {0x0573, 0x4d02, -1, CODEC_SAA7111, 3, V4L2_STD_PAL, 1, 0, 1, 1, TUNER_PHILIPS_PAL, -1, -1, -1, -1, -1, "Hauppauge WinTV USB (PAL I)"}, | 53 | .Interface = -1, |
53 | {0x0573, 0x4d03, -1, CODEC_SAA7111, 3, V4L2_STD_SECAM, 1, 0, 1, 1, TUNER_PHILIPS_SECAM, -1, -1, -1, -1, -1, "Hauppauge WinTV USB (PAL/SECAM L)"}, | 54 | .Codec = CODEC_SAA7113, |
54 | {0x0573, 0x4d04, -1, CODEC_SAA7111, 3, V4L2_STD_PAL, 1, 0, 1, 1, TUNER_PHILIPS_PAL, -1, -1, -1, -1, -1, "Hauppauge WinTV USB (PAL D/K)"}, | 55 | .VideoChannels = 4, |
55 | {0x0573, 0x4d10, -1, CODEC_SAA7111, 3, V4L2_STD_NTSC, 1, 1, 1, 1, TUNER_PHILIPS_NTSC_M, -1, -1, -1, -1, -1, "Hauppauge WinTV USB (NTSC FM)"}, | 56 | .VideoNorm = V4L2_STD_NTSC, |
56 | {0x0573, 0x4d11, -1, CODEC_SAA7111, 3, V4L2_STD_PAL, 1, 1, 1, 1, TUNER_PHILIPS_PAL, -1, -1, -1, -1, -1, "Hauppauge WinTV USB (PAL B/G FM)"}, | 57 | .AudioChannels = 1, |
57 | {0x0573, 0x4d12, -1, CODEC_SAA7111, 3, V4L2_STD_PAL, 1, 1, 1, 1, TUNER_PHILIPS_PAL, -1, -1, -1, -1, -1, "Hauppauge WinTV USB (PAL I FM)"}, | 58 | .Radio = 0, |
58 | {0x0573, 0x4d14, -1, CODEC_SAA7111, 3, V4L2_STD_PAL, 1, 1, 1, 1, TUNER_PHILIPS_PAL, -1, -1, -1, -1, -1, "Hauppauge WinTV USB (PAL D/K FM)"}, | 59 | .vbi = 1, |
59 | {0x0573, 0x4d2a, 0, CODEC_SAA7113, 3, V4L2_STD_NTSC, 1, 1, 1, 1, TUNER_MICROTUNE_4049FM5, -1, -1, 0, 3, 7, "Hauppauge WinTV USB Pro (NTSC M/N)"}, | 60 | .Tuner = 0, |
60 | {0x0573, 0x4d2b, 0, CODEC_SAA7113, 3, V4L2_STD_NTSC, 1, 1, 1, 1, TUNER_MICROTUNE_4049FM5, -1, -1, 0, 3, 7, "Hauppauge WinTV USB Pro (NTSC M/N)"}, | 61 | .TunerType = 0, |
61 | {0x0573, 0x4d2c, 0, CODEC_SAA7113, 3, V4L2_STD_PAL, 1, 0, 1, 1, TUNER_PHILIPS_FM1216ME_MK3, -1, -1, 0, 3, 7, "Hauppauge WinTV USB Pro (PAL/SECAM B/G/I/D/K/L)"}, | 62 | .Vin_Reg1 = -1, |
62 | {0x0573, 0x4d20, 0, CODEC_SAA7113, 3, V4L2_STD_NTSC, 1, 1, 1, 1, TUNER_PHILIPS_NTSC_M, -1, -1, 0, 3, 7, "Hauppauge WinTV USB Pro (NTSC M/N)"}, | 63 | .Vin_Reg2 = -1, |
63 | {0x0573, 0x4d21, 0, CODEC_SAA7113, 3, V4L2_STD_PAL, 1, 0, 1, 1, TUNER_PHILIPS_PAL, -1, -1, 0, 3, 7, "Hauppauge WinTV USB Pro (PAL B/G)"}, | 64 | .X_Offset = -1, |
64 | {0x0573, 0x4d22, 0, CODEC_SAA7113, 3, V4L2_STD_PAL, 1, 0, 1, 1, TUNER_PHILIPS_PAL, -1, -1, 0, 3, 7, "Hauppauge WinTV USB Pro (PAL I)"}, | 65 | .Y_Offset = -1, |
65 | {0x0573, 0x4d23, -1, CODEC_SAA7113, 3, V4L2_STD_SECAM, 1, 0, 1, 1, TUNER_PHILIPS_SECAM, -1, -1, 0, 3, 7, "Hauppauge WinTV USB Pro (PAL/SECAM L)"}, | 66 | .Dvi_yuv = -1, |
66 | {0x0573, 0x4d24, -1, CODEC_SAA7113, 3, V4L2_STD_PAL, 1, 0, 1, 1, TUNER_PHILIPS_PAL, -1, -1, 0, 3, 7, "Hauppauge WinTV USB Pro (PAL D/K)"}, | 67 | .ModelString = "Xanboo", |
67 | {0x0573, 0x4d25, -1, CODEC_SAA7113, 3, V4L2_STD_SECAM, 1, 0, 1, 1, TUNER_PHILIPS_SECAM, -1, -1, 0, 3, 7, "Hauppauge WinTV USB Pro (PAL/SECAM BGDK/I/L)"}, | 68 | }, |
68 | {0x0573, 0x4d26, -1, CODEC_SAA7113, 3, V4L2_STD_SECAM, 1, 0, 1, 1, TUNER_PHILIPS_SECAM, -1, -1, 0, 3, 7, "Hauppauge WinTV USB Pro (PAL/SECAM BGDK/I/L)"}, | 69 | [BELKIN_VIDEOBUS_II] = { |
69 | {0x0573, 0x4d27, -1, CODEC_SAA7113, 3, V4L2_STD_PAL, 1, 0, 1, 1, TUNER_ALPS_TSBE1_PAL, -1, -1, 0, 3, 7, "Hauppauge WinTV USB Pro (PAL B/G)"}, | 70 | .Interface = -1, |
70 | {0x0573, 0x4d28, -1, CODEC_SAA7113, 3, V4L2_STD_PAL, 1, 0, 1, 1, TUNER_ALPS_TSBE1_PAL, -1, -1, 0, 3, 7, "Hauppauge WinTV USB Pro (PAL B/G,D/K)"}, | 71 | .Codec = CODEC_SAA7113, |
71 | {0x0573, 0x4d29, -1, CODEC_SAA7113, 3, V4L2_STD_PAL, 1, 0, 1, 1, TUNER_PHILIPS_PAL, -1, -1, 0, 3, 7, "Hauppauge WinTV USB Pro (PAL I,D/K)"}, | 72 | .VideoChannels = 2, |
72 | {0x0573, 0x4d30, -1, CODEC_SAA7113, 3, V4L2_STD_NTSC, 1, 1, 1, 1, TUNER_PHILIPS_NTSC_M, -1, -1, 0, 3, 7, "Hauppauge WinTV USB Pro (NTSC M/N FM)"}, | 73 | .VideoNorm = V4L2_STD_PAL, |
73 | {0x0573, 0x4d31, 0, CODEC_SAA7113, 3, V4L2_STD_PAL, 1, 1, 1, 1, TUNER_PHILIPS_PAL, -1, -1, 0, 3, 7, "Hauppauge WinTV USB Pro (PAL B/G FM)"}, | 74 | .AudioChannels = 1, |
74 | {0x0573, 0x4d32, 0, CODEC_SAA7113, 3, V4L2_STD_PAL, 1, 1, 1, 1, TUNER_PHILIPS_PAL, -1, -1, 0, 3, 7, "Hauppauge WinTV USB Pro (PAL I FM)"}, | 75 | .Radio = 0, |
75 | {0x0573, 0x4d34, 0, CODEC_SAA7113, 3, V4L2_STD_PAL, 1, 1, 1, 1, TUNER_PHILIPS_PAL, -1, -1, 0, 3, 7, "Hauppauge WinTV USB Pro (PAL D/K FM)"}, | 76 | .vbi = 1, |
76 | {0x0573, 0x4d35, 0, CODEC_SAA7113, 3, V4L2_STD_PAL, 1, 1, 1, 1, TUNER_MICROTUNE_4049FM5, -1, -1, 0, 3, 7, "Hauppauge WinTV USB Pro (Temic PAL/SECAM B/G/I/D/K/L FM)"}, | 77 | .Tuner = 0, |
77 | {0x0573, 0x4d36, 0, CODEC_SAA7113, 3, V4L2_STD_PAL, 1, 1, 1, 1, TUNER_MICROTUNE_4049FM5, -1, -1, 0, 3, 7, "Hauppauge WinTV USB Pro (Temic PAL B/G FM)"}, | 78 | .TunerType = 0, |
78 | {0x0573, 0x4d37, 0, CODEC_SAA7113, 3, V4L2_STD_PAL, 1, 1, 1, 1, TUNER_PHILIPS_FM1216ME_MK3, -1, -1, 0, 3, 7, "Hauppauge WinTV USB Pro (PAL/SECAM B/G/I/D/K/L FM)"}, | 79 | .Vin_Reg1 = -1, |
79 | {0x0573, 0x4d38, 0, CODEC_SAA7113, 3, V4L2_STD_NTSC, 1, 1, 1, 1, TUNER_PHILIPS_NTSC_M, -1, -1, 0, 3, 7, "Hauppauge WinTV USB Pro (NTSC M/N FM)"}, | 80 | .Vin_Reg2 = -1, |
80 | {0x0768, 0x0006, -1, CODEC_SAA7113, 3, V4L2_STD_NTSC, 1, 1, 1, 1, TUNER_PHILIPS_NTSC_M, -1, -1, 5, 5, -1, "Camtel Technology USB TV Genie Pro FM Model TVB330"}, | 81 | .X_Offset = 0, |
81 | {0x07d0, 0x0001, -1, CODEC_SAA7113, 2, V4L2_STD_PAL, 0, 0, 1, 0, 0, -1, -1, 0, 3, 7, "Digital Video Creator I"}, | 82 | .Y_Offset = 3, |
82 | {0x07d0, 0x0002, -1, CODEC_SAA7111, 2, V4L2_STD_NTSC, 0, 0, 1, 0, 0, -1, -1, 82, 20, 7, "Global Village GV-007 (NTSC)"}, | 83 | .Dvi_yuv = 7, |
83 | {0x07d0, 0x0003, 0, CODEC_SAA7113, 2, V4L2_STD_NTSC, 0, 0, 1, 0, 0, -1, -1, 0, 3, 7, "Dazzle Fusion Model DVC-50 Rev 1 (NTSC)"}, | 84 | .ModelString = "Belkin USB VideoBus II Adapter", |
84 | {0x07d0, 0x0004, 0, CODEC_SAA7113, 2, V4L2_STD_PAL, 0, 0, 1, 0, 0, -1, -1, 0, 3, 7, "Dazzle Fusion Model DVC-80 Rev 1 (PAL)"}, | 85 | }, |
85 | {0x07d0, 0x0005, 0, CODEC_SAA7113, 2, V4L2_STD_SECAM, 0, 0, 1, 0, 0, -1, -1, 0, 3, 7, "Dazzle Fusion Model DVC-90 Rev 1 (SECAM)"}, | 86 | [BELKIN_VIDEOBUS] = { |
86 | {0x07f8, 0x9104, 0, CODEC_SAA7113, 2, V4L2_STD_PAL, 1, 1, 1, 1, TUNER_PHILIPS_FM1216ME_MK3, -1, -1, 0, 3, 7, "Eskape Labs MyTV2Go"}, | 87 | .Interface = -1, |
87 | {0x2304, 0x010d, -1, CODEC_SAA7111, 3, V4L2_STD_PAL, 1, 0, 0, 1, TUNER_TEMIC_4066FY5_PAL_I, -1, -1, -1, -1, -1, "Pinnacle Studio PCTV USB (PAL)"}, | 88 | .Codec = CODEC_SAA7111, |
88 | {0x2304, 0x0109, -1, CODEC_SAA7111, 3, V4L2_STD_SECAM, 1, 0, 1, 1, TUNER_PHILIPS_SECAM, -1, -1, -1, -1, -1, "Pinnacle Studio PCTV USB (SECAM)"}, | 89 | .VideoChannels = 2, |
89 | {0x2304, 0x0110, -1, CODEC_SAA7111, 3, V4L2_STD_PAL, 1, 1, 1, 1, TUNER_PHILIPS_PAL, -1, -1,128, 23, -1, "Pinnacle Studio PCTV USB (PAL) FM"}, | 90 | .VideoNorm = V4L2_STD_NTSC, |
90 | {0x2304, 0x0111, -1, CODEC_SAA7111, 3, V4L2_STD_PAL, 1, 0, 1, 1, TUNER_PHILIPS_PAL, -1, -1, -1, -1, -1, "Miro PCTV USB"}, | 91 | .AudioChannels = 1, |
91 | {0x2304, 0x0112, -1, CODEC_SAA7111, 3, V4L2_STD_NTSC, 1, 1, 1, 1, TUNER_PHILIPS_NTSC_M, -1, -1, -1, -1, -1, "Pinnacle Studio PCTV USB (NTSC) FM"}, | 92 | .Radio = 0, |
92 | {0x2304, 0x0210, -1, CODEC_SAA7113, 3, V4L2_STD_PAL, 1, 1, 1, 1, TUNER_TEMIC_4009FR5_PAL, -1, -1, 0, 3, 7, "Pinnacle Studio PCTV USB (PAL) FM"}, | 93 | .vbi = 1, |
93 | {0x2304, 0x0212, -1, CODEC_SAA7111, 3, V4L2_STD_NTSC, 1, 1, 1, 1, TUNER_TEMIC_4039FR5_NTSC, -1, -1, 0, 3, 7, "Pinnacle Studio PCTV USB (NTSC) FM"}, | 94 | .Tuner = 0, |
94 | {0x2304, 0x0214, -1, CODEC_SAA7113, 3, V4L2_STD_PAL, 1, 1, 1, 1, TUNER_TEMIC_4009FR5_PAL, -1, -1, 0, 3, 7, "Pinnacle Studio PCTV USB (PAL) FM"}, | 95 | .TunerType = 0, |
95 | {0x2304, 0x0300, -1, CODEC_SAA7113, 2, V4L2_STD_NTSC, 1, 0, 1, 0, 0, -1, -1, 0, 3, 7, "Pinnacle Studio Linx Video input cable (NTSC)"}, | 96 | .Vin_Reg1 = -1, |
96 | {0x2304, 0x0301, -1, CODEC_SAA7113, 2, V4L2_STD_PAL, 1, 0, 1, 0, 0, -1, -1, 0, 3, 7, "Pinnacle Studio Linx Video input cable (PAL)"}, | 97 | .Vin_Reg2 = -1, |
97 | {0x2304, 0x0419, -1, CODEC_SAA7113, 3, V4L2_STD_PAL, 1, 1, 1, 1, TUNER_TEMIC_4009FR5_PAL, -1, -1, 0, 3, 7, "Pinnacle PCTV Bungee USB (PAL) FM"}, | 98 | .X_Offset = -1, |
98 | {0x2400, 0x4200, -1, CODEC_SAA7111, 3, V4L2_STD_NTSC, 1, 0, 1, 1, TUNER_PHILIPS_NTSC_M, -1, -1, -1, -1, -1, "Hauppauge WinTv-USB"}, | 99 | .Y_Offset = -1, |
100 | .Dvi_yuv = -1, | ||
101 | .ModelString = "Belkin Components USB VideoBus", | ||
102 | }, | ||
103 | [BELKIN_USB_VIDEOBUS_II] = { | ||
104 | .Interface = -1, | ||
105 | .Codec = CODEC_SAA7113, | ||
106 | .VideoChannels = 2, | ||
107 | .VideoNorm = V4L2_STD_PAL, | ||
108 | .AudioChannels = 1, | ||
109 | .Radio = 0, | ||
110 | .vbi = 1, | ||
111 | .Tuner = 0, | ||
112 | .TunerType = 0, | ||
113 | .Vin_Reg1 = -1, | ||
114 | .Vin_Reg2 = -1, | ||
115 | .X_Offset = 0, | ||
116 | .Y_Offset = 3, | ||
117 | .Dvi_yuv = 7, | ||
118 | .ModelString = "Belkin USB VideoBus II", | ||
119 | }, | ||
120 | [ECHOFX_INTERVIEW_LITE] = { | ||
121 | .Interface = 0, | ||
122 | .Codec = CODEC_SAA7111, | ||
123 | .VideoChannels = 2, | ||
124 | .VideoNorm = V4L2_STD_PAL, | ||
125 | .AudioChannels = 0, | ||
126 | .Radio = 0, | ||
127 | .vbi = 1, | ||
128 | .Tuner = 0, | ||
129 | .TunerType = 0, | ||
130 | .Vin_Reg1 = -1, | ||
131 | .Vin_Reg2 = -1, | ||
132 | .X_Offset = -1, | ||
133 | .Y_Offset = -1, | ||
134 | .Dvi_yuv = 7, | ||
135 | .ModelString = "echoFX InterView Lite", | ||
136 | }, | ||
137 | [USBGEAR_USBG_V1] = { | ||
138 | .Interface = -1, | ||
139 | .Codec = CODEC_SAA7111, | ||
140 | .VideoChannels = 2, | ||
141 | .VideoNorm = V4L2_STD_NTSC, | ||
142 | .AudioChannels = 1, | ||
143 | .Radio = 0, | ||
144 | .vbi = 1, | ||
145 | .Tuner = 0, | ||
146 | .TunerType = 0, | ||
147 | .Vin_Reg1 = -1, | ||
148 | .Vin_Reg2 = -1, | ||
149 | .X_Offset = -1, | ||
150 | .Y_Offset = -1, | ||
151 | .Dvi_yuv = -1, | ||
152 | .ModelString = "USBGear USBG-V1 resp. HAMA USB", | ||
153 | }, | ||
154 | [D_LINK_V100] = { | ||
155 | .Interface = -1, | ||
156 | .Codec = CODEC_SAA7113, | ||
157 | .VideoChannels = 4, | ||
158 | .VideoNorm = V4L2_STD_NTSC, | ||
159 | .AudioChannels = 0, | ||
160 | .Radio = 0, | ||
161 | .vbi = 1, | ||
162 | .Tuner = 0, | ||
163 | .TunerType = 0, | ||
164 | .Vin_Reg1 = -1, | ||
165 | .Vin_Reg2 = -1, | ||
166 | .X_Offset = 0, | ||
167 | .Y_Offset = 3, | ||
168 | .Dvi_yuv = 7, | ||
169 | .ModelString = "D-Link V100", | ||
170 | }, | ||
171 | [X10_USB_CAMERA] = { | ||
172 | .Interface = -1, | ||
173 | .Codec = CODEC_SAA7111, | ||
174 | .VideoChannels = 2, | ||
175 | .VideoNorm = V4L2_STD_NTSC, | ||
176 | .AudioChannels = 1, | ||
177 | .Radio = 0, | ||
178 | .vbi = 1, | ||
179 | .Tuner = 0, | ||
180 | .TunerType = 0, | ||
181 | .Vin_Reg1 = -1, | ||
182 | .Vin_Reg2 = -1, | ||
183 | .X_Offset = -1, | ||
184 | .Y_Offset = -1, | ||
185 | .Dvi_yuv = -1, | ||
186 | .ModelString = "X10 USB Camera", | ||
187 | }, | ||
188 | [HPG_WINTV_LIVE_PAL_BG] = { | ||
189 | .Interface = -1, | ||
190 | .Codec = CODEC_SAA7111, | ||
191 | .VideoChannels = 2, | ||
192 | .VideoNorm = V4L2_STD_PAL, | ||
193 | .AudioChannels = 1, | ||
194 | .Radio = 0, | ||
195 | .vbi = 1, | ||
196 | .Tuner = 0, | ||
197 | .TunerType = 0, | ||
198 | .Vin_Reg1 = -1, | ||
199 | .Vin_Reg2 = -1, | ||
200 | .X_Offset = -1, | ||
201 | .Y_Offset = 3, | ||
202 | .Dvi_yuv = 7, | ||
203 | .ModelString = "Hauppauge WinTV USB Live (PAL B/G)", | ||
204 | }, | ||
205 | [HPG_WINTV_LIVE_PRO_NTSC_MN] = { | ||
206 | .Interface = -1, | ||
207 | .Codec = CODEC_SAA7113, | ||
208 | .VideoChannels = 2, | ||
209 | .VideoNorm = V4L2_STD_NTSC, | ||
210 | .AudioChannels = 0, | ||
211 | .Radio = 0, | ||
212 | .vbi = 1, | ||
213 | .Tuner = 0, | ||
214 | .TunerType = 0, | ||
215 | .Vin_Reg1 = -1, | ||
216 | .Vin_Reg2 = -1, | ||
217 | .X_Offset = 0, | ||
218 | .Y_Offset = 3, | ||
219 | .Dvi_yuv = 7, | ||
220 | .ModelString = "Hauppauge WinTV USB Live Pro (NTSC M/N)", | ||
221 | }, | ||
222 | [ZORAN_PMD_NOGATECH] = { | ||
223 | .Interface = -1, | ||
224 | .Codec = CODEC_SAA7113, | ||
225 | .VideoChannels = 2, | ||
226 | .VideoNorm = V4L2_STD_PAL, | ||
227 | .AudioChannels = 2, | ||
228 | .Radio = 0, | ||
229 | .vbi = 1, | ||
230 | .Tuner = 0, | ||
231 | .TunerType = 0, | ||
232 | .Vin_Reg1 = -1, | ||
233 | .Vin_Reg2 = -1, | ||
234 | .X_Offset = 0, | ||
235 | .Y_Offset = 3, | ||
236 | .Dvi_yuv = 7, | ||
237 | .ModelString = "Zoran Co. PMD (Nogatech) AV-grabber Manhattan", | ||
238 | }, | ||
239 | [NOGATECH_USB_TV_NTSC_FM] = { | ||
240 | .Interface = -1, | ||
241 | .Codec = CODEC_SAA7111, | ||
242 | .VideoChannels = 3, | ||
243 | .VideoNorm = V4L2_STD_NTSC, | ||
244 | .AudioChannels = 1, | ||
245 | .Radio = 1, | ||
246 | .vbi = 1, | ||
247 | .Tuner = 1, | ||
248 | .TunerType = TUNER_PHILIPS_NTSC_M, | ||
249 | .Vin_Reg1 = -1, | ||
250 | .Vin_Reg2 = -1, | ||
251 | .X_Offset = -1, | ||
252 | .Y_Offset = 20, | ||
253 | .Dvi_yuv = -1, | ||
254 | .ModelString = "Nogatech USB-TV (NTSC) FM", | ||
255 | }, | ||
256 | [PNY_USB_TV_NTSC_FM] = { | ||
257 | .Interface = -1, | ||
258 | .Codec = CODEC_SAA7111, | ||
259 | .VideoChannels = 3, | ||
260 | .VideoNorm = V4L2_STD_NTSC, | ||
261 | .AudioChannels = 1, | ||
262 | .Radio = 1, | ||
263 | .vbi = 1, | ||
264 | .Tuner = 1, | ||
265 | .TunerType = TUNER_PHILIPS_NTSC_M, | ||
266 | .Vin_Reg1 = -1, | ||
267 | .Vin_Reg2 = -1, | ||
268 | .X_Offset = -1, | ||
269 | .Y_Offset = 20, | ||
270 | .Dvi_yuv = -1, | ||
271 | .ModelString = "PNY USB-TV (NTSC) FM", | ||
272 | }, | ||
273 | [PV_PLAYTV_USB_PRO_PAL_FM] = { | ||
274 | .Interface = 0, | ||
275 | .Codec = CODEC_SAA7113, | ||
276 | .VideoChannels = 3, | ||
277 | .VideoNorm = V4L2_STD_PAL, | ||
278 | .AudioChannels = 1, | ||
279 | .Radio = 1, | ||
280 | .vbi = 1, | ||
281 | .Tuner = 1, | ||
282 | .TunerType = TUNER_PHILIPS_PAL, | ||
283 | .Vin_Reg1 = -1, | ||
284 | .Vin_Reg2 = -1, | ||
285 | .X_Offset = 0, | ||
286 | .Y_Offset = 3, | ||
287 | .Dvi_yuv = 7, | ||
288 | .ModelString = "PixelView PlayTv-USB PRO (PAL) FM", | ||
289 | }, | ||
290 | [ZT_721] = { | ||
291 | .Interface = 0, | ||
292 | .Codec = CODEC_SAA7113, | ||
293 | .VideoChannels = 3, | ||
294 | .VideoNorm = V4L2_STD_PAL, | ||
295 | .AudioChannels = 1, | ||
296 | .Radio = 1, | ||
297 | .vbi = 1, | ||
298 | .Tuner = 1, | ||
299 | .TunerType = TUNER_PHILIPS_PAL, | ||
300 | .Vin_Reg1 = -1, | ||
301 | .Vin_Reg2 = -1, | ||
302 | .X_Offset = 0, | ||
303 | .Y_Offset = 3, | ||
304 | .Dvi_yuv = 7, | ||
305 | .ModelString = "ZTV ZT-721 2.4GHz USB A/V Receiver", | ||
306 | }, | ||
307 | [HPG_WINTV_NTSC_MN] = { | ||
308 | .Interface = -1, | ||
309 | .Codec = CODEC_SAA7111, | ||
310 | .VideoChannels = 3, | ||
311 | .VideoNorm = V4L2_STD_NTSC, | ||
312 | .AudioChannels = 1, | ||
313 | .Radio = 0, | ||
314 | .vbi = 1, | ||
315 | .Tuner = 1, | ||
316 | .TunerType = TUNER_PHILIPS_NTSC_M, | ||
317 | .Vin_Reg1 = -1, | ||
318 | .Vin_Reg2 = -1, | ||
319 | .X_Offset = -1, | ||
320 | .Y_Offset = 20, | ||
321 | .Dvi_yuv = -1, | ||
322 | .ModelString = "Hauppauge WinTV USB (NTSC M/N)", | ||
323 | }, | ||
324 | [HPG_WINTV_PAL_BG] = { | ||
325 | .Interface = -1, | ||
326 | .Codec = CODEC_SAA7111, | ||
327 | .VideoChannels = 3, | ||
328 | .VideoNorm = V4L2_STD_PAL, | ||
329 | .AudioChannels = 1, | ||
330 | .Radio = 0, | ||
331 | .vbi = 1, | ||
332 | .Tuner = 1, | ||
333 | .TunerType = TUNER_PHILIPS_PAL, | ||
334 | .Vin_Reg1 = -1, | ||
335 | .Vin_Reg2 = -1, | ||
336 | .X_Offset = -1, | ||
337 | .Y_Offset = -1, | ||
338 | .Dvi_yuv = -1, | ||
339 | .ModelString = "Hauppauge WinTV USB (PAL B/G)", | ||
340 | }, | ||
341 | [HPG_WINTV_PAL_I] = { | ||
342 | .Interface = -1, | ||
343 | .Codec = CODEC_SAA7111, | ||
344 | .VideoChannels = 3, | ||
345 | .VideoNorm = V4L2_STD_PAL, | ||
346 | .AudioChannels = 1, | ||
347 | .Radio = 0, | ||
348 | .vbi = 1, | ||
349 | .Tuner = 1, | ||
350 | .TunerType = TUNER_PHILIPS_PAL, | ||
351 | .Vin_Reg1 = -1, | ||
352 | .Vin_Reg2 = -1, | ||
353 | .X_Offset = -1, | ||
354 | .Y_Offset = -1, | ||
355 | .Dvi_yuv = -1, | ||
356 | .ModelString = "Hauppauge WinTV USB (PAL I)", | ||
357 | }, | ||
358 | [HPG_WINTV_PAL_SECAM_L] = { | ||
359 | .Interface = -1, | ||
360 | .Codec = CODEC_SAA7111, | ||
361 | .VideoChannels = 3, | ||
362 | .VideoNorm = V4L2_STD_SECAM, | ||
363 | .AudioChannels = 1, | ||
364 | .Radio = 0, | ||
365 | .vbi = 1, | ||
366 | .Tuner = 1, | ||
367 | .TunerType = TUNER_PHILIPS_SECAM, | ||
368 | .Vin_Reg1 = -1, | ||
369 | .Vin_Reg2 = -1, | ||
370 | .X_Offset = -1, | ||
371 | .Y_Offset = -1, | ||
372 | .Dvi_yuv = -1, | ||
373 | .ModelString = "Hauppauge WinTV USB (PAL/SECAM L)", | ||
374 | }, | ||
375 | [HPG_WINTV_PAL_D_K] = { | ||
376 | .Interface = -1, | ||
377 | .Codec = CODEC_SAA7111, | ||
378 | .VideoChannels = 3, | ||
379 | .VideoNorm = V4L2_STD_PAL, | ||
380 | .AudioChannels = 1, | ||
381 | .Radio = 0, | ||
382 | .vbi = 1, | ||
383 | .Tuner = 1, | ||
384 | .TunerType = TUNER_PHILIPS_PAL, | ||
385 | .Vin_Reg1 = -1, | ||
386 | .Vin_Reg2 = -1, | ||
387 | .X_Offset = -1, | ||
388 | .Y_Offset = -1, | ||
389 | .Dvi_yuv = -1, | ||
390 | .ModelString = "Hauppauge WinTV USB (PAL D/K)", | ||
391 | }, | ||
392 | [HPG_WINTV_NTSC_FM] = { | ||
393 | .Interface = -1, | ||
394 | .Codec = CODEC_SAA7111, | ||
395 | .VideoChannels = 3, | ||
396 | .VideoNorm = V4L2_STD_NTSC, | ||
397 | .AudioChannels = 1, | ||
398 | .Radio = 1, | ||
399 | .vbi = 1, | ||
400 | .Tuner = 1, | ||
401 | .TunerType = TUNER_PHILIPS_NTSC_M, | ||
402 | .Vin_Reg1 = -1, | ||
403 | .Vin_Reg2 = -1, | ||
404 | .X_Offset = -1, | ||
405 | .Y_Offset = -1, | ||
406 | .Dvi_yuv = -1, | ||
407 | .ModelString = "Hauppauge WinTV USB (NTSC FM)", | ||
408 | }, | ||
409 | [HPG_WINTV_PAL_BG_FM] = { | ||
410 | .Interface = -1, | ||
411 | .Codec = CODEC_SAA7111, | ||
412 | .VideoChannels = 3, | ||
413 | .VideoNorm = V4L2_STD_PAL, | ||
414 | .AudioChannels = 1, | ||
415 | .Radio = 1, | ||
416 | .vbi = 1, | ||
417 | .Tuner = 1, | ||
418 | .TunerType = TUNER_PHILIPS_PAL, | ||
419 | .Vin_Reg1 = -1, | ||
420 | .Vin_Reg2 = -1, | ||
421 | .X_Offset = -1, | ||
422 | .Y_Offset = -1, | ||
423 | .Dvi_yuv = -1, | ||
424 | .ModelString = "Hauppauge WinTV USB (PAL B/G FM)", | ||
425 | }, | ||
426 | [HPG_WINTV_PAL_I_FM] = { | ||
427 | .Interface = -1, | ||
428 | .Codec = CODEC_SAA7111, | ||
429 | .VideoChannels = 3, | ||
430 | .VideoNorm = V4L2_STD_PAL, | ||
431 | .AudioChannels = 1, | ||
432 | .Radio = 1, | ||
433 | .vbi = 1, | ||
434 | .Tuner = 1, | ||
435 | .TunerType = TUNER_PHILIPS_PAL, | ||
436 | .Vin_Reg1 = -1, | ||
437 | .Vin_Reg2 = -1, | ||
438 | .X_Offset = -1, | ||
439 | .Y_Offset = -1, | ||
440 | .Dvi_yuv = -1, | ||
441 | .ModelString = "Hauppauge WinTV USB (PAL I FM)", | ||
442 | }, | ||
443 | [HPG_WINTV_PAL_D_K_FM] = { | ||
444 | .Interface = -1, | ||
445 | .Codec = CODEC_SAA7111, | ||
446 | .VideoChannels = 3, | ||
447 | .VideoNorm = V4L2_STD_PAL, | ||
448 | .AudioChannels = 1, | ||
449 | .Radio = 1, | ||
450 | .vbi = 1, | ||
451 | .Tuner = 1, | ||
452 | .TunerType = TUNER_PHILIPS_PAL, | ||
453 | .Vin_Reg1 = -1, | ||
454 | .Vin_Reg2 = -1, | ||
455 | .X_Offset = -1, | ||
456 | .Y_Offset = -1, | ||
457 | .Dvi_yuv = -1, | ||
458 | .ModelString = "Hauppauge WinTV USB (PAL D/K FM)", | ||
459 | }, | ||
460 | [HPG_WINTV_PRO_NTSC_MN] = { | ||
461 | .Interface = 0, | ||
462 | .Codec = CODEC_SAA7113, | ||
463 | .VideoChannels = 3, | ||
464 | .VideoNorm = V4L2_STD_NTSC, | ||
465 | .AudioChannels = 1, | ||
466 | .Radio = 1, | ||
467 | .vbi = 1, | ||
468 | .Tuner = 1, | ||
469 | .TunerType = TUNER_MICROTUNE_4049FM5, | ||
470 | .Vin_Reg1 = -1, | ||
471 | .Vin_Reg2 = -1, | ||
472 | .X_Offset = 0, | ||
473 | .Y_Offset = 3, | ||
474 | .Dvi_yuv = 7, | ||
475 | .ModelString = "Hauppauge WinTV USB Pro (NTSC M/N)", | ||
476 | }, | ||
477 | [HPG_WINTV_PRO_NTSC_MN_V2] = { | ||
478 | .Interface = 0, | ||
479 | .Codec = CODEC_SAA7113, | ||
480 | .VideoChannels = 3, | ||
481 | .VideoNorm = V4L2_STD_NTSC, | ||
482 | .AudioChannels = 1, | ||
483 | .Radio = 1, | ||
484 | .vbi = 1, | ||
485 | .Tuner = 1, | ||
486 | .TunerType = TUNER_MICROTUNE_4049FM5, | ||
487 | .Vin_Reg1 = -1, | ||
488 | .Vin_Reg2 = -1, | ||
489 | .X_Offset = 0, | ||
490 | .Y_Offset = 3, | ||
491 | .Dvi_yuv = 7, | ||
492 | .ModelString = "Hauppauge WinTV USB Pro (NTSC M/N) V2", | ||
493 | }, | ||
494 | [HPG_WINTV_PRO_PAL] = { | ||
495 | .Interface = 0, | ||
496 | .Codec = CODEC_SAA7113, | ||
497 | .VideoChannels = 3, | ||
498 | .VideoNorm = V4L2_STD_PAL, | ||
499 | .AudioChannels = 1, | ||
500 | .Radio = 0, | ||
501 | .vbi = 1, | ||
502 | .Tuner = 1, | ||
503 | .TunerType = TUNER_PHILIPS_FM1216ME_MK3, | ||
504 | .Vin_Reg1 = -1, | ||
505 | .Vin_Reg2 = -1, | ||
506 | .X_Offset = 0, | ||
507 | .Y_Offset = 3, | ||
508 | .Dvi_yuv = 7, | ||
509 | .ModelString = "Hauppauge WinTV USB Pro (PAL/SECAM B/G/I/D/K/L)", | ||
510 | }, | ||
511 | [HPG_WINTV_PRO_NTSC_MN_V3] = { | ||
512 | .Interface = 0, | ||
513 | .Codec = CODEC_SAA7113, | ||
514 | .VideoChannels = 3, | ||
515 | .VideoNorm = V4L2_STD_NTSC, | ||
516 | .AudioChannels = 1, | ||
517 | .Radio = 1, | ||
518 | .vbi = 1, | ||
519 | .Tuner = 1, | ||
520 | .TunerType = TUNER_PHILIPS_NTSC_M, | ||
521 | .Vin_Reg1 = -1, | ||
522 | .Vin_Reg2 = -1, | ||
523 | .X_Offset = 0, | ||
524 | .Y_Offset = 3, | ||
525 | .Dvi_yuv = 7, | ||
526 | .ModelString = "Hauppauge WinTV USB Pro (NTSC M/N) V3", | ||
527 | }, | ||
528 | [HPG_WINTV_PRO_PAL_BG] = { | ||
529 | .Interface = 0, | ||
530 | .Codec = CODEC_SAA7113, | ||
531 | .VideoChannels = 3, | ||
532 | .VideoNorm = V4L2_STD_PAL, | ||
533 | .AudioChannels = 1, | ||
534 | .Radio = 0, | ||
535 | .vbi = 1, | ||
536 | .Tuner = 1, | ||
537 | .TunerType = TUNER_PHILIPS_PAL, | ||
538 | .Vin_Reg1 = -1, | ||
539 | .Vin_Reg2 = -1, | ||
540 | .X_Offset = 0, | ||
541 | .Y_Offset = 3, | ||
542 | .Dvi_yuv = 7, | ||
543 | .ModelString = "Hauppauge WinTV USB Pro (PAL B/G)", | ||
544 | }, | ||
545 | [HPG_WINTV_PRO_PAL_I] = { | ||
546 | .Interface = 0, | ||
547 | .Codec = CODEC_SAA7113, | ||
548 | .VideoChannels = 3, | ||
549 | .VideoNorm = V4L2_STD_PAL, | ||
550 | .AudioChannels = 1, | ||
551 | .Radio = 0, | ||
552 | .vbi = 1, | ||
553 | .Tuner = 1, | ||
554 | .TunerType = TUNER_PHILIPS_PAL, | ||
555 | .Vin_Reg1 = -1, | ||
556 | .Vin_Reg2 = -1, | ||
557 | .X_Offset = 0, | ||
558 | .Y_Offset = 3, | ||
559 | .Dvi_yuv = 7, | ||
560 | .ModelString = "Hauppauge WinTV USB Pro (PAL I)", | ||
561 | }, | ||
562 | [HPG_WINTV_PRO_PAL_SECAM_L] = { | ||
563 | .Interface = -1, | ||
564 | .Codec = CODEC_SAA7113, | ||
565 | .VideoChannels = 3, | ||
566 | .VideoNorm = V4L2_STD_SECAM, | ||
567 | .AudioChannels = 1, | ||
568 | .Radio = 0, | ||
569 | .vbi = 1, | ||
570 | .Tuner = 1, | ||
571 | .TunerType = TUNER_PHILIPS_SECAM, | ||
572 | .Vin_Reg1 = -1, | ||
573 | .Vin_Reg2 = -1, | ||
574 | .X_Offset = 0, | ||
575 | .Y_Offset = 3, | ||
576 | .Dvi_yuv = 7, | ||
577 | .ModelString = "Hauppauge WinTV USB Pro (PAL/SECAM L)", | ||
578 | }, | ||
579 | [HPG_WINTV_PRO_PAL_D_K] = { | ||
580 | .Interface = -1, | ||
581 | .Codec = CODEC_SAA7113, | ||
582 | .VideoChannels = 3, | ||
583 | .VideoNorm = V4L2_STD_PAL, | ||
584 | .AudioChannels = 1, | ||
585 | .Radio = 0, | ||
586 | .vbi = 1, | ||
587 | .Tuner = 1, | ||
588 | .TunerType = TUNER_PHILIPS_PAL, | ||
589 | .Vin_Reg1 = -1, | ||
590 | .Vin_Reg2 = -1, | ||
591 | .X_Offset = 0, | ||
592 | .Y_Offset = 3, | ||
593 | .Dvi_yuv = 7, | ||
594 | .ModelString = "Hauppauge WinTV USB Pro (PAL D/K)", | ||
595 | }, | ||
596 | [HPG_WINTV_PRO_PAL_SECAM] = { | ||
597 | .Interface = -1, | ||
598 | .Codec = CODEC_SAA7113, | ||
599 | .VideoChannels = 3, | ||
600 | .VideoNorm = V4L2_STD_SECAM, | ||
601 | .AudioChannels = 1, | ||
602 | .Radio = 0, | ||
603 | .vbi = 1, | ||
604 | .Tuner = 1, | ||
605 | .TunerType = TUNER_PHILIPS_SECAM, | ||
606 | .Vin_Reg1 = -1, | ||
607 | .Vin_Reg2 = -1, | ||
608 | .X_Offset = 0, | ||
609 | .Y_Offset = 3, | ||
610 | .Dvi_yuv = 7, | ||
611 | .ModelString = "Hauppauge WinTV USB Pro (PAL/SECAM BGDK/I/L)", | ||
612 | }, | ||
613 | [HPG_WINTV_PRO_PAL_SECAM_V2] = { | ||
614 | .Interface = -1, | ||
615 | .Codec = CODEC_SAA7113, | ||
616 | .VideoChannels = 3, | ||
617 | .VideoNorm = V4L2_STD_SECAM, | ||
618 | .AudioChannels = 1, | ||
619 | .Radio = 0, | ||
620 | .vbi = 1, | ||
621 | .Tuner = 1, | ||
622 | .TunerType = TUNER_PHILIPS_SECAM, | ||
623 | .Vin_Reg1 = -1, | ||
624 | .Vin_Reg2 = -1, | ||
625 | .X_Offset = 0, | ||
626 | .Y_Offset = 3, | ||
627 | .Dvi_yuv = 7, | ||
628 | .ModelString = "Hauppauge WinTV USB Pro (PAL/SECAM BGDK/I/L) V2", | ||
629 | }, | ||
630 | [HPG_WINTV_PRO_PAL_BG_V2] = { | ||
631 | .Interface = -1, | ||
632 | .Codec = CODEC_SAA7113, | ||
633 | .VideoChannels = 3, | ||
634 | .VideoNorm = V4L2_STD_PAL, | ||
635 | .AudioChannels = 1, | ||
636 | .Radio = 0, | ||
637 | .vbi = 1, | ||
638 | .Tuner = 1, | ||
639 | .TunerType = TUNER_ALPS_TSBE1_PAL, | ||
640 | .Vin_Reg1 = -1, | ||
641 | .Vin_Reg2 = -1, | ||
642 | .X_Offset = 0, | ||
643 | .Y_Offset = 3, | ||
644 | .Dvi_yuv = 7, | ||
645 | .ModelString = "Hauppauge WinTV USB Pro (PAL B/G) V2", | ||
646 | }, | ||
647 | [HPG_WINTV_PRO_PAL_BG_D_K] = { | ||
648 | .Interface = -1, | ||
649 | .Codec = CODEC_SAA7113, | ||
650 | .VideoChannels = 3, | ||
651 | .VideoNorm = V4L2_STD_PAL, | ||
652 | .AudioChannels = 1, | ||
653 | .Radio = 0, | ||
654 | .vbi = 1, | ||
655 | .Tuner = 1, | ||
656 | .TunerType = TUNER_ALPS_TSBE1_PAL, | ||
657 | .Vin_Reg1 = -1, | ||
658 | .Vin_Reg2 = -1, | ||
659 | .X_Offset = 0, | ||
660 | .Y_Offset = 3, | ||
661 | .Dvi_yuv = 7, | ||
662 | .ModelString = "Hauppauge WinTV USB Pro (PAL B/G,D/K)", | ||
663 | }, | ||
664 | [HPG_WINTV_PRO_PAL_I_D_K] = { | ||
665 | .Interface = -1, | ||
666 | .Codec = CODEC_SAA7113, | ||
667 | .VideoChannels = 3, | ||
668 | .VideoNorm = V4L2_STD_PAL, | ||
669 | .AudioChannels = 1, | ||
670 | .Radio = 0, | ||
671 | .vbi = 1, | ||
672 | .Tuner = 1, | ||
673 | .TunerType = TUNER_PHILIPS_PAL, | ||
674 | .Vin_Reg1 = -1, | ||
675 | .Vin_Reg2 = -1, | ||
676 | .X_Offset = 0, | ||
677 | .Y_Offset = 3, | ||
678 | .Dvi_yuv = 7, | ||
679 | .ModelString = "Hauppauge WinTV USB Pro (PAL I,D/K)", | ||
680 | }, | ||
681 | [HPG_WINTV_PRO_NTSC_MN_FM] = { | ||
682 | .Interface = -1, | ||
683 | .Codec = CODEC_SAA7113, | ||
684 | .VideoChannels = 3, | ||
685 | .VideoNorm = V4L2_STD_NTSC, | ||
686 | .AudioChannels = 1, | ||
687 | .Radio = 1, | ||
688 | .vbi = 1, | ||
689 | .Tuner = 1, | ||
690 | .TunerType = TUNER_PHILIPS_NTSC_M, | ||
691 | .Vin_Reg1 = -1, | ||
692 | .Vin_Reg2 = -1, | ||
693 | .X_Offset = 0, | ||
694 | .Y_Offset = 3, | ||
695 | .Dvi_yuv = 7, | ||
696 | .ModelString = "Hauppauge WinTV USB Pro (NTSC M/N FM)", | ||
697 | }, | ||
698 | [HPG_WINTV_PRO_PAL_BG_FM] = { | ||
699 | .Interface = 0, | ||
700 | .Codec = CODEC_SAA7113, | ||
701 | .VideoChannels = 3, | ||
702 | .VideoNorm = V4L2_STD_PAL, | ||
703 | .AudioChannels = 1, | ||
704 | .Radio = 1, | ||
705 | .vbi = 1, | ||
706 | .Tuner = 1, | ||
707 | .TunerType = TUNER_PHILIPS_PAL, | ||
708 | .Vin_Reg1 = -1, | ||
709 | .Vin_Reg2 = -1, | ||
710 | .X_Offset = 0, | ||
711 | .Y_Offset = 3, | ||
712 | .Dvi_yuv = 7, | ||
713 | .ModelString = "Hauppauge WinTV USB Pro (PAL B/G FM)", | ||
714 | }, | ||
715 | [HPG_WINTV_PRO_PAL_I_FM] = { | ||
716 | .Interface = 0, | ||
717 | .Codec = CODEC_SAA7113, | ||
718 | .VideoChannels = 3, | ||
719 | .VideoNorm = V4L2_STD_PAL, | ||
720 | .AudioChannels = 1, | ||
721 | .Radio = 1, | ||
722 | .vbi = 1, | ||
723 | .Tuner = 1, | ||
724 | .TunerType = TUNER_PHILIPS_PAL, | ||
725 | .Vin_Reg1 = -1, | ||
726 | .Vin_Reg2 = -1, | ||
727 | .X_Offset = 0, | ||
728 | .Y_Offset = 3, | ||
729 | .Dvi_yuv = 7, | ||
730 | .ModelString = "Hauppauge WinTV USB Pro (PAL I FM)", | ||
731 | }, | ||
732 | [HPG_WINTV_PRO_PAL_D_K_FM] = { | ||
733 | .Interface = 0, | ||
734 | .Codec = CODEC_SAA7113, | ||
735 | .VideoChannels = 3, | ||
736 | .VideoNorm = V4L2_STD_PAL, | ||
737 | .AudioChannels = 1, | ||
738 | .Radio = 1, | ||
739 | .vbi = 1, | ||
740 | .Tuner = 1, | ||
741 | .TunerType = TUNER_PHILIPS_PAL, | ||
742 | .Vin_Reg1 = -1, | ||
743 | .Vin_Reg2 = -1, | ||
744 | .X_Offset = 0, | ||
745 | .Y_Offset = 3, | ||
746 | .Dvi_yuv = 7, | ||
747 | .ModelString = "Hauppauge WinTV USB Pro (PAL D/K FM)", | ||
748 | }, | ||
749 | [HPG_WINTV_PRO_TEMIC_PAL_FM] = { | ||
750 | .Interface = 0, | ||
751 | .Codec = CODEC_SAA7113, | ||
752 | .VideoChannels = 3, | ||
753 | .VideoNorm = V4L2_STD_PAL, | ||
754 | .AudioChannels = 1, | ||
755 | .Radio = 1, | ||
756 | .vbi = 1, | ||
757 | .Tuner = 1, | ||
758 | .TunerType = TUNER_MICROTUNE_4049FM5, | ||
759 | .Vin_Reg1 = -1, | ||
760 | .Vin_Reg2 = -1, | ||
761 | .X_Offset = 0, | ||
762 | .Y_Offset = 3, | ||
763 | .Dvi_yuv = 7, | ||
764 | .ModelString = "Hauppauge WinTV USB Pro (Temic PAL/SECAM B/G/I/D/K/L FM)", | ||
765 | }, | ||
766 | [HPG_WINTV_PRO_TEMIC_PAL_BG_FM] = { | ||
767 | .Interface = 0, | ||
768 | .Codec = CODEC_SAA7113, | ||
769 | .VideoChannels = 3, | ||
770 | .VideoNorm = V4L2_STD_PAL, | ||
771 | .AudioChannels = 1, | ||
772 | .Radio = 1, | ||
773 | .vbi = 1, | ||
774 | .Tuner = 1, | ||
775 | .TunerType = TUNER_MICROTUNE_4049FM5, | ||
776 | .Vin_Reg1 = -1, | ||
777 | .Vin_Reg2 = -1, | ||
778 | .X_Offset = 0, | ||
779 | .Y_Offset = 3, | ||
780 | .Dvi_yuv = 7, | ||
781 | .ModelString = "Hauppauge WinTV USB Pro (Temic PAL B/G FM)", | ||
782 | }, | ||
783 | [HPG_WINTV_PRO_PAL_FM] = { | ||
784 | .Interface = 0, | ||
785 | .Codec = CODEC_SAA7113, | ||
786 | .VideoChannels = 3, | ||
787 | .VideoNorm = V4L2_STD_PAL, | ||
788 | .AudioChannels = 1, | ||
789 | .Radio = 1, | ||
790 | .vbi = 1, | ||
791 | .Tuner = 1, | ||
792 | .TunerType = TUNER_PHILIPS_FM1216ME_MK3, | ||
793 | .Vin_Reg1 = -1, | ||
794 | .Vin_Reg2 = -1, | ||
795 | .X_Offset = 0, | ||
796 | .Y_Offset = 3, | ||
797 | .Dvi_yuv = 7, | ||
798 | .ModelString = "Hauppauge WinTV USB Pro (PAL/SECAM B/G/I/D/K/L FM)", | ||
799 | }, | ||
800 | [HPG_WINTV_PRO_NTSC_MN_FM_V2] = { | ||
801 | .Interface = 0, | ||
802 | .Codec = CODEC_SAA7113, | ||
803 | .VideoChannels = 3, | ||
804 | .VideoNorm = V4L2_STD_NTSC, | ||
805 | .AudioChannels = 1, | ||
806 | .Radio = 1, | ||
807 | .vbi = 1, | ||
808 | .Tuner = 1, | ||
809 | .TunerType = TUNER_PHILIPS_NTSC_M, | ||
810 | .Vin_Reg1 = -1, | ||
811 | .Vin_Reg2 = -1, | ||
812 | .X_Offset = 0, | ||
813 | .Y_Offset = 3, | ||
814 | .Dvi_yuv = 7, | ||
815 | .ModelString = "Hauppauge WinTV USB Pro (NTSC M/N FM) V2", | ||
816 | }, | ||
817 | [CAMTEL_TVB330] = { | ||
818 | .Interface = -1, | ||
819 | .Codec = CODEC_SAA7113, | ||
820 | .VideoChannels = 3, | ||
821 | .VideoNorm = V4L2_STD_NTSC, | ||
822 | .AudioChannels = 1, | ||
823 | .Radio = 1, | ||
824 | .vbi = 1, | ||
825 | .Tuner = 1, | ||
826 | .TunerType = TUNER_PHILIPS_NTSC_M, | ||
827 | .Vin_Reg1 = -1, | ||
828 | .Vin_Reg2 = -1, | ||
829 | .X_Offset = 5, | ||
830 | .Y_Offset = 5, | ||
831 | .Dvi_yuv = -1, | ||
832 | .ModelString = "Camtel Technology USB TV Genie Pro FM Model TVB330", | ||
833 | }, | ||
834 | [DIGITAL_VIDEO_CREATOR_I] = { | ||
835 | .Interface = -1, | ||
836 | .Codec = CODEC_SAA7113, | ||
837 | .VideoChannels = 2, | ||
838 | .VideoNorm = V4L2_STD_PAL, | ||
839 | .AudioChannels = 0, | ||
840 | .Radio = 0, | ||
841 | .vbi = 1, | ||
842 | .Tuner = 0, | ||
843 | .TunerType = 0, | ||
844 | .Vin_Reg1 = -1, | ||
845 | .Vin_Reg2 = -1, | ||
846 | .X_Offset = 0, | ||
847 | .Y_Offset = 3, | ||
848 | .Dvi_yuv = 7, | ||
849 | .ModelString = "Digital Video Creator I", | ||
850 | }, | ||
851 | [GLOBAL_VILLAGE_GV_007_NTSC] = { | ||
852 | .Interface = -1, | ||
853 | .Codec = CODEC_SAA7111, | ||
854 | .VideoChannels = 2, | ||
855 | .VideoNorm = V4L2_STD_NTSC, | ||
856 | .AudioChannels = 0, | ||
857 | .Radio = 0, | ||
858 | .vbi = 1, | ||
859 | .Tuner = 0, | ||
860 | .TunerType = 0, | ||
861 | .Vin_Reg1 = -1, | ||
862 | .Vin_Reg2 = -1, | ||
863 | .X_Offset = 82, | ||
864 | .Y_Offset = 20, | ||
865 | .Dvi_yuv = 7, | ||
866 | .ModelString = "Global Village GV-007 (NTSC)", | ||
867 | }, | ||
868 | [DAZZLE_DVC_50_REV_1_NTSC] = { | ||
869 | .Interface = 0, | ||
870 | .Codec = CODEC_SAA7113, | ||
871 | .VideoChannels = 2, | ||
872 | .VideoNorm = V4L2_STD_NTSC, | ||
873 | .AudioChannels = 0, | ||
874 | .Radio = 0, | ||
875 | .vbi = 1, | ||
876 | .Tuner = 0, | ||
877 | .TunerType = 0, | ||
878 | .Vin_Reg1 = -1, | ||
879 | .Vin_Reg2 = -1, | ||
880 | .X_Offset = 0, | ||
881 | .Y_Offset = 3, | ||
882 | .Dvi_yuv = 7, | ||
883 | .ModelString = "Dazzle Fusion Model DVC-50 Rev 1 (NTSC)", | ||
884 | }, | ||
885 | [DAZZLE_DVC_80_REV_1_PAL] = { | ||
886 | .Interface = 0, | ||
887 | .Codec = CODEC_SAA7113, | ||
888 | .VideoChannels = 2, | ||
889 | .VideoNorm = V4L2_STD_PAL, | ||
890 | .AudioChannels = 0, | ||
891 | .Radio = 0, | ||
892 | .vbi = 1, | ||
893 | .Tuner = 0, | ||
894 | .TunerType = 0, | ||
895 | .Vin_Reg1 = -1, | ||
896 | .Vin_Reg2 = -1, | ||
897 | .X_Offset = 0, | ||
898 | .Y_Offset = 3, | ||
899 | .Dvi_yuv = 7, | ||
900 | .ModelString = "Dazzle Fusion Model DVC-80 Rev 1 (PAL)", | ||
901 | }, | ||
902 | [DAZZLE_DVC_90_REV_1_SECAM] = { | ||
903 | .Interface = 0, | ||
904 | .Codec = CODEC_SAA7113, | ||
905 | .VideoChannels = 2, | ||
906 | .VideoNorm = V4L2_STD_SECAM, | ||
907 | .AudioChannels = 0, | ||
908 | .Radio = 0, | ||
909 | .vbi = 1, | ||
910 | .Tuner = 0, | ||
911 | .TunerType = 0, | ||
912 | .Vin_Reg1 = -1, | ||
913 | .Vin_Reg2 = -1, | ||
914 | .X_Offset = 0, | ||
915 | .Y_Offset = 3, | ||
916 | .Dvi_yuv = 7, | ||
917 | .ModelString = "Dazzle Fusion Model DVC-90 Rev 1 (SECAM)", | ||
918 | }, | ||
919 | [ESKAPE_LABS_MYTV2GO] = { | ||
920 | .Interface = 0, | ||
921 | .Codec = CODEC_SAA7113, | ||
922 | .VideoChannels = 2, | ||
923 | .VideoNorm = V4L2_STD_PAL, | ||
924 | .AudioChannels = 1, | ||
925 | .Radio = 1, | ||
926 | .vbi = 1, | ||
927 | .Tuner = 1, | ||
928 | .TunerType = TUNER_PHILIPS_FM1216ME_MK3, | ||
929 | .Vin_Reg1 = -1, | ||
930 | .Vin_Reg2 = -1, | ||
931 | .X_Offset = 0, | ||
932 | .Y_Offset = 3, | ||
933 | .Dvi_yuv = 7, | ||
934 | .ModelString = "Eskape Labs MyTV2Go", | ||
935 | }, | ||
936 | [PINNA_PCTV_USB_PAL] = { | ||
937 | .Interface = -1, | ||
938 | .Codec = CODEC_SAA7111, | ||
939 | .VideoChannels = 3, | ||
940 | .VideoNorm = V4L2_STD_PAL, | ||
941 | .AudioChannels = 1, | ||
942 | .Radio = 0, | ||
943 | .vbi = 0, | ||
944 | .Tuner = 1, | ||
945 | .TunerType = TUNER_TEMIC_4066FY5_PAL_I, | ||
946 | .Vin_Reg1 = -1, | ||
947 | .Vin_Reg2 = -1, | ||
948 | .X_Offset = -1, | ||
949 | .Y_Offset = -1, | ||
950 | .Dvi_yuv = -1, | ||
951 | .ModelString = "Pinnacle Studio PCTV USB (PAL)", | ||
952 | }, | ||
953 | [PINNA_PCTV_USB_SECAM] = { | ||
954 | .Interface = -1, | ||
955 | .Codec = CODEC_SAA7111, | ||
956 | .VideoChannels = 3, | ||
957 | .VideoNorm = V4L2_STD_SECAM, | ||
958 | .AudioChannels = 1, | ||
959 | .Radio = 0, | ||
960 | .vbi = 1, | ||
961 | .Tuner = 1, | ||
962 | .TunerType = TUNER_PHILIPS_SECAM, | ||
963 | .Vin_Reg1 = -1, | ||
964 | .Vin_Reg2 = -1, | ||
965 | .X_Offset = -1, | ||
966 | .Y_Offset = -1, | ||
967 | .Dvi_yuv = -1, | ||
968 | .ModelString = "Pinnacle Studio PCTV USB (SECAM)", | ||
969 | }, | ||
970 | [PINNA_PCTV_USB_PAL_FM] = { | ||
971 | .Interface = -1, | ||
972 | .Codec = CODEC_SAA7111, | ||
973 | .VideoChannels = 3, | ||
974 | .VideoNorm = V4L2_STD_PAL, | ||
975 | .AudioChannels = 1, | ||
976 | .Radio = 1, | ||
977 | .vbi = 1, | ||
978 | .Tuner = 1, | ||
979 | .TunerType = TUNER_PHILIPS_PAL, | ||
980 | .Vin_Reg1 = -1, | ||
981 | .Vin_Reg2 = -1, | ||
982 | .X_Offset = 128, | ||
983 | .Y_Offset = 23, | ||
984 | .Dvi_yuv = -1, | ||
985 | .ModelString = "Pinnacle Studio PCTV USB (PAL) FM", | ||
986 | }, | ||
987 | [MIRO_PCTV_USB] = { | ||
988 | .Interface = -1, | ||
989 | .Codec = CODEC_SAA7111, | ||
990 | .VideoChannels = 3, | ||
991 | .VideoNorm = V4L2_STD_PAL, | ||
992 | .AudioChannels = 1, | ||
993 | .Radio = 0, | ||
994 | .vbi = 1, | ||
995 | .Tuner = 1, | ||
996 | .TunerType = TUNER_PHILIPS_PAL, | ||
997 | .Vin_Reg1 = -1, | ||
998 | .Vin_Reg2 = -1, | ||
999 | .X_Offset = -1, | ||
1000 | .Y_Offset = -1, | ||
1001 | .Dvi_yuv = -1, | ||
1002 | .ModelString = "Miro PCTV USB", | ||
1003 | }, | ||
1004 | [PINNA_PCTV_USB_NTSC_FM] = { | ||
1005 | .Interface = -1, | ||
1006 | .Codec = CODEC_SAA7111, | ||
1007 | .VideoChannels = 3, | ||
1008 | .VideoNorm = V4L2_STD_NTSC, | ||
1009 | .AudioChannels = 1, | ||
1010 | .Radio = 1, | ||
1011 | .vbi = 1, | ||
1012 | .Tuner = 1, | ||
1013 | .TunerType = TUNER_PHILIPS_NTSC_M, | ||
1014 | .Vin_Reg1 = -1, | ||
1015 | .Vin_Reg2 = -1, | ||
1016 | .X_Offset = -1, | ||
1017 | .Y_Offset = -1, | ||
1018 | .Dvi_yuv = -1, | ||
1019 | .ModelString = "Pinnacle Studio PCTV USB (NTSC) FM", | ||
1020 | }, | ||
1021 | [PINNA_PCTV_USB_PAL_FM_V2] = { | ||
1022 | .Interface = -1, | ||
1023 | .Codec = CODEC_SAA7113, | ||
1024 | .VideoChannels = 3, | ||
1025 | .VideoNorm = V4L2_STD_PAL, | ||
1026 | .AudioChannels = 1, | ||
1027 | .Radio = 1, | ||
1028 | .vbi = 1, | ||
1029 | .Tuner = 1, | ||
1030 | .TunerType = TUNER_TEMIC_4009FR5_PAL, | ||
1031 | .Vin_Reg1 = -1, | ||
1032 | .Vin_Reg2 = -1, | ||
1033 | .X_Offset = 0, | ||
1034 | .Y_Offset = 3, | ||
1035 | .Dvi_yuv = 7, | ||
1036 | .ModelString = "Pinnacle Studio PCTV USB (PAL) FM V2", | ||
1037 | }, | ||
1038 | [PINNA_PCTV_USB_NTSC_FM_V2] = { | ||
1039 | .Interface = -1, | ||
1040 | .Codec = CODEC_SAA7111, | ||
1041 | .VideoChannels = 3, | ||
1042 | .VideoNorm = V4L2_STD_NTSC, | ||
1043 | .AudioChannels = 1, | ||
1044 | .Radio = 1, | ||
1045 | .vbi = 1, | ||
1046 | .Tuner = 1, | ||
1047 | .TunerType = TUNER_TEMIC_4039FR5_NTSC, | ||
1048 | .Vin_Reg1 = -1, | ||
1049 | .Vin_Reg2 = -1, | ||
1050 | .X_Offset = 0, | ||
1051 | .Y_Offset = 3, | ||
1052 | .Dvi_yuv = 7, | ||
1053 | .ModelString = "Pinnacle Studio PCTV USB (NTSC) FM V2", | ||
1054 | }, | ||
1055 | [PINNA_PCTV_USB_PAL_FM_V3] = { | ||
1056 | .Interface = -1, | ||
1057 | .Codec = CODEC_SAA7113, | ||
1058 | .VideoChannels = 3, | ||
1059 | .VideoNorm = V4L2_STD_PAL, | ||
1060 | .AudioChannels = 1, | ||
1061 | .Radio = 1, | ||
1062 | .vbi = 1, | ||
1063 | .Tuner = 1, | ||
1064 | .TunerType = TUNER_TEMIC_4009FR5_PAL, | ||
1065 | .Vin_Reg1 = -1, | ||
1066 | .Vin_Reg2 = -1, | ||
1067 | .X_Offset = 0, | ||
1068 | .Y_Offset = 3, | ||
1069 | .Dvi_yuv = 7, | ||
1070 | .ModelString = "Pinnacle Studio PCTV USB (PAL) FM V3", | ||
1071 | }, | ||
1072 | [PINNA_LINX_VD_IN_CAB_NTSC] = { | ||
1073 | .Interface = -1, | ||
1074 | .Codec = CODEC_SAA7113, | ||
1075 | .VideoChannels = 2, | ||
1076 | .VideoNorm = V4L2_STD_NTSC, | ||
1077 | .AudioChannels = 1, | ||
1078 | .Radio = 0, | ||
1079 | .vbi = 1, | ||
1080 | .Tuner = 0, | ||
1081 | .TunerType = 0, | ||
1082 | .Vin_Reg1 = -1, | ||
1083 | .Vin_Reg2 = -1, | ||
1084 | .X_Offset = 0, | ||
1085 | .Y_Offset = 3, | ||
1086 | .Dvi_yuv = 7, | ||
1087 | .ModelString = "Pinnacle Studio Linx Video input cable (NTSC)", | ||
1088 | }, | ||
1089 | [PINNA_LINX_VD_IN_CAB_PAL] = { | ||
1090 | .Interface = -1, | ||
1091 | .Codec = CODEC_SAA7113, | ||
1092 | .VideoChannels = 2, | ||
1093 | .VideoNorm = V4L2_STD_PAL, | ||
1094 | .AudioChannels = 1, | ||
1095 | .Radio = 0, | ||
1096 | .vbi = 1, | ||
1097 | .Tuner = 0, | ||
1098 | .TunerType = 0, | ||
1099 | .Vin_Reg1 = -1, | ||
1100 | .Vin_Reg2 = -1, | ||
1101 | .X_Offset = 0, | ||
1102 | .Y_Offset = 3, | ||
1103 | .Dvi_yuv = 7, | ||
1104 | .ModelString = "Pinnacle Studio Linx Video input cable (PAL)", | ||
1105 | }, | ||
1106 | [PINNA_PCTV_BUNGEE_PAL_FM] = { | ||
1107 | .Interface = -1, | ||
1108 | .Codec = CODEC_SAA7113, | ||
1109 | .VideoChannels = 3, | ||
1110 | .VideoNorm = V4L2_STD_PAL, | ||
1111 | .AudioChannels = 1, | ||
1112 | .Radio = 1, | ||
1113 | .vbi = 1, | ||
1114 | .Tuner = 1, | ||
1115 | .TunerType = TUNER_TEMIC_4009FR5_PAL, | ||
1116 | .Vin_Reg1 = -1, | ||
1117 | .Vin_Reg2 = -1, | ||
1118 | .X_Offset = 0, | ||
1119 | .Y_Offset = 3, | ||
1120 | .Dvi_yuv = 7, | ||
1121 | .ModelString = "Pinnacle PCTV Bungee USB (PAL) FM", | ||
1122 | }, | ||
1123 | [HPG_WINTV] = { | ||
1124 | .Interface = -1, | ||
1125 | .Codec = CODEC_SAA7111, | ||
1126 | .VideoChannels = 3, | ||
1127 | .VideoNorm = V4L2_STD_NTSC, | ||
1128 | .AudioChannels = 1, | ||
1129 | .Radio = 0, | ||
1130 | .vbi = 1, | ||
1131 | .Tuner = 1, | ||
1132 | .TunerType = TUNER_PHILIPS_NTSC_M, | ||
1133 | .Vin_Reg1 = -1, | ||
1134 | .Vin_Reg2 = -1, | ||
1135 | .X_Offset = -1, | ||
1136 | .Y_Offset = -1, | ||
1137 | .Dvi_yuv = -1, | ||
1138 | .ModelString = "Hauppauge WinTv-USB", | ||
1139 | }, | ||
99 | {} /* Terminating entry */ | 1140 | {} /* Terminating entry */ |
100 | }; | 1141 | }; |
101 | 1142 | ||
102 | /* Supported Devices */ | 1143 | /* Supported Devices */ |
103 | 1144 | ||
104 | struct usb_device_id usbvision_table [] = { | 1145 | struct usb_device_id usbvision_table [] = { |
105 | { USB_DEVICE(0xfff0, 0xfff0) }, /* Custom Dummy USBVision Device */ | 1146 | { USB_DEVICE(0xfff0, 0xfff0), .driver_info=DUMMY_DEVICE }, |
106 | { USB_DEVICE(0x0a6f, 0x0400) }, /* Xanboo */ | 1147 | { USB_DEVICE(0x0a6f, 0x0400), .driver_info=XANBOO }, |
107 | { USB_DEVICE(0x050d, 0x0106) }, /* Belkin USB VideoBus II Adapter */ | 1148 | { USB_DEVICE(0x050d, 0x0106), .driver_info=BELKIN_VIDEOBUS_II }, |
108 | { USB_DEVICE(0x050d, 0x0207) }, /* Belkin Components USB VideoBus */ | 1149 | { USB_DEVICE(0x050d, 0x0207), .driver_info=BELKIN_VIDEOBUS }, |
109 | { USB_DEVICE(0x050d, 0x0208) }, /* Belkin USB VideoBus II */ | 1150 | { USB_DEVICE(0x050d, 0x0208), .driver_info=BELKIN_USB_VIDEOBUS_II }, |
110 | { USB_DEVICE(0x0571, 0x0002) }, /* echoFX InterView Lite */ | 1151 | { USB_DEVICE(0x0571, 0x0002), .driver_info=ECHOFX_INTERVIEW_LITE }, |
111 | { USB_DEVICE(0x0573, 0x0003) }, /* USBGear USBG-V1 resp. HAMA USB */ | 1152 | { USB_DEVICE(0x0573, 0x0003), .driver_info=USBGEAR_USBG_V1 }, |
112 | { USB_DEVICE(0x0573, 0x0400) }, /* D-Link V100 */ | 1153 | { USB_DEVICE(0x0573, 0x0400), .driver_info=D_LINK_V100 }, |
113 | { USB_DEVICE(0x0573, 0x2000) }, /* X10 USB Camera */ | 1154 | { USB_DEVICE(0x0573, 0x2000), .driver_info=X10_USB_CAMERA }, |
114 | { USB_DEVICE(0x0573, 0x2d00) }, /* Hauppauge WinTV USB Live (PAL B/G) */ | 1155 | { USB_DEVICE(0x0573, 0x2d00), .driver_info=HPG_WINTV_LIVE_PAL_BG }, |
115 | { USB_DEVICE(0x0573, 0x2d01) }, /* Hauppauge WinTV USB Live Pro (NTSC M/N) */ | 1156 | { USB_DEVICE(0x0573, 0x2d01), .driver_info=HPG_WINTV_LIVE_PRO_NTSC_MN }, |
116 | { USB_DEVICE(0x0573, 0x2101) }, /* Zoran Co. PMD (Nogatech) AV-grabber Manhattan */ | 1157 | { USB_DEVICE(0x0573, 0x2101), .driver_info=ZORAN_PMD_NOGATECH }, |
117 | { USB_DEVICE(0x0573, 0x4100) }, /* Nogatech USB-TV FM (NTSC) */ | 1158 | { USB_DEVICE(0x0573, 0x4100), .driver_info=NOGATECH_USB_TV_NTSC_FM }, |
118 | { USB_DEVICE(0x0573, 0x4110) }, /* PNY USB-TV (NTSC) FM */ | 1159 | { USB_DEVICE(0x0573, 0x4110), .driver_info=PNY_USB_TV_NTSC_FM }, |
119 | { USB_DEVICE(0x0573, 0x4450) }, /* PixelView PlayTv-USB PRO (PAL) FM */ | 1160 | { USB_DEVICE(0x0573, 0x4450), .driver_info=PV_PLAYTV_USB_PRO_PAL_FM }, |
120 | { USB_DEVICE(0x0573, 0x4550) }, /* ZTV ZT-721 2.4GHz USB A/V Receiver */ | 1161 | { USB_DEVICE(0x0573, 0x4550), .driver_info=ZT_721 }, |
121 | { USB_DEVICE(0x0573, 0x4d00) }, /* Hauppauge WinTV USB (NTSC M/N) */ | 1162 | { USB_DEVICE(0x0573, 0x4d00), .driver_info=HPG_WINTV_NTSC_MN }, |
122 | { USB_DEVICE(0x0573, 0x4d01) }, /* Hauppauge WinTV USB (PAL B/G) */ | 1163 | { USB_DEVICE(0x0573, 0x4d01), .driver_info=HPG_WINTV_PAL_BG }, |
123 | { USB_DEVICE(0x0573, 0x4d02) }, /* Hauppauge WinTV USB (PAL I) */ | 1164 | { USB_DEVICE(0x0573, 0x4d02), .driver_info=HPG_WINTV_PAL_I }, |
124 | { USB_DEVICE(0x0573, 0x4d03) }, /* Hauppauge WinTV USB (PAL/SECAM L) */ | 1165 | { USB_DEVICE(0x0573, 0x4d03), .driver_info=HPG_WINTV_PAL_SECAM_L }, |
125 | { USB_DEVICE(0x0573, 0x4d04) }, /* Hauppauge WinTV USB (PAL D/K) */ | 1166 | { USB_DEVICE(0x0573, 0x4d04), .driver_info=HPG_WINTV_PAL_D_K }, |
126 | { USB_DEVICE(0x0573, 0x4d10) }, /* Hauppauge WinTV USB (NTSC FM) */ | 1167 | { USB_DEVICE(0x0573, 0x4d10), .driver_info=HPG_WINTV_NTSC_FM }, |
127 | { USB_DEVICE(0x0573, 0x4d11) }, /* Hauppauge WinTV USB (PAL B/G FM) */ | 1168 | { USB_DEVICE(0x0573, 0x4d11), .driver_info=HPG_WINTV_PAL_BG_FM }, |
128 | { USB_DEVICE(0x0573, 0x4d12) }, /* Hauppauge WinTV USB (PAL I FM) */ | 1169 | { USB_DEVICE(0x0573, 0x4d12), .driver_info=HPG_WINTV_PAL_I_FM }, |
129 | { USB_DEVICE(0x0573, 0x4d14) }, /* Hauppauge WinTV USB (PAL D/K FM) */ | 1170 | { USB_DEVICE(0x0573, 0x4d14), .driver_info=HPG_WINTV_PAL_D_K_FM }, |
130 | { USB_DEVICE(0x0573, 0x4d2a) }, /* Hauppauge WinTV USB Pro (NTSC M/N) */ | 1171 | { USB_DEVICE(0x0573, 0x4d2a), .driver_info=HPG_WINTV_PRO_NTSC_MN }, |
131 | { USB_DEVICE(0x0573, 0x4d2b) }, /* Hauppauge WinTV USB Pro (NTSC M/N) */ | 1172 | { USB_DEVICE(0x0573, 0x4d2b), .driver_info=HPG_WINTV_PRO_NTSC_MN_V2 }, |
132 | { USB_DEVICE(0x0573, 0x4d2c) }, /* Hauppauge WinTV USB Pro (PAL/SECAM B/G/I/D/K/L) */ | 1173 | { USB_DEVICE(0x0573, 0x4d2c), .driver_info=HPG_WINTV_PRO_PAL }, |
133 | { USB_DEVICE(0x0573, 0x4d20) }, /* Hauppauge WinTV USB Pro (NTSC M/N) */ | 1174 | { USB_DEVICE(0x0573, 0x4d20), .driver_info=HPG_WINTV_PRO_NTSC_MN_V3 }, |
134 | { USB_DEVICE(0x0573, 0x4d21) }, /* Hauppauge WinTV USB Pro (PAL B/G) */ | 1175 | { USB_DEVICE(0x0573, 0x4d21), .driver_info=HPG_WINTV_PRO_PAL_BG }, |
135 | { USB_DEVICE(0x0573, 0x4d22) }, /* Hauppauge WinTV USB Pro (PAL I) */ | 1176 | { USB_DEVICE(0x0573, 0x4d22), .driver_info=HPG_WINTV_PRO_PAL_I }, |
136 | { USB_DEVICE(0x0573, 0x4d23) }, /* Hauppauge WinTV USB Pro (PAL/SECAM L) */ | 1177 | { USB_DEVICE(0x0573, 0x4d23), .driver_info=HPG_WINTV_PRO_PAL_SECAM_L }, |
137 | { USB_DEVICE(0x0573, 0x4d24) }, /* Hauppauge WinTV USB Pro (PAL D/K) */ | 1178 | { USB_DEVICE(0x0573, 0x4d24), .driver_info=HPG_WINTV_PRO_PAL_D_K }, |
138 | { USB_DEVICE(0x0573, 0x4d25) }, /* Hauppauge WinTV USB Pro (PAL/SECAM BGDK/I/L) */ | 1179 | { USB_DEVICE(0x0573, 0x4d25), .driver_info=HPG_WINTV_PRO_PAL_SECAM }, |
139 | { USB_DEVICE(0x0573, 0x4d26) }, /* Hauppauge WinTV USB Pro (PAL/SECAM BGDK/I/L) */ | 1180 | { USB_DEVICE(0x0573, 0x4d26), .driver_info=HPG_WINTV_PRO_PAL_SECAM_V2 }, |
140 | { USB_DEVICE(0x0573, 0x4d27) }, /* Hauppauge WinTV USB Pro (PAL B/G) */ | 1181 | { USB_DEVICE(0x0573, 0x4d27), .driver_info=HPG_WINTV_PRO_PAL_BG_V2 }, |
141 | { USB_DEVICE(0x0573, 0x4d28) }, /* Hauppauge WinTV USB Pro (PAL B/G,D/K) */ | 1182 | { USB_DEVICE(0x0573, 0x4d28), .driver_info=HPG_WINTV_PRO_PAL_BG_D_K }, |
142 | { USB_DEVICE(0x0573, 0x4d29) }, /* Hauppauge WinTV USB Pro (PAL I,D/K) */ | 1183 | { USB_DEVICE(0x0573, 0x4d29), .driver_info=HPG_WINTV_PRO_PAL_I_D_K }, |
143 | { USB_DEVICE(0x0573, 0x4d30) }, /* Hauppauge WinTV USB Pro (NTSC M/N FM) */ | 1184 | { USB_DEVICE(0x0573, 0x4d30), .driver_info=HPG_WINTV_PRO_NTSC_MN_FM }, |
144 | { USB_DEVICE(0x0573, 0x4d31) }, /* Hauppauge WinTV USB Pro (PAL B/G FM) */ | 1185 | { USB_DEVICE(0x0573, 0x4d31), .driver_info=HPG_WINTV_PRO_PAL_BG_FM }, |
145 | { USB_DEVICE(0x0573, 0x4d32) }, /* Hauppauge WinTV USB Pro (PAL I FM) */ | 1186 | { USB_DEVICE(0x0573, 0x4d32), .driver_info=HPG_WINTV_PRO_PAL_I_FM }, |
146 | { USB_DEVICE(0x0573, 0x4d34) }, /* Hauppauge WinTV USB Pro (PAL D/K FM) */ | 1187 | { USB_DEVICE(0x0573, 0x4d34), .driver_info=HPG_WINTV_PRO_PAL_D_K_FM }, |
147 | { USB_DEVICE(0x0573, 0x4d35) }, /* Hauppauge WinTV USB Pro (Temic PAL/SECAM B/G/I/D/K/L FM) */ | 1188 | { USB_DEVICE(0x0573, 0x4d35), .driver_info=HPG_WINTV_PRO_TEMIC_PAL_FM }, |
148 | { USB_DEVICE(0x0573, 0x4d36) }, /* Hauppauge WinTV USB Pro (Temic PAL B/G FM) */ | 1189 | { USB_DEVICE(0x0573, 0x4d36), .driver_info=HPG_WINTV_PRO_TEMIC_PAL_BG_FM }, |
149 | { USB_DEVICE(0x0573, 0x4d37) }, /* Hauppauge WinTV USB Pro (PAL/SECAM B/G/I/D/K/L FM) */ | 1190 | { USB_DEVICE(0x0573, 0x4d37), .driver_info=HPG_WINTV_PRO_PAL_FM }, |
150 | { USB_DEVICE(0x0573, 0x4d38) }, /* Hauppauge WinTV USB Pro (NTSC M/N FM) */ | 1191 | { USB_DEVICE(0x0573, 0x4d38), .driver_info=HPG_WINTV_PRO_NTSC_MN_FM_V2 }, |
151 | { USB_DEVICE(0x0768, 0x0006) }, /* Camtel Technology USB TV Genie Pro FM Model TVB330 */ | 1192 | { USB_DEVICE(0x0768, 0x0006), .driver_info=CAMTEL_TVB330 }, |
152 | { USB_DEVICE(0x07d0, 0x0001) }, /* Digital Video Creator I */ | 1193 | { USB_DEVICE(0x07d0, 0x0001), .driver_info=DIGITAL_VIDEO_CREATOR_I }, |
153 | { USB_DEVICE(0x07d0, 0x0002) }, /* Global Village GV-007 (NTSC) */ | 1194 | { USB_DEVICE(0x07d0, 0x0002), .driver_info=GLOBAL_VILLAGE_GV_007_NTSC }, |
154 | { USB_DEVICE(0x07d0, 0x0003) }, /* Dazzle Fusion Model DVC-50 Rev 1 (NTSC) */ | 1195 | { USB_DEVICE(0x07d0, 0x0003), .driver_info=DAZZLE_DVC_50_REV_1_NTSC }, |
155 | { USB_DEVICE(0x07d0, 0x0004) }, /* Dazzle Fusion Model DVC-80 Rev 1 (PAL) */ | 1196 | { USB_DEVICE(0x07d0, 0x0004), .driver_info=DAZZLE_DVC_80_REV_1_PAL }, |
156 | { USB_DEVICE(0x07d0, 0x0005) }, /* Dazzle Fusion Model DVC-90 Rev 1 (SECAM) */ | 1197 | { USB_DEVICE(0x07d0, 0x0005), .driver_info=DAZZLE_DVC_90_REV_1_SECAM }, |
157 | { USB_DEVICE(0x07f8, 0x9104) }, /* Eskape Labs MyTV2Go */ | 1198 | { USB_DEVICE(0x07f8, 0x9104), .driver_info=ESKAPE_LABS_MYTV2GO }, |
158 | { USB_DEVICE(0x2304, 0x010d) }, /* Pinnacle Studio PCTV USB (PAL) */ | 1199 | { USB_DEVICE(0x2304, 0x010d), .driver_info=PINNA_PCTV_USB_PAL }, |
159 | { USB_DEVICE(0x2304, 0x0109) }, /* Pinnacle Studio PCTV USB (SECAM) */ | 1200 | { USB_DEVICE(0x2304, 0x0109), .driver_info=PINNA_PCTV_USB_SECAM }, |
160 | { USB_DEVICE(0x2304, 0x0110) }, /* Pinnacle Studio PCTV USB (PAL) */ | 1201 | { USB_DEVICE(0x2304, 0x0110), .driver_info=PINNA_PCTV_USB_PAL_FM }, |
161 | { USB_DEVICE(0x2304, 0x0111) }, /* Miro PCTV USB */ | 1202 | { USB_DEVICE(0x2304, 0x0111), .driver_info=MIRO_PCTV_USB }, |
162 | { USB_DEVICE(0x2304, 0x0112) }, /* Pinnacle Studio PCTV USB (NTSC) with FM radio */ | 1203 | { USB_DEVICE(0x2304, 0x0112), .driver_info=PINNA_PCTV_USB_NTSC_FM }, |
163 | { USB_DEVICE(0x2304, 0x0210) }, /* Pinnacle Studio PCTV USB (PAL) with FM radio */ | 1204 | { USB_DEVICE(0x2304, 0x0210), .driver_info=PINNA_PCTV_USB_PAL_FM_V2 }, |
164 | { USB_DEVICE(0x2304, 0x0212) }, /* Pinnacle Studio PCTV USB (NTSC) with FM radio */ | 1205 | { USB_DEVICE(0x2304, 0x0212), .driver_info=PINNA_PCTV_USB_NTSC_FM_V2 }, |
165 | { USB_DEVICE(0x2304, 0x0214) }, /* Pinnacle Studio PCTV USB (PAL) with FM radio */ | 1206 | { USB_DEVICE(0x2304, 0x0214), .driver_info=PINNA_PCTV_USB_PAL_FM_V3 }, |
166 | { USB_DEVICE(0x2304, 0x0300) }, /* Pinnacle Studio Linx Video input cable (NTSC) */ | 1207 | { USB_DEVICE(0x2304, 0x0300), .driver_info=PINNA_LINX_VD_IN_CAB_NTSC }, |
167 | { USB_DEVICE(0x2304, 0x0301) }, /* Pinnacle Studio Linx Video input cable (PAL) */ | 1208 | { USB_DEVICE(0x2304, 0x0301), .driver_info=PINNA_LINX_VD_IN_CAB_PAL }, |
168 | { USB_DEVICE(0x2304, 0x0419) }, /* Pinnacle PCTV Bungee USB (PAL) FM */ | 1209 | { USB_DEVICE(0x2304, 0x0419), .driver_info=PINNA_PCTV_BUNGEE_PAL_FM }, |
169 | { USB_DEVICE(0x2400, 0x4200) }, /* Hauppauge WinTv-USB2 Model 42012 */ | 1210 | { USB_DEVICE(0x2400, 0x4200), .driver_info=HPG_WINTV }, |
170 | 1211 | ||
171 | { } /* Terminating entry */ | 1212 | { } /* Terminating entry */ |
172 | }; | 1213 | }; |
diff --git a/drivers/media/video/usbvision/usbvision-cards.h b/drivers/media/video/usbvision/usbvision-cards.h new file mode 100644 index 000000000000..37d619b1e038 --- /dev/null +++ b/drivers/media/video/usbvision/usbvision-cards.h | |||
@@ -0,0 +1,65 @@ | |||
1 | #define DUMMY_DEVICE 0 | ||
2 | #define XANBOO 1 | ||
3 | #define BELKIN_VIDEOBUS_II 2 | ||
4 | #define BELKIN_VIDEOBUS 3 | ||
5 | #define BELKIN_USB_VIDEOBUS_II 4 | ||
6 | #define ECHOFX_INTERVIEW_LITE 5 | ||
7 | #define USBGEAR_USBG_V1 6 | ||
8 | #define D_LINK_V100 7 | ||
9 | #define X10_USB_CAMERA 8 | ||
10 | #define HPG_WINTV_LIVE_PAL_BG 9 | ||
11 | #define HPG_WINTV_LIVE_PRO_NTSC_MN 10 | ||
12 | #define ZORAN_PMD_NOGATECH 11 | ||
13 | #define NOGATECH_USB_TV_NTSC_FM 12 | ||
14 | #define PNY_USB_TV_NTSC_FM 13 | ||
15 | #define PV_PLAYTV_USB_PRO_PAL_FM 14 | ||
16 | #define ZT_721 15 | ||
17 | #define HPG_WINTV_NTSC_MN 16 | ||
18 | #define HPG_WINTV_PAL_BG 17 | ||
19 | #define HPG_WINTV_PAL_I 18 | ||
20 | #define HPG_WINTV_PAL_SECAM_L 19 | ||
21 | #define HPG_WINTV_PAL_D_K 20 | ||
22 | #define HPG_WINTV_NTSC_FM 21 | ||
23 | #define HPG_WINTV_PAL_BG_FM 22 | ||
24 | #define HPG_WINTV_PAL_I_FM 23 | ||
25 | #define HPG_WINTV_PAL_D_K_FM 24 | ||
26 | #define HPG_WINTV_PRO_NTSC_MN 25 | ||
27 | #define HPG_WINTV_PRO_NTSC_MN_V2 26 | ||
28 | #define HPG_WINTV_PRO_PAL 27 | ||
29 | #define HPG_WINTV_PRO_NTSC_MN_V3 28 | ||
30 | #define HPG_WINTV_PRO_PAL_BG 29 | ||
31 | #define HPG_WINTV_PRO_PAL_I 30 | ||
32 | #define HPG_WINTV_PRO_PAL_SECAM_L 31 | ||
33 | #define HPG_WINTV_PRO_PAL_D_K 32 | ||
34 | #define HPG_WINTV_PRO_PAL_SECAM 33 | ||
35 | #define HPG_WINTV_PRO_PAL_SECAM_V2 34 | ||
36 | #define HPG_WINTV_PRO_PAL_BG_V2 35 | ||
37 | #define HPG_WINTV_PRO_PAL_BG_D_K 36 | ||
38 | #define HPG_WINTV_PRO_PAL_I_D_K 37 | ||
39 | #define HPG_WINTV_PRO_NTSC_MN_FM 38 | ||
40 | #define HPG_WINTV_PRO_PAL_BG_FM 39 | ||
41 | #define HPG_WINTV_PRO_PAL_I_FM 40 | ||
42 | #define HPG_WINTV_PRO_PAL_D_K_FM 41 | ||
43 | #define HPG_WINTV_PRO_TEMIC_PAL_FM 42 | ||
44 | #define HPG_WINTV_PRO_TEMIC_PAL_BG_FM 43 | ||
45 | #define HPG_WINTV_PRO_PAL_FM 44 | ||
46 | #define HPG_WINTV_PRO_NTSC_MN_FM_V2 45 | ||
47 | #define CAMTEL_TVB330 46 | ||
48 | #define DIGITAL_VIDEO_CREATOR_I 47 | ||
49 | #define GLOBAL_VILLAGE_GV_007_NTSC 48 | ||
50 | #define DAZZLE_DVC_50_REV_1_NTSC 49 | ||
51 | #define DAZZLE_DVC_80_REV_1_PAL 50 | ||
52 | #define DAZZLE_DVC_90_REV_1_SECAM 51 | ||
53 | #define ESKAPE_LABS_MYTV2GO 52 | ||
54 | #define PINNA_PCTV_USB_PAL 53 | ||
55 | #define PINNA_PCTV_USB_SECAM 54 | ||
56 | #define PINNA_PCTV_USB_PAL_FM 55 | ||
57 | #define MIRO_PCTV_USB 56 | ||
58 | #define PINNA_PCTV_USB_NTSC_FM 57 | ||
59 | #define PINNA_PCTV_USB_PAL_FM_V2 58 | ||
60 | #define PINNA_PCTV_USB_NTSC_FM_V2 59 | ||
61 | #define PINNA_PCTV_USB_PAL_FM_V3 60 | ||
62 | #define PINNA_LINX_VD_IN_CAB_NTSC 61 | ||
63 | #define PINNA_LINX_VD_IN_CAB_PAL 62 | ||
64 | #define PINNA_PCTV_BUNGEE_PAL_FM 63 | ||
65 | #define HPG_WINTV 64 | ||
diff --git a/drivers/media/video/usbvision/usbvision-video.c b/drivers/media/video/usbvision/usbvision-video.c index 6fc14557d623..22c2889d3b5c 100644 --- a/drivers/media/video/usbvision/usbvision-video.c +++ b/drivers/media/video/usbvision/usbvision-video.c | |||
@@ -76,6 +76,7 @@ | |||
76 | #endif | 76 | #endif |
77 | 77 | ||
78 | #include "usbvision.h" | 78 | #include "usbvision.h" |
79 | #include "usbvision-cards.h" | ||
79 | 80 | ||
80 | #define DRIVER_AUTHOR "Joerg Heckenbach <joerg@heckenbach-aw.de>, Dwaine Garden <DwaineGarden@rogers.com>" | 81 | #define DRIVER_AUTHOR "Joerg Heckenbach <joerg@heckenbach-aw.de>, Dwaine Garden <DwaineGarden@rogers.com>" |
81 | #define DRIVER_NAME "usbvision" | 82 | #define DRIVER_NAME "usbvision" |
@@ -1775,7 +1776,8 @@ static void usbvision_configure_video(struct usb_usbvision *usbvision) | |||
1775 | * if it looks like USBVISION video device | 1776 | * if it looks like USBVISION video device |
1776 | * | 1777 | * |
1777 | */ | 1778 | */ |
1778 | static int __devinit usbvision_probe(struct usb_interface *intf, const struct usb_device_id *devid) | 1779 | static int __devinit usbvision_probe(struct usb_interface *intf, |
1780 | const struct usb_device_id *devid) | ||
1779 | { | 1781 | { |
1780 | struct usb_device *dev = usb_get_dev(interface_to_usbdev(intf)); | 1782 | struct usb_device *dev = usb_get_dev(interface_to_usbdev(intf)); |
1781 | struct usb_interface *uif; | 1783 | struct usb_interface *uif; |
@@ -1786,25 +1788,13 @@ static int __devinit usbvision_probe(struct usb_interface *intf, const struct us | |||
1786 | int model,i; | 1788 | int model,i; |
1787 | 1789 | ||
1788 | PDEBUG(DBG_PROBE, "VID=%#04x, PID=%#04x, ifnum=%u", | 1790 | PDEBUG(DBG_PROBE, "VID=%#04x, PID=%#04x, ifnum=%u", |
1789 | dev->descriptor.idVendor, dev->descriptor.idProduct, ifnum); | 1791 | dev->descriptor.idVendor, |
1792 | dev->descriptor.idProduct, ifnum); | ||
1790 | 1793 | ||
1791 | /* Is it an USBVISION video dev? */ | 1794 | model = devid->driver_info; |
1792 | model = 0; | 1795 | printk(KERN_INFO "%s: %s found\n", __FUNCTION__, |
1793 | for(model = 0; usbvision_device_data[model].idVendor; model++) { | 1796 | usbvision_device_data[model].ModelString); |
1794 | if (le16_to_cpu(dev->descriptor.idVendor) != usbvision_device_data[model].idVendor) { | ||
1795 | continue; | ||
1796 | } | ||
1797 | if (le16_to_cpu(dev->descriptor.idProduct) != usbvision_device_data[model].idProduct) { | ||
1798 | continue; | ||
1799 | } | ||
1800 | 1797 | ||
1801 | printk(KERN_INFO "%s: %s found\n", __FUNCTION__, usbvision_device_data[model].ModelString); | ||
1802 | break; | ||
1803 | } | ||
1804 | |||
1805 | if (usbvision_device_data[model].idVendor == 0) { | ||
1806 | return -ENODEV; //no matching device | ||
1807 | } | ||
1808 | if (usbvision_device_data[model].Interface >= 0) { | 1798 | if (usbvision_device_data[model].Interface >= 0) { |
1809 | interface = &dev->actconfig->interface[usbvision_device_data[model].Interface]->altsetting[0]; | 1799 | interface = &dev->actconfig->interface[usbvision_device_data[model].Interface]->altsetting[0]; |
1810 | } | 1800 | } |
@@ -1828,10 +1818,11 @@ static int __devinit usbvision_probe(struct usb_interface *intf, const struct us | |||
1828 | err("%s: couldn't allocate USBVision struct", __FUNCTION__); | 1818 | err("%s: couldn't allocate USBVision struct", __FUNCTION__); |
1829 | return -ENOMEM; | 1819 | return -ENOMEM; |
1830 | } | 1820 | } |
1821 | |||
1831 | if (dev->descriptor.bNumConfigurations > 1) { | 1822 | if (dev->descriptor.bNumConfigurations > 1) { |
1832 | usbvision->bridgeType = BRIDGE_NT1004; | 1823 | usbvision->bridgeType = BRIDGE_NT1004; |
1833 | } | 1824 | } |
1834 | else if (usbvision_device_data[model].ModelString == "Dazzle Fusion Model DVC-90 Rev 1 (SECAM)") { | 1825 | else if (model == DAZZLE_DVC_90_REV_1_SECAM) { |
1835 | usbvision->bridgeType = BRIDGE_NT1005; | 1826 | usbvision->bridgeType = BRIDGE_NT1005; |
1836 | } | 1827 | } |
1837 | else { | 1828 | else { |
@@ -1958,6 +1949,8 @@ static struct usb_driver usbvision_driver = { | |||
1958 | */ | 1949 | */ |
1959 | static void customdevice_process(void) | 1950 | static void customdevice_process(void) |
1960 | { | 1951 | { |
1952 | unsigned int id_vend,id_prod; | ||
1953 | |||
1961 | usbvision_device_data[0]=usbvision_device_data[1]; | 1954 | usbvision_device_data[0]=usbvision_device_data[1]; |
1962 | usbvision_table[0]=usbvision_table[1]; | 1955 | usbvision_table[0]=usbvision_table[1]; |
1963 | 1956 | ||
@@ -1965,7 +1958,7 @@ static void customdevice_process(void) | |||
1965 | { | 1958 | { |
1966 | char *parse=CustomDevice; | 1959 | char *parse=CustomDevice; |
1967 | 1960 | ||
1968 | PDEBUG(DBG_PROBE, "CustomDevide=%s", CustomDevice); | 1961 | PDEBUG(DBG_PROBE, "CustomDevice=%s", CustomDevice); |
1969 | 1962 | ||
1970 | /*format is CustomDevice="0x0573 0x4D31 0 7113 3 PAL 1 1 1 5 -1 -1 -1 -1 -1" | 1963 | /*format is CustomDevice="0x0573 0x4D31 0 7113 3 PAL 1 1 1 5 -1 -1 -1 -1 -1" |
1971 | usbvision_device_data[0].idVendor; | 1964 | usbvision_device_data[0].idVendor; |
@@ -1990,13 +1983,16 @@ static void customdevice_process(void) | |||
1990 | usbvision_device_data[0].ModelString="USBVISION Custom Device"; | 1983 | usbvision_device_data[0].ModelString="USBVISION Custom Device"; |
1991 | 1984 | ||
1992 | parse+=2; | 1985 | parse+=2; |
1993 | sscanf(parse,"%x",&usbvision_device_data[0].idVendor); | 1986 | sscanf(parse,"%u",&id_vend); |
1987 | usbvision_table[0].idVendor=id_vend; | ||
1988 | |||
1994 | goto2next(parse); | 1989 | goto2next(parse); |
1995 | PDEBUG(DBG_PROBE, "idVendor=0x%.4X", usbvision_device_data[0].idVendor); | 1990 | PDEBUG(DBG_PROBE, "idVendor=0x%.4X", usbvision_table[0].idVendor); |
1996 | parse+=2; | 1991 | parse+=2; |
1997 | sscanf(parse,"%x",&usbvision_device_data[0].idProduct); | 1992 | sscanf(parse,"%u",&id_prod); |
1993 | usbvision_table[0].idProduct=id_prod; | ||
1998 | goto2next(parse); | 1994 | goto2next(parse); |
1999 | PDEBUG(DBG_PROBE, "idProduct=0x%.4X", usbvision_device_data[0].idProduct); | 1995 | PDEBUG(DBG_PROBE, "idProduct=0x%.4X", usbvision_table[0].idProduct); |
2000 | sscanf(parse,"%d",&usbvision_device_data[0].Interface); | 1996 | sscanf(parse,"%d",&usbvision_device_data[0].Interface); |
2001 | goto2next(parse); | 1997 | goto2next(parse); |
2002 | PDEBUG(DBG_PROBE, "Interface=%d", usbvision_device_data[0].Interface); | 1998 | PDEBUG(DBG_PROBE, "Interface=%d", usbvision_device_data[0].Interface); |
@@ -2060,9 +2056,6 @@ static void customdevice_process(void) | |||
2060 | 2056 | ||
2061 | //add to usbvision_table also | 2057 | //add to usbvision_table also |
2062 | usbvision_table[0].match_flags=USB_DEVICE_ID_MATCH_DEVICE; | 2058 | usbvision_table[0].match_flags=USB_DEVICE_ID_MATCH_DEVICE; |
2063 | usbvision_table[0].idVendor=usbvision_device_data[0].idVendor; | ||
2064 | usbvision_table[0].idProduct=usbvision_device_data[0].idProduct; | ||
2065 | |||
2066 | } | 2059 | } |
2067 | } | 2060 | } |
2068 | 2061 | ||
diff --git a/drivers/media/video/usbvision/usbvision.h b/drivers/media/video/usbvision/usbvision.h index ad6afd3e42a4..4639f3485e76 100644 --- a/drivers/media/video/usbvision/usbvision.h +++ b/drivers/media/video/usbvision/usbvision.h | |||
@@ -342,8 +342,6 @@ struct usbvision_frame { | |||
342 | #define BRIDGE_NT1005 1005 | 342 | #define BRIDGE_NT1005 1005 |
343 | 343 | ||
344 | struct usbvision_device_data_st { | 344 | struct usbvision_device_data_st { |
345 | int idVendor; | ||
346 | int idProduct; | ||
347 | int Interface; /* to handle special interface number like BELKIN and Hauppauge WinTV-USB II */ | 345 | int Interface; /* to handle special interface number like BELKIN and Hauppauge WinTV-USB II */ |
348 | int Codec; | 346 | int Codec; |
349 | int VideoChannels; | 347 | int VideoChannels; |