i2c: Cleanup the includes of <linux/i2c.h>
[powerpc.git] / drivers / media / video / usbvision / usbvision-cards.c
index 134eb98..51ab265 100644 (file)
@@ -1,6 +1,6 @@
 /*
- * USBVISION.H
- *  usbvision header file
+ *  usbvision-cards.c
+ *  usbvision cards definition file
  *
  * Copyright (c) 1999-2005 Joerg Heckenbach <joerg@heckenbach-aw.de>
  *
 
 
 #include <linux/list.h>
-#include <linux/i2c.h>
 #include <media/v4l2-dev.h>
 #include <media/tuner.h>
 #include "usbvision.h"
+#include "usbvision-cards.h"
 
 /* Supported Devices: A table for usbvision.c*/
 struct usbvision_device_data_st  usbvision_device_data[] = {
-       {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"},
-       {0x0A6F, 0x0400, -1, CODEC_SAA7113, 4, V4L2_STD_NTSC,  1, 0, 1, 0, 0,                          -1, -1, -1, -1, -1, "Xanboo"},
-       {0x050D, 0x0208, -1, CODEC_SAA7113, 2, V4L2_STD_PAL,   1, 0, 1, 0, 0,                          -1, -1,  0,  3,  7, "Belkin USBView II"},
-       {0x0571, 0x0002,  0, CODEC_SAA7111, 2, V4L2_STD_PAL,   0, 0, 1, 0, 0,                          -1, -1, -1, -1,  7, "echoFX InterView Lite"},
-       {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"},
-       {0x0573, 0x0400, -1, CODEC_SAA7113, 4, V4L2_STD_NTSC,  0, 0, 1, 0, 0,                          -1, -1,  0,  3,  7, "D-Link V100"},
-       {0x0573, 0x2000, -1, CODEC_SAA7111, 2, V4L2_STD_NTSC,  1, 0, 1, 0, 0,                          -1, -1, -1, -1, -1, "X10 USB Camera"},
-       {0x0573, 0x2d00, -1, CODEC_SAA7111, 2, V4L2_STD_PAL,   1, 0, 1, 0, 0,                          -1, -1, -1,  3,  7, "Osprey 50"},
-       {0x0573, 0x2d01, -1, CODEC_SAA7113, 2, V4L2_STD_NTSC,    0, 0, 1, 0, 0,                          -1, -1,  0,  3,  7, "Hauppauge USB-Live Model 600"},
-       {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"},
-       {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"},
-       {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"},
-       {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"},
-       {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"},
-       {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"},
-       {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"},
-       {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)"},
-       {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) "},
-       {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"},
-       {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"},
-       {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"},
-       {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"},
-       {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"},
-       {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"},
-       {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"},
-       {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)"},
-       {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"},
-       {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"},
-       {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"},
-       {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"},
-       {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"},
-       {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"},
-       {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"},
-       {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"},
-       {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"},
-       {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"},
-       {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"},
-       {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"},
-       {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"},
-       {0x07d0, 0x0001, -1, CODEC_SAA7113, 2, V4L2_STD_PAL,   0, 0, 1, 0, 0,                          -1, -1,  0,  3,  7, "Digital Video Creator I"},
-       {0x07d0, 0x0002, -1, CODEC_SAA7111, 2, V4L2_STD_NTSC,  0, 0, 1, 0, 0,                            -1, -1, 82, 20,  7, "Global Village GV-007 (NTSC)"},
-       {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)"},
-       {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)"},
-       {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)"},
-       {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)"},
-       {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)"},
-       {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"},
-       {0x2304, 0x0111, -1, CODEC_SAA7111, 3, V4L2_STD_PAL,   1, 0, 1, 1, TUNER_PHILIPS_PAL,          -1, -1, -1, -1, -1, "Miro PCTV USB"},
-       {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"},
-       {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"},
-       {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"},
-       {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"},
-       {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)"},
-       {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)"},
-       {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"},
-       {0x2400, 0x4200, -1, CODEC_SAA7111, 3, VIDEO_MODE_NTSC,  1, 0, 1, 1, TUNER_PHILIPS_NTSC_M,       -1, -1, -1, -1, -1, "Hauppauge WinTv-USB"},
-       {}  /* Terminating entry */
+       [XANBOO] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 4,
+               .VideoNorm     = V4L2_STD_NTSC,
+               .AudioChannels = 1,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 0,
+               .TunerType     = 0,
+               .X_Offset      = -1,
+               .Y_Offset      = -1,
+               .ModelString   = "Xanboo",
+       },
+       [BELKIN_VIDEOBUS_II] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 2,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 0,
+               .TunerType     = 0,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Belkin USB VideoBus II Adapter",
+       },
+       [BELKIN_VIDEOBUS] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7111,
+               .VideoChannels = 2,
+               .VideoNorm     = V4L2_STD_NTSC,
+               .AudioChannels = 1,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 0,
+               .TunerType     = 0,
+               .X_Offset      = -1,
+               .Y_Offset      = -1,
+               .ModelString   = "Belkin Components USB VideoBus",
+       },
+       [BELKIN_USB_VIDEOBUS_II] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 2,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 0,
+               .TunerType     = 0,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Belkin USB VideoBus II",
+       },
+       [ECHOFX_INTERVIEW_LITE] = {
+               .Interface     = 0,
+               .Codec         = CODEC_SAA7111,
+               .VideoChannels = 2,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 0,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 0,
+               .TunerType     = 0,
+               .X_Offset      = -1,
+               .Y_Offset      = -1,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "echoFX InterView Lite",
+       },
+       [USBGEAR_USBG_V1] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7111,
+               .VideoChannels = 2,
+               .VideoNorm     = V4L2_STD_NTSC,
+               .AudioChannels = 1,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 0,
+               .TunerType     = 0,
+               .X_Offset      = -1,
+               .Y_Offset      = -1,
+               .ModelString   = "USBGear USBG-V1 resp. HAMA USB",
+       },
+       [D_LINK_V100] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 4,
+               .VideoNorm     = V4L2_STD_NTSC,
+               .AudioChannels = 0,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 0,
+               .TunerType     = 0,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "D-Link V100",
+       },
+       [X10_USB_CAMERA] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7111,
+               .VideoChannels = 2,
+               .VideoNorm     = V4L2_STD_NTSC,
+               .AudioChannels = 1,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 0,
+               .TunerType     = 0,
+               .X_Offset      = -1,
+               .Y_Offset      = -1,
+               .ModelString   = "X10 USB Camera",
+       },
+       [HPG_WINTV_LIVE_PAL_BG] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7111,
+               .VideoChannels = 2,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 0,
+               .TunerType     = 0,
+               .X_Offset      = -1,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Hauppauge WinTV USB Live (PAL B/G)",
+       },
+       [HPG_WINTV_LIVE_PRO_NTSC_MN] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 2,
+               .VideoNorm     = V4L2_STD_NTSC,
+               .AudioChannels = 0,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 0,
+               .TunerType     = 0,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Hauppauge WinTV USB Live Pro (NTSC M/N)",
+       },
+       [ZORAN_PMD_NOGATECH] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 2,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 2,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 0,
+               .TunerType     = 0,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Zoran Co. PMD (Nogatech) AV-grabber Manhattan",
+       },
+       [NOGATECH_USB_TV_NTSC_FM] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7111,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_NTSC,
+               .AudioChannels = 1,
+               .Radio         = 1,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_NTSC_M,
+               .X_Offset      = -1,
+               .Y_Offset      = 20,
+               .ModelString   = "Nogatech USB-TV (NTSC) FM",
+       },
+       [PNY_USB_TV_NTSC_FM] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7111,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_NTSC,
+               .AudioChannels = 1,
+               .Radio         = 1,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_NTSC_M,
+               .X_Offset      = -1,
+               .Y_Offset      = 20,
+               .ModelString   = "PNY USB-TV (NTSC) FM",
+       },
+       [PV_PLAYTV_USB_PRO_PAL_FM] = {
+               .Interface     = 0,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 1,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_PAL,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "PixelView PlayTv-USB PRO (PAL) FM",
+       },
+       [ZT_721] = {
+               .Interface     = 0,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 1,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_PAL,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "ZTV ZT-721 2.4GHz USB A/V Receiver",
+       },
+       [HPG_WINTV_NTSC_MN] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7111,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_NTSC,
+               .AudioChannels = 1,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_NTSC_M,
+               .X_Offset      = -1,
+               .Y_Offset      = 20,
+               .ModelString   = "Hauppauge WinTV USB (NTSC M/N)",
+       },
+       [HPG_WINTV_PAL_BG] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7111,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_PAL,
+               .X_Offset      = -1,
+               .Y_Offset      = -1,
+               .ModelString   = "Hauppauge WinTV USB (PAL B/G)",
+       },
+       [HPG_WINTV_PAL_I] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7111,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_PAL,
+               .X_Offset      = -1,
+               .Y_Offset      = -1,
+               .ModelString   = "Hauppauge WinTV USB (PAL I)",
+       },
+       [HPG_WINTV_PAL_SECAM_L] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7111,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_SECAM,
+               .AudioChannels = 1,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_SECAM,
+               .X_Offset      = -1,
+               .Y_Offset      = -1,
+               .ModelString   = "Hauppauge WinTV USB (PAL/SECAM L)",
+       },
+       [HPG_WINTV_PAL_D_K] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7111,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_PAL,
+               .X_Offset      = -1,
+               .Y_Offset      = -1,
+               .ModelString   = "Hauppauge WinTV USB (PAL D/K)",
+       },
+       [HPG_WINTV_NTSC_FM] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7111,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_NTSC,
+               .AudioChannels = 1,
+               .Radio         = 1,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_NTSC_M,
+               .X_Offset      = -1,
+               .Y_Offset      = -1,
+               .ModelString   = "Hauppauge WinTV USB (NTSC FM)",
+       },
+       [HPG_WINTV_PAL_BG_FM] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7111,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 1,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_PAL,
+               .X_Offset      = -1,
+               .Y_Offset      = -1,
+               .ModelString   = "Hauppauge WinTV USB (PAL B/G FM)",
+       },
+       [HPG_WINTV_PAL_I_FM] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7111,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 1,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_PAL,
+               .X_Offset      = -1,
+               .Y_Offset      = -1,
+               .ModelString   = "Hauppauge WinTV USB (PAL I FM)",
+       },
+       [HPG_WINTV_PAL_D_K_FM] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7111,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 1,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_PAL,
+               .X_Offset      = -1,
+               .Y_Offset      = -1,
+               .ModelString   = "Hauppauge WinTV USB (PAL D/K FM)",
+       },
+       [HPG_WINTV_PRO_NTSC_MN] = {
+               .Interface     = 0,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_NTSC,
+               .AudioChannels = 1,
+               .Radio         = 1,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_MICROTUNE_4049FM5,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Hauppauge WinTV USB Pro (NTSC M/N)",
+       },
+       [HPG_WINTV_PRO_NTSC_MN_V2] = {
+               .Interface     = 0,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_NTSC,
+               .AudioChannels = 1,
+               .Radio         = 1,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_MICROTUNE_4049FM5,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Hauppauge WinTV USB Pro (NTSC M/N) V2",
+       },
+       [HPG_WINTV_PRO_PAL] = {
+               .Interface     = 0,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_FM1216ME_MK3,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Hauppauge WinTV USB Pro (PAL/SECAM B/G/I/D/K/L)",
+       },
+       [HPG_WINTV_PRO_NTSC_MN_V3] = {
+               .Interface     = 0,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_NTSC,
+               .AudioChannels = 1,
+               .Radio         = 1,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_NTSC_M,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Hauppauge WinTV USB Pro (NTSC M/N) V3",
+       },
+       [HPG_WINTV_PRO_PAL_BG] = {
+               .Interface     = 0,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_PAL,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Hauppauge WinTV USB Pro (PAL B/G)",
+       },
+       [HPG_WINTV_PRO_PAL_I] = {
+               .Interface     = 0,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_PAL,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Hauppauge WinTV USB Pro (PAL I)",
+       },
+       [HPG_WINTV_PRO_PAL_SECAM_L] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_SECAM,
+               .AudioChannels = 1,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_SECAM,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Hauppauge WinTV USB Pro (PAL/SECAM L)",
+       },
+       [HPG_WINTV_PRO_PAL_D_K] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_PAL,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Hauppauge WinTV USB Pro (PAL D/K)",
+       },
+       [HPG_WINTV_PRO_PAL_SECAM] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_SECAM,
+               .AudioChannels = 1,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_SECAM,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Hauppauge WinTV USB Pro (PAL/SECAM BGDK/I/L)",
+       },
+       [HPG_WINTV_PRO_PAL_SECAM_V2] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_SECAM,
+               .AudioChannels = 1,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_SECAM,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Hauppauge WinTV USB Pro (PAL/SECAM BGDK/I/L) V2",
+       },
+       [HPG_WINTV_PRO_PAL_BG_V2] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_ALPS_TSBE1_PAL,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Hauppauge WinTV USB Pro (PAL B/G) V2",
+       },
+       [HPG_WINTV_PRO_PAL_BG_D_K] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_ALPS_TSBE1_PAL,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Hauppauge WinTV USB Pro (PAL B/G,D/K)",
+       },
+       [HPG_WINTV_PRO_PAL_I_D_K] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_PAL,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Hauppauge WinTV USB Pro (PAL I,D/K)",
+       },
+       [HPG_WINTV_PRO_NTSC_MN_FM] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_NTSC,
+               .AudioChannels = 1,
+               .Radio         = 1,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_NTSC_M,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Hauppauge WinTV USB Pro (NTSC M/N FM)",
+       },
+       [HPG_WINTV_PRO_PAL_BG_FM] = {
+               .Interface     = 0,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 1,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_PAL,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Hauppauge WinTV USB Pro (PAL B/G FM)",
+       },
+       [HPG_WINTV_PRO_PAL_I_FM] = {
+               .Interface     = 0,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 1,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_PAL,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Hauppauge WinTV USB Pro (PAL I FM)",
+       },
+       [HPG_WINTV_PRO_PAL_D_K_FM] = {
+               .Interface     = 0,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 1,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_PAL,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Hauppauge WinTV USB Pro (PAL D/K FM)",
+       },
+       [HPG_WINTV_PRO_TEMIC_PAL_FM] = {
+               .Interface     = 0,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 1,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_MICROTUNE_4049FM5,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Hauppauge WinTV USB Pro (Temic PAL/SECAM B/G/I/D/K/L FM)",
+       },
+       [HPG_WINTV_PRO_TEMIC_PAL_BG_FM] = {
+               .Interface     = 0,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 1,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_MICROTUNE_4049FM5,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Hauppauge WinTV USB Pro (Temic PAL B/G FM)",
+       },
+       [HPG_WINTV_PRO_PAL_FM] = {
+               .Interface     = 0,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 1,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_FM1216ME_MK3,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Hauppauge WinTV USB Pro (PAL/SECAM B/G/I/D/K/L FM)",
+       },
+       [HPG_WINTV_PRO_NTSC_MN_FM_V2] = {
+               .Interface     = 0,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_NTSC,
+               .AudioChannels = 1,
+               .Radio         = 1,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_NTSC_M,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Hauppauge WinTV USB Pro (NTSC M/N FM) V2",
+       },
+       [CAMTEL_TVB330] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_NTSC,
+               .AudioChannels = 1,
+               .Radio         = 1,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_NTSC_M,
+               .X_Offset      = 5,
+               .Y_Offset      = 5,
+               .ModelString   = "Camtel Technology USB TV Genie Pro FM Model TVB330",
+       },
+       [DIGITAL_VIDEO_CREATOR_I] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 2,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 0,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 0,
+               .TunerType     = 0,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Digital Video Creator I",
+       },
+       [GLOBAL_VILLAGE_GV_007_NTSC] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7111,
+               .VideoChannels = 2,
+               .VideoNorm     = V4L2_STD_NTSC,
+               .AudioChannels = 0,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 0,
+               .TunerType     = 0,
+               .X_Offset      = 82,
+               .Y_Offset      = 20,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Global Village GV-007 (NTSC)",
+       },
+       [DAZZLE_DVC_50_REV_1_NTSC] = {
+               .Interface     = 0,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 2,
+               .VideoNorm     = V4L2_STD_NTSC,
+               .AudioChannels = 0,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 0,
+               .TunerType     = 0,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Dazzle Fusion Model DVC-50 Rev 1 (NTSC)",
+       },
+       [DAZZLE_DVC_80_REV_1_PAL] = {
+               .Interface     = 0,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 2,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 0,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 0,
+               .TunerType     = 0,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Dazzle Fusion Model DVC-80 Rev 1 (PAL)",
+       },
+       [DAZZLE_DVC_90_REV_1_SECAM] = {
+               .Interface     = 0,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 2,
+               .VideoNorm     = V4L2_STD_SECAM,
+               .AudioChannels = 0,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 0,
+               .TunerType     = 0,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Dazzle Fusion Model DVC-90 Rev 1 (SECAM)",
+       },
+       [ESKAPE_LABS_MYTV2GO] = {
+               .Interface     = 0,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 2,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 1,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_FM1216ME_MK3,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Eskape Labs MyTV2Go",
+       },
+       [PINNA_PCTV_USB_PAL] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7111,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 0,
+               .vbi           = 0,
+               .Tuner         = 1,
+               .TunerType     = TUNER_TEMIC_4066FY5_PAL_I,
+               .X_Offset      = -1,
+               .Y_Offset      = -1,
+               .ModelString   = "Pinnacle Studio PCTV USB (PAL)",
+       },
+       [PINNA_PCTV_USB_SECAM] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7111,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_SECAM,
+               .AudioChannels = 1,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_SECAM,
+               .X_Offset      = -1,
+               .Y_Offset      = -1,
+               .ModelString   = "Pinnacle Studio PCTV USB (SECAM)",
+       },
+       [PINNA_PCTV_USB_PAL_FM] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7111,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 1,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_PAL,
+               .X_Offset      = 128,
+               .Y_Offset      = 23,
+               .ModelString   = "Pinnacle Studio PCTV USB (PAL) FM",
+       },
+       [MIRO_PCTV_USB] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7111,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_PAL,
+               .X_Offset      = -1,
+               .Y_Offset      = -1,
+               .ModelString   = "Miro PCTV USB",
+       },
+       [PINNA_PCTV_USB_NTSC_FM] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7111,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_NTSC,
+               .AudioChannels = 1,
+               .Radio         = 1,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_NTSC_M,
+               .X_Offset      = -1,
+               .Y_Offset      = -1,
+               .ModelString   = "Pinnacle Studio PCTV USB (NTSC) FM",
+       },
+       [PINNA_PCTV_USB_PAL_FM_V2] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 1,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_TEMIC_4009FR5_PAL,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Pinnacle Studio PCTV USB (PAL) FM V2",
+       },
+       [PINNA_PCTV_USB_NTSC_FM_V2] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7111,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_NTSC,
+               .AudioChannels = 1,
+               .Radio         = 1,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_TEMIC_4039FR5_NTSC,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Pinnacle Studio PCTV USB (NTSC) FM V2",
+       },
+       [PINNA_PCTV_USB_PAL_FM_V3] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 1,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_TEMIC_4009FR5_PAL,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Pinnacle Studio PCTV USB (PAL) FM V3",
+       },
+       [PINNA_LINX_VD_IN_CAB_NTSC] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 2,
+               .VideoNorm     = V4L2_STD_NTSC,
+               .AudioChannels = 1,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 0,
+               .TunerType     = 0,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Pinnacle Studio Linx Video input cable (NTSC)",
+       },
+       [PINNA_LINX_VD_IN_CAB_PAL] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 2,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 0,
+               .TunerType     = 0,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Pinnacle Studio Linx Video input cable (PAL)",
+       },
+       [PINNA_PCTV_BUNGEE_PAL_FM] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7113,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_PAL,
+               .AudioChannels = 1,
+               .Radio         = 1,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_TEMIC_4009FR5_PAL,
+               .X_Offset      = 0,
+               .Y_Offset      = 3,
+               .Dvi_yuv_override = 1,
+               .Dvi_yuv       = 7,
+               .ModelString   = "Pinnacle PCTV Bungee USB (PAL) FM",
+       },
+       [HPG_WINTV] = {
+               .Interface     = -1,
+               .Codec         = CODEC_SAA7111,
+               .VideoChannels = 3,
+               .VideoNorm     = V4L2_STD_NTSC,
+               .AudioChannels = 1,
+               .Radio         = 0,
+               .vbi           = 1,
+               .Tuner         = 1,
+               .TunerType     = TUNER_PHILIPS_NTSC_M,
+               .X_Offset      = -1,
+               .Y_Offset      = -1,
+               .ModelString   = "Hauppauge WinTv-USB",
+       },
 };
+const int usbvision_device_data_size=ARRAY_SIZE(usbvision_device_data);
 
 /* Supported Devices */
 
 struct usb_device_id usbvision_table [] = {
-       { USB_DEVICE(0xFFF0, 0xFFF0) },  /* Custom Dummy USBVision Device */
-       { USB_DEVICE(0x0A6F, 0x0400) },  /* Xanboo */
-       { USB_DEVICE(0x050d, 0x0208) },  /* Belkin USBView II */
-       { USB_DEVICE(0x0571, 0x0002) },  /* echoFX InterView Lite */
-       { USB_DEVICE(0x0573, 0x0003) },  /* USBGear USBG-V1 */
-       { USB_DEVICE(0x0573, 0x0400) },  /* D-Link V100 */
-       { USB_DEVICE(0x0573, 0x2000) },  /* X10 USB Camera */
-       { USB_DEVICE(0x0573, 0x2d00) },  /* Osprey 50 */
-       { USB_DEVICE(0x0573, 0x2d01) },  /* Hauppauge USB-Live Model 600 */
-       { USB_DEVICE(0x0573, 0x2101) },  /* Zoran Co. PMD (Nogatech) AV-grabber Manhattan */
-       { USB_DEVICE(0x0573, 0x4100) },  /* Nogatech USB-TV FM (NTSC) */
-       { USB_DEVICE(0x0573, 0x4110) },  /* PNY USB-TV (NTSC) FM */
-       { USB_DEVICE(0x0573, 0x4450) },  /* PixelView PlayTv-USB PRO (PAL) FM */
-       { USB_DEVICE(0x0573, 0x4550) },  /* ZTV ZT-721 2.4GHz USB A/V Receiver */
-       { USB_DEVICE(0x0573, 0x4d00) },  /* Hauppauge WinTv-USB USA */
-       { USB_DEVICE(0x0573, 0x4d01) },  /* Hauppauge WinTv-USB */
-       { USB_DEVICE(0x0573, 0x4d02) },  /* Hauppauge WinTv-USB UK */
-       { USB_DEVICE(0x0573, 0x4d03) },  /* Hauppauge WinTv-USB France */
-       { USB_DEVICE(0x0573, 0x4d10) },  /* Hauppauge WinTv-USB with FM USA radio */
-       { USB_DEVICE(0x0573, 0x4d11) },  /* Hauppauge WinTv-USB (PAL) with FM radio */
-       { USB_DEVICE(0x0573, 0x4d12) },  /* Hauppauge WinTv-USB UK with FM Radio */
-       { USB_DEVICE(0x0573, 0x4d2a) },  /* Hauppague WinTv USB Model 602 40201 Rev B285 */
-       { USB_DEVICE(0x0573, 0x4d2b) },  /* Hauppague WinTv USB Model 602 40201 Rev B282 */
-       { USB_DEVICE(0x0573, 0x4d2c) },  /* Hauppague WinTv USB Model 40209 Rev. E1A5 PAL*/
-       { USB_DEVICE(0x0573, 0x4d20) },  /* Hauppauge WinTv-USB II (PAL) FM Model 40201 Rev B226 */
-       { USB_DEVICE(0x0573, 0x4d21) },  /* Hauppauge WinTv-USB II (PAL) with FM radio*/
-       { USB_DEVICE(0x0573, 0x4d22) },  /* Hauppauge WinTv-USB II (PAL) Model 566 */
-       { USB_DEVICE(0x0573, 0x4d23) },  /* Hauppauge WinTv-USB France 4D23*/
-       { USB_DEVICE(0x0573, 0x4d25) },  /* Hauppauge WinTv-USB Model 40209 rev B234 */
-       { USB_DEVICE(0x0573, 0x4d26) },  /* Hauppauge WinTv-USB Model 40209 Rev B243 */
-       { USB_DEVICE(0x0573, 0x4d27) },  /* Hauppauge WinTv-USB Model 40204 Rev B281 */
-       { USB_DEVICE(0x0573, 0x4d28) },  /* Hauppauge WinTv-USB Model 40204 Rev B283 */
-       { USB_DEVICE(0x0573, 0x4d29) },  /* Hauppauge WinTv-USB Model 40205 Rev B298 */
-       { USB_DEVICE(0x0573, 0x4d30) },  /* Hauppauge WinTv-USB FM Model 40211 Rev B123 */
-       { USB_DEVICE(0x0573, 0x4d31) },  /* Hauppauge WinTv-USB III (PAL) with FM radio Model 568 */
-       { USB_DEVICE(0x0573, 0x4d32) },  /* Hauppauge WinTv-USB III (PAL) FM Model 573 */
-       { USB_DEVICE(0x0573, 0x4d35) },  /* Hauppauge WinTv-USB III (SECAM) FM Model 40219 Rev B252 */
-       { USB_DEVICE(0x0573, 0x4d37) },  /* Hauppauge WinTv-USB Model 40219 Rev E189 */
-       { USB_DEVICE(0x0768, 0x0006) },  /* Camtel Technology USB TV Genie Pro FM Model TVB330 */
-       { USB_DEVICE(0x07d0, 0x0001) },  /* Digital Video Creator I */
-       { USB_DEVICE(0x07d0, 0x0002) },  /* Global Village GV-007 (NTSC) */
-       { USB_DEVICE(0x07d0, 0x0003) },  /* Dazzle Fusion Model DVC-50 Rev 1 (NTSC) */
-       { USB_DEVICE(0x07d0, 0x0004) },  /* Dazzle Fusion Model DVC-80 Rev 1 (PAL) */
-       { USB_DEVICE(0x07d0, 0x0005) },  /* Dazzle Fusion Model DVC-90 Rev 1 (SECAM) */
-       { USB_DEVICE(0x2304, 0x010d) },  /* Pinnacle Studio PCTV USB (PAL) */
-       { USB_DEVICE(0x2304, 0x0109) },  /* Pinnacle Studio PCTV USB (SECAM) */
-       { USB_DEVICE(0x2304, 0x0110) },  /* Pinnacle Studio PCTV USB (PAL) */
-       { USB_DEVICE(0x2304, 0x0111) },  /* Miro PCTV USB */
-       { USB_DEVICE(0x2304, 0x0112) },  /* Pinnacle Studio PCTV USB (NTSC) with FM radio */
-       { USB_DEVICE(0x2304, 0x0210) },  /* Pinnacle Studio PCTV USB (PAL) with FM radio */
-       { USB_DEVICE(0x2304, 0x0212) },  /* Pinnacle Studio PCTV USB (NTSC) with FM radio */
-       { USB_DEVICE(0x2304, 0x0214) },  /* Pinnacle Studio PCTV USB (PAL) with FM radio */
-       { USB_DEVICE(0x2304, 0x0300) },  /* Pinnacle Studio Linx Video input cable (NTSC) */
-       { USB_DEVICE(0x2304, 0x0301) },  /* Pinnacle Studio Linx Video input cable (PAL) */
-       { USB_DEVICE(0x2304, 0x0419) },  /* Pinnacle PCTV Bungee USB (PAL) FM */
-
-       { USB_DEVICE(0x2400, 0x4200) },  /* Hauppauge WinTv-USB2 Model 42012 */
-
-       { }  /* Terminating entry */
+       { USB_DEVICE(0x0a6f, 0x0400), .driver_info=XANBOO },
+       { USB_DEVICE(0x050d, 0x0106), .driver_info=BELKIN_VIDEOBUS_II },
+       { USB_DEVICE(0x050d, 0x0207), .driver_info=BELKIN_VIDEOBUS },
+       { USB_DEVICE(0x050d, 0x0208), .driver_info=BELKIN_USB_VIDEOBUS_II },
+       { USB_DEVICE(0x0571, 0x0002), .driver_info=ECHOFX_INTERVIEW_LITE },
+       { USB_DEVICE(0x0573, 0x0003), .driver_info=USBGEAR_USBG_V1 },
+       { USB_DEVICE(0x0573, 0x0400), .driver_info=D_LINK_V100 },
+       { USB_DEVICE(0x0573, 0x2000), .driver_info=X10_USB_CAMERA },
+       { USB_DEVICE(0x0573, 0x2d00), .driver_info=HPG_WINTV_LIVE_PAL_BG },
+       { USB_DEVICE(0x0573, 0x2d01), .driver_info=HPG_WINTV_LIVE_PRO_NTSC_MN },
+       { USB_DEVICE(0x0573, 0x2101), .driver_info=ZORAN_PMD_NOGATECH },
+       { USB_DEVICE(0x0573, 0x4100), .driver_info=NOGATECH_USB_TV_NTSC_FM },
+       { USB_DEVICE(0x0573, 0x4110), .driver_info=PNY_USB_TV_NTSC_FM },
+       { USB_DEVICE(0x0573, 0x4450), .driver_info=PV_PLAYTV_USB_PRO_PAL_FM },
+       { USB_DEVICE(0x0573, 0x4550), .driver_info=ZT_721 },
+       { USB_DEVICE(0x0573, 0x4d00), .driver_info=HPG_WINTV_NTSC_MN },
+       { USB_DEVICE(0x0573, 0x4d01), .driver_info=HPG_WINTV_PAL_BG },
+       { USB_DEVICE(0x0573, 0x4d02), .driver_info=HPG_WINTV_PAL_I },
+       { USB_DEVICE(0x0573, 0x4d03), .driver_info=HPG_WINTV_PAL_SECAM_L },
+       { USB_DEVICE(0x0573, 0x4d04), .driver_info=HPG_WINTV_PAL_D_K },
+       { USB_DEVICE(0x0573, 0x4d10), .driver_info=HPG_WINTV_NTSC_FM },
+       { USB_DEVICE(0x0573, 0x4d11), .driver_info=HPG_WINTV_PAL_BG_FM },
+       { USB_DEVICE(0x0573, 0x4d12), .driver_info=HPG_WINTV_PAL_I_FM },
+       { USB_DEVICE(0x0573, 0x4d14), .driver_info=HPG_WINTV_PAL_D_K_FM },
+       { USB_DEVICE(0x0573, 0x4d2a), .driver_info=HPG_WINTV_PRO_NTSC_MN },
+       { USB_DEVICE(0x0573, 0x4d2b), .driver_info=HPG_WINTV_PRO_NTSC_MN_V2 },
+       { USB_DEVICE(0x0573, 0x4d2c), .driver_info=HPG_WINTV_PRO_PAL },
+       { USB_DEVICE(0x0573, 0x4d20), .driver_info=HPG_WINTV_PRO_NTSC_MN_V3 },
+       { USB_DEVICE(0x0573, 0x4d21), .driver_info=HPG_WINTV_PRO_PAL_BG },
+       { USB_DEVICE(0x0573, 0x4d22), .driver_info=HPG_WINTV_PRO_PAL_I },
+       { USB_DEVICE(0x0573, 0x4d23), .driver_info=HPG_WINTV_PRO_PAL_SECAM_L },
+       { USB_DEVICE(0x0573, 0x4d24), .driver_info=HPG_WINTV_PRO_PAL_D_K },
+       { USB_DEVICE(0x0573, 0x4d25), .driver_info=HPG_WINTV_PRO_PAL_SECAM },
+       { USB_DEVICE(0x0573, 0x4d26), .driver_info=HPG_WINTV_PRO_PAL_SECAM_V2 },
+       { USB_DEVICE(0x0573, 0x4d27), .driver_info=HPG_WINTV_PRO_PAL_BG_V2 },
+       { USB_DEVICE(0x0573, 0x4d28), .driver_info=HPG_WINTV_PRO_PAL_BG_D_K },
+       { USB_DEVICE(0x0573, 0x4d29), .driver_info=HPG_WINTV_PRO_PAL_I_D_K },
+       { USB_DEVICE(0x0573, 0x4d30), .driver_info=HPG_WINTV_PRO_NTSC_MN_FM },
+       { USB_DEVICE(0x0573, 0x4d31), .driver_info=HPG_WINTV_PRO_PAL_BG_FM },
+       { USB_DEVICE(0x0573, 0x4d32), .driver_info=HPG_WINTV_PRO_PAL_I_FM },
+       { USB_DEVICE(0x0573, 0x4d34), .driver_info=HPG_WINTV_PRO_PAL_D_K_FM },
+       { USB_DEVICE(0x0573, 0x4d35), .driver_info=HPG_WINTV_PRO_TEMIC_PAL_FM },
+       { USB_DEVICE(0x0573, 0x4d36), .driver_info=HPG_WINTV_PRO_TEMIC_PAL_BG_FM },
+       { USB_DEVICE(0x0573, 0x4d37), .driver_info=HPG_WINTV_PRO_PAL_FM },
+       { USB_DEVICE(0x0573, 0x4d38), .driver_info=HPG_WINTV_PRO_NTSC_MN_FM_V2 },
+       { USB_DEVICE(0x0768, 0x0006), .driver_info=CAMTEL_TVB330 },
+       { USB_DEVICE(0x07d0, 0x0001), .driver_info=DIGITAL_VIDEO_CREATOR_I },
+       { USB_DEVICE(0x07d0, 0x0002), .driver_info=GLOBAL_VILLAGE_GV_007_NTSC },
+       { USB_DEVICE(0x07d0, 0x0003), .driver_info=DAZZLE_DVC_50_REV_1_NTSC },
+       { USB_DEVICE(0x07d0, 0x0004), .driver_info=DAZZLE_DVC_80_REV_1_PAL },
+       { USB_DEVICE(0x07d0, 0x0005), .driver_info=DAZZLE_DVC_90_REV_1_SECAM },
+       { USB_DEVICE(0x07f8, 0x9104), .driver_info=ESKAPE_LABS_MYTV2GO },
+       { USB_DEVICE(0x2304, 0x010d), .driver_info=PINNA_PCTV_USB_PAL },
+       { USB_DEVICE(0x2304, 0x0109), .driver_info=PINNA_PCTV_USB_SECAM },
+       { USB_DEVICE(0x2304, 0x0110), .driver_info=PINNA_PCTV_USB_PAL_FM },
+       { USB_DEVICE(0x2304, 0x0111), .driver_info=MIRO_PCTV_USB },
+       { USB_DEVICE(0x2304, 0x0112), .driver_info=PINNA_PCTV_USB_NTSC_FM },
+       { USB_DEVICE(0x2304, 0x0210), .driver_info=PINNA_PCTV_USB_PAL_FM_V2 },
+       { USB_DEVICE(0x2304, 0x0212), .driver_info=PINNA_PCTV_USB_NTSC_FM_V2 },
+       { USB_DEVICE(0x2304, 0x0214), .driver_info=PINNA_PCTV_USB_PAL_FM_V3 },
+       { USB_DEVICE(0x2304, 0x0300), .driver_info=PINNA_LINX_VD_IN_CAB_NTSC },
+       { USB_DEVICE(0x2304, 0x0301), .driver_info=PINNA_LINX_VD_IN_CAB_PAL },
+       { USB_DEVICE(0x2304, 0x0419), .driver_info=PINNA_PCTV_BUNGEE_PAL_FM },
+       { USB_DEVICE(0x2400, 0x4200), .driver_info=HPG_WINTV },
 };
 
 MODULE_DEVICE_TABLE (usb, usbvision_table);