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