aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/video/usbvision/usbvision-cards.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/media/video/usbvision/usbvision-cards.c')
-rw-r--r--drivers/media/video/usbvision/usbvision-cards.c1165
1 files changed, 1048 insertions, 117 deletions
diff --git a/drivers/media/video/usbvision/usbvision-cards.c b/drivers/media/video/usbvision/usbvision-cards.c
index a40e5838515b..13f69fe6360d 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,129 +28,1060 @@
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*/
33struct usbvision_device_data_st usbvision_device_data[] = { 34struct 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 [XANBOO] = {
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, 0x0208, -1, CODEC_SAA7113, 2, V4L2_STD_PAL, 1, 0, 1, 0, 0, -1, -1, 0, 3, 7, "Belkin USBView II"}, 37 .Codec = CODEC_SAA7113,
37 {0x0571, 0x0002, 0, CODEC_SAA7111, 2, V4L2_STD_PAL, 0, 0, 1, 0, 0, -1, -1, -1, -1, 7, "echoFX InterView Lite"}, 38 .VideoChannels = 4,
38 {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"}, 39 .VideoNorm = V4L2_STD_NTSC,
39 {0x0573, 0x0400, -1, CODEC_SAA7113, 4, V4L2_STD_NTSC, 0, 0, 1, 0, 0, -1, -1, 0, 3, 7, "D-Link V100"}, 40 .AudioChannels = 1,
40 {0x0573, 0x2000, -1, CODEC_SAA7111, 2, V4L2_STD_NTSC, 1, 0, 1, 0, 0, -1, -1, -1, -1, -1, "X10 USB Camera"}, 41 .Radio = 0,
41 {0x0573, 0x2d00, -1, CODEC_SAA7111, 2, V4L2_STD_PAL, 1, 0, 1, 0, 0, -1, -1, -1, 3, 7, "Osprey 50"}, 42 .vbi = 1,
42 {0x0573, 0x2d01, -1, CODEC_SAA7113, 2, V4L2_STD_NTSC, 0, 0, 1, 0, 0, -1, -1, 0, 3, 7, "Hauppauge USB-Live Model 600"}, 43 .Tuner = 0,
43 {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"}, 44 .TunerType = 0,
44 {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"}, 45 .X_Offset = -1,
45 {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"}, 46 .Y_Offset = -1,
46 {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"}, 47 .ModelString = "Xanboo",
47 {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"}, 48 },
48 {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 USA"}, 49 [BELKIN_VIDEOBUS_II] = {
49 {0x0573, 0x4d01, -1, CODEC_SAA7111, 3, V4L2_STD_NTSC, 1, 0, 1, 1, TUNER_PHILIPS_NTSC_M, -1, -1, -1, -1, -1, "Hauppauge WinTv-USB"}, 50 .Interface = -1,
50 {0x0573, 0x4d02, -1, CODEC_SAA7111, 3, V4L2_STD_NTSC, 1, 0, 1, 1, TUNER_PHILIPS_NTSC_M, -1, -1, -1, -1, -1, "Hauppauge WinTv-USB (NTSC)"}, 51 .Codec = CODEC_SAA7113,
51 {0x0573, 0x4d03, -1, CODEC_SAA7111, 3, V4L2_STD_SECAM, 1, 0, 1, 1, TUNER_PHILIPS_SECAM, -1, -1, -1, -1, -1, "Hauppauge WinTv-USB (SECAM) "}, 52 .VideoChannels = 2,
52 {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"}, 53 .VideoNorm = V4L2_STD_PAL,
53 {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) FM"}, 54 .AudioChannels = 1,
54 {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) FM"}, 55 .Radio = 0,
55 {0x0573, 0x4d2a, 0, CODEC_SAA7113, 3, V4L2_STD_NTSC, 1, 1, 1, 1, TUNER_MICROTUNE_4049FM5, -1, -1, 0, 3, 7, "Hauppauge WinTv USB (NTSC) FM Model 602 40201 Rev B285"}, 56 .vbi = 1,
56 {0x0573, 0x4d2b, 0, CODEC_SAA7113, 3, V4L2_STD_NTSC, 1, 1, 1, 1, TUNER_MICROTUNE_4049FM5, -1, -1, 0, 3, 7, "Hauppauge WinTv USB (NTSC) FM Model 602 40201 Rev B282"}, 57 .Tuner = 0,
57 {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 (PAL/SECAM) 40209 Rev E1A5"}, 58 .TunerType = 0,
58 {0x0573, 0x4d20, 0, CODEC_SAA7113, 3, V4L2_STD_PAL, 1, 1, 1, 1, TUNER_PHILIPS_PAL, -1, -1, 0, 3, 7, "Hauppauge WinTv-USB II (PAL) FM Model 40201 Rev B226"}, 59 .X_Offset = 0,
59 {0x0573, 0x4d21, 0, CODEC_SAA7113, 3, V4L2_STD_PAL, 1, 0, 1, 1, TUNER_PHILIPS_PAL, -1, -1, 0, 3, 7, "Hauppauge WinTv-USB II (PAL)"}, 60 .Y_Offset = 3,
60 {0x0573, 0x4d22, 0, CODEC_SAA7113, 3, V4L2_STD_PAL, 1, 0, 1, 1, TUNER_PHILIPS_PAL, -1, -1, 0, 3, 7, "Hauppauge WinTv-USB II (PAL) MODEL 566"}, 61 .Dvi_yuv_override = 1,
61 {0x0573, 0x4d23, -1, CODEC_SAA7113, 3, V4L2_STD_SECAM, 1, 0, 1, 1, TUNER_PHILIPS_SECAM, -1, -1, 0, 3, 7, "Hauppauge WinTv-USB (SECAM) 4D23"}, 62 .Dvi_yuv = 7,
62 {0x0573, 0x4d25, -1, CODEC_SAA7113, 3, V4L2_STD_SECAM, 1, 0, 1, 1, TUNER_PHILIPS_SECAM, -1, -1, 0, 3, 7, "Hauppauge WinTv-USB (SECAM) Model 40209 Rev B234"}, 63 .ModelString = "Belkin USB VideoBus II Adapter",
63 {0x0573, 0x4d26, -1, CODEC_SAA7113, 3, V4L2_STD_SECAM, 1, 0, 1, 1, TUNER_PHILIPS_SECAM, -1, -1, 0, 3, 7, "Hauppauge WinTv-USB (SECAM) Model 40209 Rev B243"}, 64 },
64 {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 Model 40204 Rev B281"}, 65 [BELKIN_VIDEOBUS] = {
65 {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 Model 40204 Rev B283"}, 66 .Interface = -1,
66 {0x0573, 0x4d29, -1, CODEC_SAA7113, 3, V4L2_STD_PAL, 1, 0, 1, 1, TUNER_PHILIPS_PAL, -1, -1, 0, 3, 7, "Hauppauge WinTv-USB Model 40205 Rev B298"}, 67 .Codec = CODEC_SAA7111,
67 {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 FM Model 40211 Rev B123"}, 68 .VideoChannels = 2,
68 {0x0573, 0x4d31, 0, CODEC_SAA7113, 3, V4L2_STD_PAL, 1, 1, 1, 1, TUNER_PHILIPS_PAL, -1, -1, 0, 3, 7, "Hauppauge WinTv-USB III (PAL) FM Model 568"}, 69 .VideoNorm = V4L2_STD_NTSC,
69 {0x0573, 0x4d32, 0, CODEC_SAA7113, 3, V4L2_STD_PAL, 1, 1, 1, 1, TUNER_PHILIPS_PAL, -1, -1, 0, 3, 7, "Hauppauge WinTv-USB III (PAL) FM Model 573"}, 70 .AudioChannels = 1,
70 {0x0573, 0x4d35, 0, CODEC_SAA7113, 3, V4L2_STD_PAL, 1, 1, 1, 1, TUNER_MICROTUNE_4049FM5, -1, -1, 0, 3, 7, "Hauppauge WinTv-USB III (PAL) FM Model 40219 Rev B252"}, 71 .Radio = 0,
71 {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 device Model 40219 Rev E189"}, 72 .vbi = 1,
72 {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"}, 73 .Tuner = 0,
73 {0x07d0, 0x0001, -1, CODEC_SAA7113, 2, V4L2_STD_PAL, 0, 0, 1, 0, 0, -1, -1, 0, 3, 7, "Digital Video Creator I"}, 74 .TunerType = 0,
74 {0x07d0, 0x0002, -1, CODEC_SAA7111, 2, V4L2_STD_NTSC, 0, 0, 1, 0, 0, -1, -1, 82, 20, 7, "Global Village GV-007 (NTSC)"}, 75 .X_Offset = -1,
75 {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)"}, 76 .Y_Offset = -1,
76 {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)"}, 77 .ModelString = "Belkin Components USB VideoBus",
77 {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)"}, 78 },
78 {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)"}, 79 [BELKIN_USB_VIDEOBUS_II] = {
79 {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)"}, 80 .Interface = -1,
80 {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"}, 81 .Codec = CODEC_SAA7113,
81 {0x2304, 0x0111, -1, CODEC_SAA7111, 3, V4L2_STD_PAL, 1, 0, 1, 1, TUNER_PHILIPS_PAL, -1, -1, -1, -1, -1, "Miro PCTV USB"}, 82 .VideoChannels = 2,
82 {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"}, 83 .VideoNorm = V4L2_STD_PAL,
83 {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"}, 84 .AudioChannels = 1,
84 {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"}, 85 .Radio = 0,
85 {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"}, 86 .vbi = 1,
86 {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)"}, 87 .Tuner = 0,
87 {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)"}, 88 .TunerType = 0,
88 {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"}, 89 .X_Offset = 0,
89 {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"}, 90 .Y_Offset = 3,
90 {} /* Terminating entry */ 91 .Dvi_yuv_override = 1,
92 .Dvi_yuv = 7,
93 .ModelString = "Belkin USB VideoBus II",
94 },
95 [ECHOFX_INTERVIEW_LITE] = {
96 .Interface = 0,
97 .Codec = CODEC_SAA7111,
98 .VideoChannels = 2,
99 .VideoNorm = V4L2_STD_PAL,
100 .AudioChannels = 0,
101 .Radio = 0,
102 .vbi = 1,
103 .Tuner = 0,
104 .TunerType = 0,
105 .X_Offset = -1,
106 .Y_Offset = -1,
107 .Dvi_yuv_override = 1,
108 .Dvi_yuv = 7,
109 .ModelString = "echoFX InterView Lite",
110 },
111 [USBGEAR_USBG_V1] = {
112 .Interface = -1,
113 .Codec = CODEC_SAA7111,
114 .VideoChannels = 2,
115 .VideoNorm = V4L2_STD_NTSC,
116 .AudioChannels = 1,
117 .Radio = 0,
118 .vbi = 1,
119 .Tuner = 0,
120 .TunerType = 0,
121 .X_Offset = -1,
122 .Y_Offset = -1,
123 .ModelString = "USBGear USBG-V1 resp. HAMA USB",
124 },
125 [D_LINK_V100] = {
126 .Interface = -1,
127 .Codec = CODEC_SAA7113,
128 .VideoChannels = 4,
129 .VideoNorm = V4L2_STD_NTSC,
130 .AudioChannels = 0,
131 .Radio = 0,
132 .vbi = 1,
133 .Tuner = 0,
134 .TunerType = 0,
135 .X_Offset = 0,
136 .Y_Offset = 3,
137 .Dvi_yuv_override = 1,
138 .Dvi_yuv = 7,
139 .ModelString = "D-Link V100",
140 },
141 [X10_USB_CAMERA] = {
142 .Interface = -1,
143 .Codec = CODEC_SAA7111,
144 .VideoChannels = 2,
145 .VideoNorm = V4L2_STD_NTSC,
146 .AudioChannels = 1,
147 .Radio = 0,
148 .vbi = 1,
149 .Tuner = 0,
150 .TunerType = 0,
151 .X_Offset = -1,
152 .Y_Offset = -1,
153 .ModelString = "X10 USB Camera",
154 },
155 [HPG_WINTV_LIVE_PAL_BG] = {
156 .Interface = -1,
157 .Codec = CODEC_SAA7111,
158 .VideoChannels = 2,
159 .VideoNorm = V4L2_STD_PAL,
160 .AudioChannels = 1,
161 .Radio = 0,
162 .vbi = 1,
163 .Tuner = 0,
164 .TunerType = 0,
165 .X_Offset = -1,
166 .Y_Offset = 3,
167 .Dvi_yuv_override = 1,
168 .Dvi_yuv = 7,
169 .ModelString = "Hauppauge WinTV USB Live (PAL B/G)",
170 },
171 [HPG_WINTV_LIVE_PRO_NTSC_MN] = {
172 .Interface = -1,
173 .Codec = CODEC_SAA7113,
174 .VideoChannels = 2,
175 .VideoNorm = V4L2_STD_NTSC,
176 .AudioChannels = 0,
177 .Radio = 0,
178 .vbi = 1,
179 .Tuner = 0,
180 .TunerType = 0,
181 .X_Offset = 0,
182 .Y_Offset = 3,
183 .Dvi_yuv_override = 1,
184 .Dvi_yuv = 7,
185 .ModelString = "Hauppauge WinTV USB Live Pro (NTSC M/N)",
186 },
187 [ZORAN_PMD_NOGATECH] = {
188 .Interface = -1,
189 .Codec = CODEC_SAA7113,
190 .VideoChannels = 2,
191 .VideoNorm = V4L2_STD_PAL,
192 .AudioChannels = 2,
193 .Radio = 0,
194 .vbi = 1,
195 .Tuner = 0,
196 .TunerType = 0,
197 .X_Offset = 0,
198 .Y_Offset = 3,
199 .Dvi_yuv_override = 1,
200 .Dvi_yuv = 7,
201 .ModelString = "Zoran Co. PMD (Nogatech) AV-grabber Manhattan",
202 },
203 [NOGATECH_USB_TV_NTSC_FM] = {
204 .Interface = -1,
205 .Codec = CODEC_SAA7111,
206 .VideoChannels = 3,
207 .VideoNorm = V4L2_STD_NTSC,
208 .AudioChannels = 1,
209 .Radio = 1,
210 .vbi = 1,
211 .Tuner = 1,
212 .TunerType = TUNER_PHILIPS_NTSC_M,
213 .X_Offset = -1,
214 .Y_Offset = 20,
215 .ModelString = "Nogatech USB-TV (NTSC) FM",
216 },
217 [PNY_USB_TV_NTSC_FM] = {
218 .Interface = -1,
219 .Codec = CODEC_SAA7111,
220 .VideoChannels = 3,
221 .VideoNorm = V4L2_STD_NTSC,
222 .AudioChannels = 1,
223 .Radio = 1,
224 .vbi = 1,
225 .Tuner = 1,
226 .TunerType = TUNER_PHILIPS_NTSC_M,
227 .X_Offset = -1,
228 .Y_Offset = 20,
229 .ModelString = "PNY USB-TV (NTSC) FM",
230 },
231 [PV_PLAYTV_USB_PRO_PAL_FM] = {
232 .Interface = 0,
233 .Codec = CODEC_SAA7113,
234 .VideoChannels = 3,
235 .VideoNorm = V4L2_STD_PAL,
236 .AudioChannels = 1,
237 .Radio = 1,
238 .vbi = 1,
239 .Tuner = 1,
240 .TunerType = TUNER_PHILIPS_PAL,
241 .X_Offset = 0,
242 .Y_Offset = 3,
243 .Dvi_yuv_override = 1,
244 .Dvi_yuv = 7,
245 .ModelString = "PixelView PlayTv-USB PRO (PAL) FM",
246 },
247 [ZT_721] = {
248 .Interface = 0,
249 .Codec = CODEC_SAA7113,
250 .VideoChannels = 3,
251 .VideoNorm = V4L2_STD_PAL,
252 .AudioChannels = 1,
253 .Radio = 1,
254 .vbi = 1,
255 .Tuner = 1,
256 .TunerType = TUNER_PHILIPS_PAL,
257 .X_Offset = 0,
258 .Y_Offset = 3,
259 .Dvi_yuv_override = 1,
260 .Dvi_yuv = 7,
261 .ModelString = "ZTV ZT-721 2.4GHz USB A/V Receiver",
262 },
263 [HPG_WINTV_NTSC_MN] = {
264 .Interface = -1,
265 .Codec = CODEC_SAA7111,
266 .VideoChannels = 3,
267 .VideoNorm = V4L2_STD_NTSC,
268 .AudioChannels = 1,
269 .Radio = 0,
270 .vbi = 1,
271 .Tuner = 1,
272 .TunerType = TUNER_PHILIPS_NTSC_M,
273 .X_Offset = -1,
274 .Y_Offset = 20,
275 .ModelString = "Hauppauge WinTV USB (NTSC M/N)",
276 },
277 [HPG_WINTV_PAL_BG] = {
278 .Interface = -1,
279 .Codec = CODEC_SAA7111,
280 .VideoChannels = 3,
281 .VideoNorm = V4L2_STD_PAL,
282 .AudioChannels = 1,
283 .Radio = 0,
284 .vbi = 1,
285 .Tuner = 1,
286 .TunerType = TUNER_PHILIPS_PAL,
287 .X_Offset = -1,
288 .Y_Offset = -1,
289 .ModelString = "Hauppauge WinTV USB (PAL B/G)",
290 },
291 [HPG_WINTV_PAL_I] = {
292 .Interface = -1,
293 .Codec = CODEC_SAA7111,
294 .VideoChannels = 3,
295 .VideoNorm = V4L2_STD_PAL,
296 .AudioChannels = 1,
297 .Radio = 0,
298 .vbi = 1,
299 .Tuner = 1,
300 .TunerType = TUNER_PHILIPS_PAL,
301 .X_Offset = -1,
302 .Y_Offset = -1,
303 .ModelString = "Hauppauge WinTV USB (PAL I)",
304 },
305 [HPG_WINTV_PAL_SECAM_L] = {
306 .Interface = -1,
307 .Codec = CODEC_SAA7111,
308 .VideoChannels = 3,
309 .VideoNorm = V4L2_STD_SECAM,
310 .AudioChannels = 1,
311 .Radio = 0,
312 .vbi = 1,
313 .Tuner = 1,
314 .TunerType = TUNER_PHILIPS_SECAM,
315 .X_Offset = -1,
316 .Y_Offset = -1,
317 .ModelString = "Hauppauge WinTV USB (PAL/SECAM L)",
318 },
319 [HPG_WINTV_PAL_D_K] = {
320 .Interface = -1,
321 .Codec = CODEC_SAA7111,
322 .VideoChannels = 3,
323 .VideoNorm = V4L2_STD_PAL,
324 .AudioChannels = 1,
325 .Radio = 0,
326 .vbi = 1,
327 .Tuner = 1,
328 .TunerType = TUNER_PHILIPS_PAL,
329 .X_Offset = -1,
330 .Y_Offset = -1,
331 .ModelString = "Hauppauge WinTV USB (PAL D/K)",
332 },
333 [HPG_WINTV_NTSC_FM] = {
334 .Interface = -1,
335 .Codec = CODEC_SAA7111,
336 .VideoChannels = 3,
337 .VideoNorm = V4L2_STD_NTSC,
338 .AudioChannels = 1,
339 .Radio = 1,
340 .vbi = 1,
341 .Tuner = 1,
342 .TunerType = TUNER_PHILIPS_NTSC_M,
343 .X_Offset = -1,
344 .Y_Offset = -1,
345 .ModelString = "Hauppauge WinTV USB (NTSC FM)",
346 },
347 [HPG_WINTV_PAL_BG_FM] = {
348 .Interface = -1,
349 .Codec = CODEC_SAA7111,
350 .VideoChannels = 3,
351 .VideoNorm = V4L2_STD_PAL,
352 .AudioChannels = 1,
353 .Radio = 1,
354 .vbi = 1,
355 .Tuner = 1,
356 .TunerType = TUNER_PHILIPS_PAL,
357 .X_Offset = -1,
358 .Y_Offset = -1,
359 .ModelString = "Hauppauge WinTV USB (PAL B/G FM)",
360 },
361 [HPG_WINTV_PAL_I_FM] = {
362 .Interface = -1,
363 .Codec = CODEC_SAA7111,
364 .VideoChannels = 3,
365 .VideoNorm = V4L2_STD_PAL,
366 .AudioChannels = 1,
367 .Radio = 1,
368 .vbi = 1,
369 .Tuner = 1,
370 .TunerType = TUNER_PHILIPS_PAL,
371 .X_Offset = -1,
372 .Y_Offset = -1,
373 .ModelString = "Hauppauge WinTV USB (PAL I FM)",
374 },
375 [HPG_WINTV_PAL_D_K_FM] = {
376 .Interface = -1,
377 .Codec = CODEC_SAA7111,
378 .VideoChannels = 3,
379 .VideoNorm = V4L2_STD_PAL,
380 .AudioChannels = 1,
381 .Radio = 1,
382 .vbi = 1,
383 .Tuner = 1,
384 .TunerType = TUNER_PHILIPS_PAL,
385 .X_Offset = -1,
386 .Y_Offset = -1,
387 .ModelString = "Hauppauge WinTV USB (PAL D/K FM)",
388 },
389 [HPG_WINTV_PRO_NTSC_MN] = {
390 .Interface = 0,
391 .Codec = CODEC_SAA7113,
392 .VideoChannels = 3,
393 .VideoNorm = V4L2_STD_NTSC,
394 .AudioChannels = 1,
395 .Radio = 1,
396 .vbi = 1,
397 .Tuner = 1,
398 .TunerType = TUNER_MICROTUNE_4049FM5,
399 .X_Offset = 0,
400 .Y_Offset = 3,
401 .Dvi_yuv_override = 1,
402 .Dvi_yuv = 7,
403 .ModelString = "Hauppauge WinTV USB Pro (NTSC M/N)",
404 },
405 [HPG_WINTV_PRO_NTSC_MN_V2] = {
406 .Interface = 0,
407 .Codec = CODEC_SAA7113,
408 .VideoChannels = 3,
409 .VideoNorm = V4L2_STD_NTSC,
410 .AudioChannels = 1,
411 .Radio = 1,
412 .vbi = 1,
413 .Tuner = 1,
414 .TunerType = TUNER_MICROTUNE_4049FM5,
415 .X_Offset = 0,
416 .Y_Offset = 3,
417 .Dvi_yuv_override = 1,
418 .Dvi_yuv = 7,
419 .ModelString = "Hauppauge WinTV USB Pro (NTSC M/N) V2",
420 },
421 [HPG_WINTV_PRO_PAL] = {
422 .Interface = 0,
423 .Codec = CODEC_SAA7113,
424 .VideoChannels = 3,
425 .VideoNorm = V4L2_STD_PAL,
426 .AudioChannels = 1,
427 .Radio = 0,
428 .vbi = 1,
429 .Tuner = 1,
430 .TunerType = TUNER_PHILIPS_FM1216ME_MK3,
431 .X_Offset = 0,
432 .Y_Offset = 3,
433 .Dvi_yuv_override = 1,
434 .Dvi_yuv = 7,
435 .ModelString = "Hauppauge WinTV USB Pro (PAL/SECAM B/G/I/D/K/L)",
436 },
437 [HPG_WINTV_PRO_NTSC_MN_V3] = {
438 .Interface = 0,
439 .Codec = CODEC_SAA7113,
440 .VideoChannels = 3,
441 .VideoNorm = V4L2_STD_NTSC,
442 .AudioChannels = 1,
443 .Radio = 1,
444 .vbi = 1,
445 .Tuner = 1,
446 .TunerType = TUNER_PHILIPS_NTSC_M,
447 .X_Offset = 0,
448 .Y_Offset = 3,
449 .Dvi_yuv_override = 1,
450 .Dvi_yuv = 7,
451 .ModelString = "Hauppauge WinTV USB Pro (NTSC M/N) V3",
452 },
453 [HPG_WINTV_PRO_PAL_BG] = {
454 .Interface = 0,
455 .Codec = CODEC_SAA7113,
456 .VideoChannels = 3,
457 .VideoNorm = V4L2_STD_PAL,
458 .AudioChannels = 1,
459 .Radio = 0,
460 .vbi = 1,
461 .Tuner = 1,
462 .TunerType = TUNER_PHILIPS_PAL,
463 .X_Offset = 0,
464 .Y_Offset = 3,
465 .Dvi_yuv_override = 1,
466 .Dvi_yuv = 7,
467 .ModelString = "Hauppauge WinTV USB Pro (PAL B/G)",
468 },
469 [HPG_WINTV_PRO_PAL_I] = {
470 .Interface = 0,
471 .Codec = CODEC_SAA7113,
472 .VideoChannels = 3,
473 .VideoNorm = V4L2_STD_PAL,
474 .AudioChannels = 1,
475 .Radio = 0,
476 .vbi = 1,
477 .Tuner = 1,
478 .TunerType = TUNER_PHILIPS_PAL,
479 .X_Offset = 0,
480 .Y_Offset = 3,
481 .Dvi_yuv_override = 1,
482 .Dvi_yuv = 7,
483 .ModelString = "Hauppauge WinTV USB Pro (PAL I)",
484 },
485 [HPG_WINTV_PRO_PAL_SECAM_L] = {
486 .Interface = -1,
487 .Codec = CODEC_SAA7113,
488 .VideoChannels = 3,
489 .VideoNorm = V4L2_STD_SECAM,
490 .AudioChannels = 1,
491 .Radio = 0,
492 .vbi = 1,
493 .Tuner = 1,
494 .TunerType = TUNER_PHILIPS_SECAM,
495 .X_Offset = 0,
496 .Y_Offset = 3,
497 .Dvi_yuv_override = 1,
498 .Dvi_yuv = 7,
499 .ModelString = "Hauppauge WinTV USB Pro (PAL/SECAM L)",
500 },
501 [HPG_WINTV_PRO_PAL_D_K] = {
502 .Interface = -1,
503 .Codec = CODEC_SAA7113,
504 .VideoChannels = 3,
505 .VideoNorm = V4L2_STD_PAL,
506 .AudioChannels = 1,
507 .Radio = 0,
508 .vbi = 1,
509 .Tuner = 1,
510 .TunerType = TUNER_PHILIPS_PAL,
511 .X_Offset = 0,
512 .Y_Offset = 3,
513 .Dvi_yuv_override = 1,
514 .Dvi_yuv = 7,
515 .ModelString = "Hauppauge WinTV USB Pro (PAL D/K)",
516 },
517 [HPG_WINTV_PRO_PAL_SECAM] = {
518 .Interface = -1,
519 .Codec = CODEC_SAA7113,
520 .VideoChannels = 3,
521 .VideoNorm = V4L2_STD_SECAM,
522 .AudioChannels = 1,
523 .Radio = 0,
524 .vbi = 1,
525 .Tuner = 1,
526 .TunerType = TUNER_PHILIPS_SECAM,
527 .X_Offset = 0,
528 .Y_Offset = 3,
529 .Dvi_yuv_override = 1,
530 .Dvi_yuv = 7,
531 .ModelString = "Hauppauge WinTV USB Pro (PAL/SECAM BGDK/I/L)",
532 },
533 [HPG_WINTV_PRO_PAL_SECAM_V2] = {
534 .Interface = -1,
535 .Codec = CODEC_SAA7113,
536 .VideoChannels = 3,
537 .VideoNorm = V4L2_STD_SECAM,
538 .AudioChannels = 1,
539 .Radio = 0,
540 .vbi = 1,
541 .Tuner = 1,
542 .TunerType = TUNER_PHILIPS_SECAM,
543 .X_Offset = 0,
544 .Y_Offset = 3,
545 .Dvi_yuv_override = 1,
546 .Dvi_yuv = 7,
547 .ModelString = "Hauppauge WinTV USB Pro (PAL/SECAM BGDK/I/L) V2",
548 },
549 [HPG_WINTV_PRO_PAL_BG_V2] = {
550 .Interface = -1,
551 .Codec = CODEC_SAA7113,
552 .VideoChannels = 3,
553 .VideoNorm = V4L2_STD_PAL,
554 .AudioChannels = 1,
555 .Radio = 0,
556 .vbi = 1,
557 .Tuner = 1,
558 .TunerType = TUNER_ALPS_TSBE1_PAL,
559 .X_Offset = 0,
560 .Y_Offset = 3,
561 .Dvi_yuv_override = 1,
562 .Dvi_yuv = 7,
563 .ModelString = "Hauppauge WinTV USB Pro (PAL B/G) V2",
564 },
565 [HPG_WINTV_PRO_PAL_BG_D_K] = {
566 .Interface = -1,
567 .Codec = CODEC_SAA7113,
568 .VideoChannels = 3,
569 .VideoNorm = V4L2_STD_PAL,
570 .AudioChannels = 1,
571 .Radio = 0,
572 .vbi = 1,
573 .Tuner = 1,
574 .TunerType = TUNER_ALPS_TSBE1_PAL,
575 .X_Offset = 0,
576 .Y_Offset = 3,
577 .Dvi_yuv_override = 1,
578 .Dvi_yuv = 7,
579 .ModelString = "Hauppauge WinTV USB Pro (PAL B/G,D/K)",
580 },
581 [HPG_WINTV_PRO_PAL_I_D_K] = {
582 .Interface = -1,
583 .Codec = CODEC_SAA7113,
584 .VideoChannels = 3,
585 .VideoNorm = V4L2_STD_PAL,
586 .AudioChannels = 1,
587 .Radio = 0,
588 .vbi = 1,
589 .Tuner = 1,
590 .TunerType = TUNER_PHILIPS_PAL,
591 .X_Offset = 0,
592 .Y_Offset = 3,
593 .Dvi_yuv_override = 1,
594 .Dvi_yuv = 7,
595 .ModelString = "Hauppauge WinTV USB Pro (PAL I,D/K)",
596 },
597 [HPG_WINTV_PRO_NTSC_MN_FM] = {
598 .Interface = -1,
599 .Codec = CODEC_SAA7113,
600 .VideoChannels = 3,
601 .VideoNorm = V4L2_STD_NTSC,
602 .AudioChannels = 1,
603 .Radio = 1,
604 .vbi = 1,
605 .Tuner = 1,
606 .TunerType = TUNER_PHILIPS_NTSC_M,
607 .X_Offset = 0,
608 .Y_Offset = 3,
609 .Dvi_yuv_override = 1,
610 .Dvi_yuv = 7,
611 .ModelString = "Hauppauge WinTV USB Pro (NTSC M/N FM)",
612 },
613 [HPG_WINTV_PRO_PAL_BG_FM] = {
614 .Interface = 0,
615 .Codec = CODEC_SAA7113,
616 .VideoChannels = 3,
617 .VideoNorm = V4L2_STD_PAL,
618 .AudioChannels = 1,
619 .Radio = 1,
620 .vbi = 1,
621 .Tuner = 1,
622 .TunerType = TUNER_PHILIPS_PAL,
623 .X_Offset = 0,
624 .Y_Offset = 3,
625 .Dvi_yuv_override = 1,
626 .Dvi_yuv = 7,
627 .ModelString = "Hauppauge WinTV USB Pro (PAL B/G FM)",
628 },
629 [HPG_WINTV_PRO_PAL_I_FM] = {
630 .Interface = 0,
631 .Codec = CODEC_SAA7113,
632 .VideoChannels = 3,
633 .VideoNorm = V4L2_STD_PAL,
634 .AudioChannels = 1,
635 .Radio = 1,
636 .vbi = 1,
637 .Tuner = 1,
638 .TunerType = TUNER_PHILIPS_PAL,
639 .X_Offset = 0,
640 .Y_Offset = 3,
641 .Dvi_yuv_override = 1,
642 .Dvi_yuv = 7,
643 .ModelString = "Hauppauge WinTV USB Pro (PAL I FM)",
644 },
645 [HPG_WINTV_PRO_PAL_D_K_FM] = {
646 .Interface = 0,
647 .Codec = CODEC_SAA7113,
648 .VideoChannels = 3,
649 .VideoNorm = V4L2_STD_PAL,
650 .AudioChannels = 1,
651 .Radio = 1,
652 .vbi = 1,
653 .Tuner = 1,
654 .TunerType = TUNER_PHILIPS_PAL,
655 .X_Offset = 0,
656 .Y_Offset = 3,
657 .Dvi_yuv_override = 1,
658 .Dvi_yuv = 7,
659 .ModelString = "Hauppauge WinTV USB Pro (PAL D/K FM)",
660 },
661 [HPG_WINTV_PRO_TEMIC_PAL_FM] = {
662 .Interface = 0,
663 .Codec = CODEC_SAA7113,
664 .VideoChannels = 3,
665 .VideoNorm = V4L2_STD_PAL,
666 .AudioChannels = 1,
667 .Radio = 1,
668 .vbi = 1,
669 .Tuner = 1,
670 .TunerType = TUNER_MICROTUNE_4049FM5,
671 .X_Offset = 0,
672 .Y_Offset = 3,
673 .Dvi_yuv_override = 1,
674 .Dvi_yuv = 7,
675 .ModelString = "Hauppauge WinTV USB Pro (Temic PAL/SECAM B/G/I/D/K/L FM)",
676 },
677 [HPG_WINTV_PRO_TEMIC_PAL_BG_FM] = {
678 .Interface = 0,
679 .Codec = CODEC_SAA7113,
680 .VideoChannels = 3,
681 .VideoNorm = V4L2_STD_PAL,
682 .AudioChannels = 1,
683 .Radio = 1,
684 .vbi = 1,
685 .Tuner = 1,
686 .TunerType = TUNER_MICROTUNE_4049FM5,
687 .X_Offset = 0,
688 .Y_Offset = 3,
689 .Dvi_yuv_override = 1,
690 .Dvi_yuv = 7,
691 .ModelString = "Hauppauge WinTV USB Pro (Temic PAL B/G FM)",
692 },
693 [HPG_WINTV_PRO_PAL_FM] = {
694 .Interface = 0,
695 .Codec = CODEC_SAA7113,
696 .VideoChannels = 3,
697 .VideoNorm = V4L2_STD_PAL,
698 .AudioChannels = 1,
699 .Radio = 1,
700 .vbi = 1,
701 .Tuner = 1,
702 .TunerType = TUNER_PHILIPS_FM1216ME_MK3,
703 .X_Offset = 0,
704 .Y_Offset = 3,
705 .Dvi_yuv_override = 1,
706 .Dvi_yuv = 7,
707 .ModelString = "Hauppauge WinTV USB Pro (PAL/SECAM B/G/I/D/K/L FM)",
708 },
709 [HPG_WINTV_PRO_NTSC_MN_FM_V2] = {
710 .Interface = 0,
711 .Codec = CODEC_SAA7113,
712 .VideoChannels = 3,
713 .VideoNorm = V4L2_STD_NTSC,
714 .AudioChannels = 1,
715 .Radio = 1,
716 .vbi = 1,
717 .Tuner = 1,
718 .TunerType = TUNER_PHILIPS_NTSC_M,
719 .X_Offset = 0,
720 .Y_Offset = 3,
721 .Dvi_yuv_override = 1,
722 .Dvi_yuv = 7,
723 .ModelString = "Hauppauge WinTV USB Pro (NTSC M/N FM) V2",
724 },
725 [CAMTEL_TVB330] = {
726 .Interface = -1,
727 .Codec = CODEC_SAA7113,
728 .VideoChannels = 3,
729 .VideoNorm = V4L2_STD_NTSC,
730 .AudioChannels = 1,
731 .Radio = 1,
732 .vbi = 1,
733 .Tuner = 1,
734 .TunerType = TUNER_PHILIPS_NTSC_M,
735 .X_Offset = 5,
736 .Y_Offset = 5,
737 .ModelString = "Camtel Technology USB TV Genie Pro FM Model TVB330",
738 },
739 [DIGITAL_VIDEO_CREATOR_I] = {
740 .Interface = -1,
741 .Codec = CODEC_SAA7113,
742 .VideoChannels = 2,
743 .VideoNorm = V4L2_STD_PAL,
744 .AudioChannels = 0,
745 .Radio = 0,
746 .vbi = 1,
747 .Tuner = 0,
748 .TunerType = 0,
749 .X_Offset = 0,
750 .Y_Offset = 3,
751 .Dvi_yuv_override = 1,
752 .Dvi_yuv = 7,
753 .ModelString = "Digital Video Creator I",
754 },
755 [GLOBAL_VILLAGE_GV_007_NTSC] = {
756 .Interface = -1,
757 .Codec = CODEC_SAA7111,
758 .VideoChannels = 2,
759 .VideoNorm = V4L2_STD_NTSC,
760 .AudioChannels = 0,
761 .Radio = 0,
762 .vbi = 1,
763 .Tuner = 0,
764 .TunerType = 0,
765 .X_Offset = 82,
766 .Y_Offset = 20,
767 .Dvi_yuv_override = 1,
768 .Dvi_yuv = 7,
769 .ModelString = "Global Village GV-007 (NTSC)",
770 },
771 [DAZZLE_DVC_50_REV_1_NTSC] = {
772 .Interface = 0,
773 .Codec = CODEC_SAA7113,
774 .VideoChannels = 2,
775 .VideoNorm = V4L2_STD_NTSC,
776 .AudioChannels = 0,
777 .Radio = 0,
778 .vbi = 1,
779 .Tuner = 0,
780 .TunerType = 0,
781 .X_Offset = 0,
782 .Y_Offset = 3,
783 .Dvi_yuv_override = 1,
784 .Dvi_yuv = 7,
785 .ModelString = "Dazzle Fusion Model DVC-50 Rev 1 (NTSC)",
786 },
787 [DAZZLE_DVC_80_REV_1_PAL] = {
788 .Interface = 0,
789 .Codec = CODEC_SAA7113,
790 .VideoChannels = 2,
791 .VideoNorm = V4L2_STD_PAL,
792 .AudioChannels = 0,
793 .Radio = 0,
794 .vbi = 1,
795 .Tuner = 0,
796 .TunerType = 0,
797 .X_Offset = 0,
798 .Y_Offset = 3,
799 .Dvi_yuv_override = 1,
800 .Dvi_yuv = 7,
801 .ModelString = "Dazzle Fusion Model DVC-80 Rev 1 (PAL)",
802 },
803 [DAZZLE_DVC_90_REV_1_SECAM] = {
804 .Interface = 0,
805 .Codec = CODEC_SAA7113,
806 .VideoChannels = 2,
807 .VideoNorm = V4L2_STD_SECAM,
808 .AudioChannels = 0,
809 .Radio = 0,
810 .vbi = 1,
811 .Tuner = 0,
812 .TunerType = 0,
813 .X_Offset = 0,
814 .Y_Offset = 3,
815 .Dvi_yuv_override = 1,
816 .Dvi_yuv = 7,
817 .ModelString = "Dazzle Fusion Model DVC-90 Rev 1 (SECAM)",
818 },
819 [ESKAPE_LABS_MYTV2GO] = {
820 .Interface = 0,
821 .Codec = CODEC_SAA7113,
822 .VideoChannels = 2,
823 .VideoNorm = V4L2_STD_PAL,
824 .AudioChannels = 1,
825 .Radio = 1,
826 .vbi = 1,
827 .Tuner = 1,
828 .TunerType = TUNER_PHILIPS_FM1216ME_MK3,
829 .X_Offset = 0,
830 .Y_Offset = 3,
831 .Dvi_yuv_override = 1,
832 .Dvi_yuv = 7,
833 .ModelString = "Eskape Labs MyTV2Go",
834 },
835 [PINNA_PCTV_USB_PAL] = {
836 .Interface = -1,
837 .Codec = CODEC_SAA7111,
838 .VideoChannels = 3,
839 .VideoNorm = V4L2_STD_PAL,
840 .AudioChannels = 1,
841 .Radio = 0,
842 .vbi = 0,
843 .Tuner = 1,
844 .TunerType = TUNER_TEMIC_4066FY5_PAL_I,
845 .X_Offset = -1,
846 .Y_Offset = -1,
847 .ModelString = "Pinnacle Studio PCTV USB (PAL)",
848 },
849 [PINNA_PCTV_USB_SECAM] = {
850 .Interface = -1,
851 .Codec = CODEC_SAA7111,
852 .VideoChannels = 3,
853 .VideoNorm = V4L2_STD_SECAM,
854 .AudioChannels = 1,
855 .Radio = 0,
856 .vbi = 1,
857 .Tuner = 1,
858 .TunerType = TUNER_PHILIPS_SECAM,
859 .X_Offset = -1,
860 .Y_Offset = -1,
861 .ModelString = "Pinnacle Studio PCTV USB (SECAM)",
862 },
863 [PINNA_PCTV_USB_PAL_FM] = {
864 .Interface = -1,
865 .Codec = CODEC_SAA7111,
866 .VideoChannels = 3,
867 .VideoNorm = V4L2_STD_PAL,
868 .AudioChannels = 1,
869 .Radio = 1,
870 .vbi = 1,
871 .Tuner = 1,
872 .TunerType = TUNER_PHILIPS_PAL,
873 .X_Offset = 128,
874 .Y_Offset = 23,
875 .ModelString = "Pinnacle Studio PCTV USB (PAL) FM",
876 },
877 [MIRO_PCTV_USB] = {
878 .Interface = -1,
879 .Codec = CODEC_SAA7111,
880 .VideoChannels = 3,
881 .VideoNorm = V4L2_STD_PAL,
882 .AudioChannels = 1,
883 .Radio = 0,
884 .vbi = 1,
885 .Tuner = 1,
886 .TunerType = TUNER_PHILIPS_PAL,
887 .X_Offset = -1,
888 .Y_Offset = -1,
889 .ModelString = "Miro PCTV USB",
890 },
891 [PINNA_PCTV_USB_NTSC_FM] = {
892 .Interface = -1,
893 .Codec = CODEC_SAA7111,
894 .VideoChannels = 3,
895 .VideoNorm = V4L2_STD_NTSC,
896 .AudioChannels = 1,
897 .Radio = 1,
898 .vbi = 1,
899 .Tuner = 1,
900 .TunerType = TUNER_PHILIPS_NTSC_M,
901 .X_Offset = -1,
902 .Y_Offset = -1,
903 .ModelString = "Pinnacle Studio PCTV USB (NTSC) FM",
904 },
905 [PINNA_PCTV_USB_PAL_FM_V2] = {
906 .Interface = -1,
907 .Codec = CODEC_SAA7113,
908 .VideoChannels = 3,
909 .VideoNorm = V4L2_STD_PAL,
910 .AudioChannels = 1,
911 .Radio = 1,
912 .vbi = 1,
913 .Tuner = 1,
914 .TunerType = TUNER_TEMIC_4009FR5_PAL,
915 .X_Offset = 0,
916 .Y_Offset = 3,
917 .Dvi_yuv_override = 1,
918 .Dvi_yuv = 7,
919 .ModelString = "Pinnacle Studio PCTV USB (PAL) FM V2",
920 },
921 [PINNA_PCTV_USB_NTSC_FM_V2] = {
922 .Interface = -1,
923 .Codec = CODEC_SAA7111,
924 .VideoChannels = 3,
925 .VideoNorm = V4L2_STD_NTSC,
926 .AudioChannels = 1,
927 .Radio = 1,
928 .vbi = 1,
929 .Tuner = 1,
930 .TunerType = TUNER_TEMIC_4039FR5_NTSC,
931 .X_Offset = 0,
932 .Y_Offset = 3,
933 .Dvi_yuv_override = 1,
934 .Dvi_yuv = 7,
935 .ModelString = "Pinnacle Studio PCTV USB (NTSC) FM V2",
936 },
937 [PINNA_PCTV_USB_PAL_FM_V3] = {
938 .Interface = -1,
939 .Codec = CODEC_SAA7113,
940 .VideoChannels = 3,
941 .VideoNorm = V4L2_STD_PAL,
942 .AudioChannels = 1,
943 .Radio = 1,
944 .vbi = 1,
945 .Tuner = 1,
946 .TunerType = TUNER_TEMIC_4009FR5_PAL,
947 .X_Offset = 0,
948 .Y_Offset = 3,
949 .Dvi_yuv_override = 1,
950 .Dvi_yuv = 7,
951 .ModelString = "Pinnacle Studio PCTV USB (PAL) FM V3",
952 },
953 [PINNA_LINX_VD_IN_CAB_NTSC] = {
954 .Interface = -1,
955 .Codec = CODEC_SAA7113,
956 .VideoChannels = 2,
957 .VideoNorm = V4L2_STD_NTSC,
958 .AudioChannels = 1,
959 .Radio = 0,
960 .vbi = 1,
961 .Tuner = 0,
962 .TunerType = 0,
963 .X_Offset = 0,
964 .Y_Offset = 3,
965 .Dvi_yuv_override = 1,
966 .Dvi_yuv = 7,
967 .ModelString = "Pinnacle Studio Linx Video input cable (NTSC)",
968 },
969 [PINNA_LINX_VD_IN_CAB_PAL] = {
970 .Interface = -1,
971 .Codec = CODEC_SAA7113,
972 .VideoChannels = 2,
973 .VideoNorm = V4L2_STD_PAL,
974 .AudioChannels = 1,
975 .Radio = 0,
976 .vbi = 1,
977 .Tuner = 0,
978 .TunerType = 0,
979 .X_Offset = 0,
980 .Y_Offset = 3,
981 .Dvi_yuv_override = 1,
982 .Dvi_yuv = 7,
983 .ModelString = "Pinnacle Studio Linx Video input cable (PAL)",
984 },
985 [PINNA_PCTV_BUNGEE_PAL_FM] = {
986 .Interface = -1,
987 .Codec = CODEC_SAA7113,
988 .VideoChannels = 3,
989 .VideoNorm = V4L2_STD_PAL,
990 .AudioChannels = 1,
991 .Radio = 1,
992 .vbi = 1,
993 .Tuner = 1,
994 .TunerType = TUNER_TEMIC_4009FR5_PAL,
995 .X_Offset = 0,
996 .Y_Offset = 3,
997 .Dvi_yuv_override = 1,
998 .Dvi_yuv = 7,
999 .ModelString = "Pinnacle PCTV Bungee USB (PAL) FM",
1000 },
1001 [HPG_WINTV] = {
1002 .Interface = -1,
1003 .Codec = CODEC_SAA7111,
1004 .VideoChannels = 3,
1005 .VideoNorm = V4L2_STD_NTSC,
1006 .AudioChannels = 1,
1007 .Radio = 0,
1008 .vbi = 1,
1009 .Tuner = 1,
1010 .TunerType = TUNER_PHILIPS_NTSC_M,
1011 .X_Offset = -1,
1012 .Y_Offset = -1,
1013 .ModelString = "Hauppauge WinTv-USB",
1014 },
91}; 1015};
1016const int usbvision_device_data_size=ARRAY_SIZE(usbvision_device_data);
92 1017
93/* Supported Devices */ 1018/* Supported Devices */
94 1019
95struct usb_device_id usbvision_table [] = { 1020struct usb_device_id usbvision_table [] = {
96 { USB_DEVICE(0xFFF0, 0xFFF0) }, /* Custom Dummy USBVision Device */ 1021 { USB_DEVICE(0x0a6f, 0x0400), .driver_info=XANBOO },
97 { USB_DEVICE(0x0A6F, 0x0400) }, /* Xanboo */ 1022 { USB_DEVICE(0x050d, 0x0106), .driver_info=BELKIN_VIDEOBUS_II },
98 { USB_DEVICE(0x050d, 0x0208) }, /* Belkin USBView II */ 1023 { USB_DEVICE(0x050d, 0x0207), .driver_info=BELKIN_VIDEOBUS },
99 { USB_DEVICE(0x0571, 0x0002) }, /* echoFX InterView Lite */ 1024 { USB_DEVICE(0x050d, 0x0208), .driver_info=BELKIN_USB_VIDEOBUS_II },
100 { USB_DEVICE(0x0573, 0x0003) }, /* USBGear USBG-V1 */ 1025 { USB_DEVICE(0x0571, 0x0002), .driver_info=ECHOFX_INTERVIEW_LITE },
101 { USB_DEVICE(0x0573, 0x0400) }, /* D-Link V100 */ 1026 { USB_DEVICE(0x0573, 0x0003), .driver_info=USBGEAR_USBG_V1 },
102 { USB_DEVICE(0x0573, 0x2000) }, /* X10 USB Camera */ 1027 { USB_DEVICE(0x0573, 0x0400), .driver_info=D_LINK_V100 },
103 { USB_DEVICE(0x0573, 0x2d00) }, /* Osprey 50 */ 1028 { USB_DEVICE(0x0573, 0x2000), .driver_info=X10_USB_CAMERA },
104 { USB_DEVICE(0x0573, 0x2d01) }, /* Hauppauge USB-Live Model 600 */ 1029 { USB_DEVICE(0x0573, 0x2d00), .driver_info=HPG_WINTV_LIVE_PAL_BG },
105 { USB_DEVICE(0x0573, 0x2101) }, /* Zoran Co. PMD (Nogatech) AV-grabber Manhattan */ 1030 { USB_DEVICE(0x0573, 0x2d01), .driver_info=HPG_WINTV_LIVE_PRO_NTSC_MN },
106 { USB_DEVICE(0x0573, 0x4100) }, /* Nogatech USB-TV FM (NTSC) */ 1031 { USB_DEVICE(0x0573, 0x2101), .driver_info=ZORAN_PMD_NOGATECH },
107 { USB_DEVICE(0x0573, 0x4110) }, /* PNY USB-TV (NTSC) FM */ 1032 { USB_DEVICE(0x0573, 0x4100), .driver_info=NOGATECH_USB_TV_NTSC_FM },
108 { USB_DEVICE(0x0573, 0x4450) }, /* PixelView PlayTv-USB PRO (PAL) FM */ 1033 { USB_DEVICE(0x0573, 0x4110), .driver_info=PNY_USB_TV_NTSC_FM },
109 { USB_DEVICE(0x0573, 0x4550) }, /* ZTV ZT-721 2.4GHz USB A/V Receiver */ 1034 { USB_DEVICE(0x0573, 0x4450), .driver_info=PV_PLAYTV_USB_PRO_PAL_FM },
110 { USB_DEVICE(0x0573, 0x4d00) }, /* Hauppauge WinTv-USB USA */ 1035 { USB_DEVICE(0x0573, 0x4550), .driver_info=ZT_721 },
111 { USB_DEVICE(0x0573, 0x4d01) }, /* Hauppauge WinTv-USB */ 1036 { USB_DEVICE(0x0573, 0x4d00), .driver_info=HPG_WINTV_NTSC_MN },
112 { USB_DEVICE(0x0573, 0x4d02) }, /* Hauppauge WinTv-USB UK */ 1037 { USB_DEVICE(0x0573, 0x4d01), .driver_info=HPG_WINTV_PAL_BG },
113 { USB_DEVICE(0x0573, 0x4d03) }, /* Hauppauge WinTv-USB France */ 1038 { USB_DEVICE(0x0573, 0x4d02), .driver_info=HPG_WINTV_PAL_I },
114 { USB_DEVICE(0x0573, 0x4d10) }, /* Hauppauge WinTv-USB with FM USA radio */ 1039 { USB_DEVICE(0x0573, 0x4d03), .driver_info=HPG_WINTV_PAL_SECAM_L },
115 { USB_DEVICE(0x0573, 0x4d11) }, /* Hauppauge WinTv-USB (PAL) with FM radio */ 1040 { USB_DEVICE(0x0573, 0x4d04), .driver_info=HPG_WINTV_PAL_D_K },
116 { USB_DEVICE(0x0573, 0x4d12) }, /* Hauppauge WinTv-USB UK with FM Radio */ 1041 { USB_DEVICE(0x0573, 0x4d10), .driver_info=HPG_WINTV_NTSC_FM },
117 { USB_DEVICE(0x0573, 0x4d2a) }, /* Hauppague WinTv USB Model 602 40201 Rev B285 */ 1042 { USB_DEVICE(0x0573, 0x4d11), .driver_info=HPG_WINTV_PAL_BG_FM },
118 { USB_DEVICE(0x0573, 0x4d2b) }, /* Hauppague WinTv USB Model 602 40201 Rev B282 */ 1043 { USB_DEVICE(0x0573, 0x4d12), .driver_info=HPG_WINTV_PAL_I_FM },
119 { USB_DEVICE(0x0573, 0x4d2c) }, /* Hauppague WinTv USB Model 40209 Rev. E1A5 PAL*/ 1044 { USB_DEVICE(0x0573, 0x4d14), .driver_info=HPG_WINTV_PAL_D_K_FM },
120 { USB_DEVICE(0x0573, 0x4d20) }, /* Hauppauge WinTv-USB II (PAL) FM Model 40201 Rev B226 */ 1045 { USB_DEVICE(0x0573, 0x4d2a), .driver_info=HPG_WINTV_PRO_NTSC_MN },
121 { USB_DEVICE(0x0573, 0x4d21) }, /* Hauppauge WinTv-USB II (PAL) with FM radio*/ 1046 { USB_DEVICE(0x0573, 0x4d2b), .driver_info=HPG_WINTV_PRO_NTSC_MN_V2 },
122 { USB_DEVICE(0x0573, 0x4d22) }, /* Hauppauge WinTv-USB II (PAL) Model 566 */ 1047 { USB_DEVICE(0x0573, 0x4d2c), .driver_info=HPG_WINTV_PRO_PAL },
123 { USB_DEVICE(0x0573, 0x4d23) }, /* Hauppauge WinTv-USB France 4D23*/ 1048 { USB_DEVICE(0x0573, 0x4d20), .driver_info=HPG_WINTV_PRO_NTSC_MN_V3 },
124 { USB_DEVICE(0x0573, 0x4d25) }, /* Hauppauge WinTv-USB Model 40209 rev B234 */ 1049 { USB_DEVICE(0x0573, 0x4d21), .driver_info=HPG_WINTV_PRO_PAL_BG },
125 { USB_DEVICE(0x0573, 0x4d26) }, /* Hauppauge WinTv-USB Model 40209 Rev B243 */ 1050 { USB_DEVICE(0x0573, 0x4d22), .driver_info=HPG_WINTV_PRO_PAL_I },
126 { USB_DEVICE(0x0573, 0x4d27) }, /* Hauppauge WinTv-USB Model 40204 Rev B281 */ 1051 { USB_DEVICE(0x0573, 0x4d23), .driver_info=HPG_WINTV_PRO_PAL_SECAM_L },
127 { USB_DEVICE(0x0573, 0x4d28) }, /* Hauppauge WinTv-USB Model 40204 Rev B283 */ 1052 { USB_DEVICE(0x0573, 0x4d24), .driver_info=HPG_WINTV_PRO_PAL_D_K },
128 { USB_DEVICE(0x0573, 0x4d29) }, /* Hauppauge WinTv-USB Model 40205 Rev B298 */ 1053 { USB_DEVICE(0x0573, 0x4d25), .driver_info=HPG_WINTV_PRO_PAL_SECAM },
129 { USB_DEVICE(0x0573, 0x4d30) }, /* Hauppauge WinTv-USB FM Model 40211 Rev B123 */ 1054 { USB_DEVICE(0x0573, 0x4d26), .driver_info=HPG_WINTV_PRO_PAL_SECAM_V2 },
130 { USB_DEVICE(0x0573, 0x4d31) }, /* Hauppauge WinTv-USB III (PAL) with FM radio Model 568 */ 1055 { USB_DEVICE(0x0573, 0x4d27), .driver_info=HPG_WINTV_PRO_PAL_BG_V2 },
131 { USB_DEVICE(0x0573, 0x4d32) }, /* Hauppauge WinTv-USB III (PAL) FM Model 573 */ 1056 { USB_DEVICE(0x0573, 0x4d28), .driver_info=HPG_WINTV_PRO_PAL_BG_D_K },
132 { USB_DEVICE(0x0573, 0x4d35) }, /* Hauppauge WinTv-USB III (SECAM) FM Model 40219 Rev B252 */ 1057 { USB_DEVICE(0x0573, 0x4d29), .driver_info=HPG_WINTV_PRO_PAL_I_D_K },
133 { USB_DEVICE(0x0573, 0x4d37) }, /* Hauppauge WinTv-USB Model 40219 Rev E189 */ 1058 { USB_DEVICE(0x0573, 0x4d30), .driver_info=HPG_WINTV_PRO_NTSC_MN_FM },
134 { USB_DEVICE(0x0768, 0x0006) }, /* Camtel Technology USB TV Genie Pro FM Model TVB330 */ 1059 { USB_DEVICE(0x0573, 0x4d31), .driver_info=HPG_WINTV_PRO_PAL_BG_FM },
135 { USB_DEVICE(0x07d0, 0x0001) }, /* Digital Video Creator I */ 1060 { USB_DEVICE(0x0573, 0x4d32), .driver_info=HPG_WINTV_PRO_PAL_I_FM },
136 { USB_DEVICE(0x07d0, 0x0002) }, /* Global Village GV-007 (NTSC) */ 1061 { USB_DEVICE(0x0573, 0x4d34), .driver_info=HPG_WINTV_PRO_PAL_D_K_FM },
137 { USB_DEVICE(0x07d0, 0x0003) }, /* Dazzle Fusion Model DVC-50 Rev 1 (NTSC) */ 1062 { USB_DEVICE(0x0573, 0x4d35), .driver_info=HPG_WINTV_PRO_TEMIC_PAL_FM },
138 { USB_DEVICE(0x07d0, 0x0004) }, /* Dazzle Fusion Model DVC-80 Rev 1 (PAL) */ 1063 { USB_DEVICE(0x0573, 0x4d36), .driver_info=HPG_WINTV_PRO_TEMIC_PAL_BG_FM },
139 { USB_DEVICE(0x07d0, 0x0005) }, /* Dazzle Fusion Model DVC-90 Rev 1 (SECAM) */ 1064 { USB_DEVICE(0x0573, 0x4d37), .driver_info=HPG_WINTV_PRO_PAL_FM },
140 { USB_DEVICE(0x2304, 0x010d) }, /* Pinnacle Studio PCTV USB (PAL) */ 1065 { USB_DEVICE(0x0573, 0x4d38), .driver_info=HPG_WINTV_PRO_NTSC_MN_FM_V2 },
141 { USB_DEVICE(0x2304, 0x0109) }, /* Pinnacle Studio PCTV USB (SECAM) */ 1066 { USB_DEVICE(0x0768, 0x0006), .driver_info=CAMTEL_TVB330 },
142 { USB_DEVICE(0x2304, 0x0110) }, /* Pinnacle Studio PCTV USB (PAL) */ 1067 { USB_DEVICE(0x07d0, 0x0001), .driver_info=DIGITAL_VIDEO_CREATOR_I },
143 { USB_DEVICE(0x2304, 0x0111) }, /* Miro PCTV USB */ 1068 { USB_DEVICE(0x07d0, 0x0002), .driver_info=GLOBAL_VILLAGE_GV_007_NTSC },
144 { USB_DEVICE(0x2304, 0x0112) }, /* Pinnacle Studio PCTV USB (NTSC) with FM radio */ 1069 { USB_DEVICE(0x07d0, 0x0003), .driver_info=DAZZLE_DVC_50_REV_1_NTSC },
145 { USB_DEVICE(0x2304, 0x0210) }, /* Pinnacle Studio PCTV USB (PAL) with FM radio */ 1070 { USB_DEVICE(0x07d0, 0x0004), .driver_info=DAZZLE_DVC_80_REV_1_PAL },
146 { USB_DEVICE(0x2304, 0x0212) }, /* Pinnacle Studio PCTV USB (NTSC) with FM radio */ 1071 { USB_DEVICE(0x07d0, 0x0005), .driver_info=DAZZLE_DVC_90_REV_1_SECAM },
147 { USB_DEVICE(0x2304, 0x0214) }, /* Pinnacle Studio PCTV USB (PAL) with FM radio */ 1072 { USB_DEVICE(0x07f8, 0x9104), .driver_info=ESKAPE_LABS_MYTV2GO },
148 { USB_DEVICE(0x2304, 0x0300) }, /* Pinnacle Studio Linx Video input cable (NTSC) */ 1073 { USB_DEVICE(0x2304, 0x010d), .driver_info=PINNA_PCTV_USB_PAL },
149 { USB_DEVICE(0x2304, 0x0301) }, /* Pinnacle Studio Linx Video input cable (PAL) */ 1074 { USB_DEVICE(0x2304, 0x0109), .driver_info=PINNA_PCTV_USB_SECAM },
150 { USB_DEVICE(0x2304, 0x0419) }, /* Pinnacle PCTV Bungee USB (PAL) FM */ 1075 { USB_DEVICE(0x2304, 0x0110), .driver_info=PINNA_PCTV_USB_PAL_FM },
151 { USB_DEVICE(0x2400, 0x4200) }, /* Hauppauge WinTv-USB2 Model 42012 */ 1076 { USB_DEVICE(0x2304, 0x0111), .driver_info=MIRO_PCTV_USB },
152 1077 { USB_DEVICE(0x2304, 0x0112), .driver_info=PINNA_PCTV_USB_NTSC_FM },
153 { } /* Terminating entry */ 1078 { USB_DEVICE(0x2304, 0x0210), .driver_info=PINNA_PCTV_USB_PAL_FM_V2 },
1079 { USB_DEVICE(0x2304, 0x0212), .driver_info=PINNA_PCTV_USB_NTSC_FM_V2 },
1080 { USB_DEVICE(0x2304, 0x0214), .driver_info=PINNA_PCTV_USB_PAL_FM_V3 },
1081 { USB_DEVICE(0x2304, 0x0300), .driver_info=PINNA_LINX_VD_IN_CAB_NTSC },
1082 { USB_DEVICE(0x2304, 0x0301), .driver_info=PINNA_LINX_VD_IN_CAB_PAL },
1083 { USB_DEVICE(0x2304, 0x0419), .driver_info=PINNA_PCTV_BUNGEE_PAL_FM },
1084 { USB_DEVICE(0x2400, 0x4200), .driver_info=HPG_WINTV },
154}; 1085};
155 1086
156MODULE_DEVICE_TABLE (usb, usbvision_table); 1087MODULE_DEVICE_TABLE (usb, usbvision_table);