/* * usbvision-cards.c * usbvision cards definition file * * Copyright (c) 1999-2005 Joerg Heckenbach <joerg@heckenbach-aw.de> * * This module is part of usbvision driver project. * Updates to driver completed by Dwaine P. Garden * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include <linux/list.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[] = { [XANBOO] = { .interface = -1, .codec = CODEC_SAA7113, .video_channels = 4, .video_norm = V4L2_STD_NTSC, .audio_channels = 1, .radio = 0, .vbi = 1, .tuner = 0, .tuner_type = 0, .x_offset = -1, .y_offset = -1, .model_string = "Xanboo", }, [BELKIN_VIDEOBUS_II] = { .interface = -1, .codec = CODEC_SAA7113, .video_channels = 2, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 0, .vbi = 1, .tuner = 0, .tuner_type = 0, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Belkin USB VideoBus II Adapter", }, [BELKIN_VIDEOBUS] = { .interface = -1, .codec = CODEC_SAA7111, .video_channels = 2, .video_norm = V4L2_STD_NTSC, .audio_channels = 1, .radio = 0, .vbi = 1, .tuner = 0, .tuner_type = 0, .x_offset = -1, .y_offset = -1, .model_string = "Belkin Components USB VideoBus", }, [BELKIN_USB_VIDEOBUS_II] = { .interface = -1, .codec = CODEC_SAA7113, .video_channels = 2, .video_norm = V4L2_STD_NTSC, .audio_channels = 1, .radio = 0, .vbi = 1, .tuner = 0, .tuner_type = 0, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Belkin USB VideoBus II", }, [ECHOFX_INTERVIEW_LITE] = { .interface = 0, .codec = CODEC_SAA7111, .video_channels = 2, .video_norm = V4L2_STD_PAL, .audio_channels = 0, .radio = 0, .vbi = 1, .tuner = 0, .tuner_type = 0, .x_offset = -1, .y_offset = -1, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "echoFX InterView Lite", }, [USBGEAR_USBG_V1] = { .interface = -1, .codec = CODEC_SAA7111, .video_channels = 2, .video_norm = V4L2_STD_NTSC, .audio_channels = 1, .radio = 0, .vbi = 1, .tuner = 0, .tuner_type = 0, .x_offset = -1, .y_offset = -1, .model_string = "USBGear USBG-V1 resp. HAMA USB", }, [D_LINK_V100] = { .interface = -1, .codec = CODEC_SAA7113, .video_channels = 4, .video_norm = V4L2_STD_NTSC, .audio_channels = 0, .radio = 0, .vbi = 1, .tuner = 0, .tuner_type = 0, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "D-Link V100", }, [X10_USB_CAMERA] = { .interface = -1, .codec = CODEC_SAA7111, .video_channels = 2, .video_norm = V4L2_STD_NTSC, .audio_channels = 1, .radio = 0, .vbi = 1, .tuner = 0, .tuner_type = 0, .x_offset = -1, .y_offset = -1, .model_string = "X10 USB Camera", }, [HPG_WINTV_LIVE_PAL_BG] = { .interface = -1, .codec = CODEC_SAA7111, .video_channels = 2, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 0, .vbi = 1, .tuner = 0, .tuner_type = 0, .x_offset = -1, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Hauppauge WinTV USB Live (PAL B/G)", }, [HPG_WINTV_LIVE_PRO_NTSC_MN] = { .interface = -1, .codec = CODEC_SAA7113, .video_channels = 2, .video_norm = V4L2_STD_NTSC, .audio_channels = 0, .radio = 0, .vbi = 1, .tuner = 0, .tuner_type = 0, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Hauppauge WinTV USB Live Pro (NTSC M/N)", }, [ZORAN_PMD_NOGATECH] = { .interface = -1, .codec = CODEC_SAA7113, .video_channels = 2, .video_norm = V4L2_STD_PAL, .audio_channels = 2, .radio = 0, .vbi = 1, .tuner = 0, .tuner_type = 0, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Zoran Co. PMD (Nogatech) AV-grabber Manhattan", }, [NOGATECH_USB_TV_NTSC_FM] = { .interface = -1, .codec = CODEC_SAA7111, .video_channels = 3, .video_norm = V4L2_STD_NTSC, .audio_channels = 1, .radio = 1, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_NTSC_M, .x_offset = -1, .y_offset = 20, .model_string = "Nogatech USB-TV (NTSC) FM", }, [PNY_USB_TV_NTSC_FM] = { .interface = -1, .codec = CODEC_SAA7111, .video_channels = 3, .video_norm = V4L2_STD_NTSC, .audio_channels = 1, .radio = 1, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_NTSC_M, .x_offset = -1, .y_offset = 20, .model_string = "PNY USB-TV (NTSC) FM", }, [PV_PLAYTV_USB_PRO_PAL_FM] = { .interface = 0, .codec = CODEC_SAA7113, .video_channels = 3, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 1, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_PAL, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "PixelView PlayTv-USB PRO (PAL) FM", }, [ZT_721] = { .interface = 0, .codec = CODEC_SAA7113, .video_channels = 3, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 1, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_PAL, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "ZTV ZT-721 2.4GHz USB A/V Receiver", }, [HPG_WINTV_NTSC_MN] = { .interface = -1, .codec = CODEC_SAA7111, .video_channels = 3, .video_norm = V4L2_STD_NTSC, .audio_channels = 1, .radio = 0, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_NTSC_M, .x_offset = -1, .y_offset = 20, .model_string = "Hauppauge WinTV USB (NTSC M/N)", }, [HPG_WINTV_PAL_BG] = { .interface = -1, .codec = CODEC_SAA7111, .video_channels = 3, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 0, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_PAL, .x_offset = -1, .y_offset = -1, .model_string = "Hauppauge WinTV USB (PAL B/G)", }, [HPG_WINTV_PAL_I] = { .interface = -1, .codec = CODEC_SAA7111, .video_channels = 3, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 0, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_PAL, .x_offset = -1, .y_offset = -1, .model_string = "Hauppauge WinTV USB (PAL I)", }, [HPG_WINTV_PAL_SECAM_L] = { .interface = -1, .codec = CODEC_SAA7111, .video_channels = 3, .video_norm = V4L2_STD_SECAM, .audio_channels = 1, .radio = 0, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_SECAM, .x_offset = 0x80, .y_offset = 0x16, .model_string = "Hauppauge WinTV USB (PAL/SECAM L)", }, [HPG_WINTV_PAL_D_K] = { .interface = -1, .codec = CODEC_SAA7111, .video_channels = 3, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 0, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_PAL, .x_offset = -1, .y_offset = -1, .model_string = "Hauppauge WinTV USB (PAL D/K)", }, [HPG_WINTV_NTSC_FM] = { .interface = -1, .codec = CODEC_SAA7111, .video_channels = 3, .video_norm = V4L2_STD_NTSC, .audio_channels = 1, .radio = 1, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_NTSC_M, .x_offset = -1, .y_offset = -1, .model_string = "Hauppauge WinTV USB (NTSC FM)", }, [HPG_WINTV_PAL_BG_FM] = { .interface = -1, .codec = CODEC_SAA7111, .video_channels = 3, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 1, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_PAL, .x_offset = -1, .y_offset = -1, .model_string = "Hauppauge WinTV USB (PAL B/G FM)", }, [HPG_WINTV_PAL_I_FM] = { .interface = -1, .codec = CODEC_SAA7111, .video_channels = 3, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 1, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_PAL, .x_offset = -1, .y_offset = -1, .model_string = "Hauppauge WinTV USB (PAL I FM)", }, [HPG_WINTV_PAL_D_K_FM] = { .interface = -1, .codec = CODEC_SAA7111, .video_channels = 3, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 1, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_PAL, .x_offset = -1, .y_offset = -1, .model_string = "Hauppauge WinTV USB (PAL D/K FM)", }, [HPG_WINTV_PRO_NTSC_MN] = { .interface = 0, .codec = CODEC_SAA7113, .video_channels = 3, .video_norm = V4L2_STD_NTSC, .audio_channels = 1, .radio = 1, .vbi = 1, .tuner = 1, .tuner_type = TUNER_MICROTUNE_4049FM5, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Hauppauge WinTV USB Pro (NTSC M/N)", }, [HPG_WINTV_PRO_NTSC_MN_V2] = { .interface = 0, .codec = CODEC_SAA7113, .video_channels = 3, .video_norm = V4L2_STD_NTSC, .audio_channels = 1, .radio = 1, .vbi = 1, .tuner = 1, .tuner_type = TUNER_MICROTUNE_4049FM5, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Hauppauge WinTV USB Pro (NTSC M/N) V2", }, [HPG_WINTV_PRO_PAL] = { .interface = 0, .codec = CODEC_SAA7113, .video_channels = 3, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 0, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_FM1216ME_MK3, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Hauppauge WinTV USB Pro (PAL/SECAM B/G/I/D/K/L)", }, [HPG_WINTV_PRO_NTSC_MN_V3] = { .interface = 0, .codec = CODEC_SAA7113, .video_channels = 3, .video_norm = V4L2_STD_NTSC, .audio_channels = 1, .radio = 1, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_NTSC_M, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Hauppauge WinTV USB Pro (NTSC M/N) V3", }, [HPG_WINTV_PRO_PAL_BG] = { .interface = 0, .codec = CODEC_SAA7113, .video_channels = 3, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 0, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_PAL, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Hauppauge WinTV USB Pro (PAL B/G)", }, [HPG_WINTV_PRO_PAL_I] = { .interface = 0, .codec = CODEC_SAA7113, .video_channels = 3, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 0, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_PAL, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Hauppauge WinTV USB Pro (PAL I)", }, [HPG_WINTV_PRO_PAL_SECAM_L] = { .interface = -1, .codec = CODEC_SAA7113, .video_channels = 3, .video_norm = V4L2_STD_SECAM, .audio_channels = 1, .radio = 0, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_SECAM, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Hauppauge WinTV USB Pro (PAL/SECAM L)", }, [HPG_WINTV_PRO_PAL_D_K] = { .interface = -1, .codec = CODEC_SAA7113, .video_channels = 3, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 0, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_PAL, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Hauppauge WinTV USB Pro (PAL D/K)", }, [HPG_WINTV_PRO_PAL_SECAM] = { .interface = -1, .codec = CODEC_SAA7113, .video_channels = 3, .video_norm = V4L2_STD_SECAM, .audio_channels = 1, .radio = 0, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_SECAM, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Hauppauge WinTV USB Pro (PAL/SECAM BGDK/I/L)", }, [HPG_WINTV_PRO_PAL_SECAM_V2] = { .interface = -1, .codec = CODEC_SAA7113, .video_channels = 3, .video_norm = V4L2_STD_SECAM, .audio_channels = 1, .radio = 0, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_SECAM, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Hauppauge WinTV USB Pro (PAL/SECAM BGDK/I/L) V2", }, [HPG_WINTV_PRO_PAL_BG_V2] = { .interface = -1, .codec = CODEC_SAA7113, .video_channels = 3, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 0, .vbi = 1, .tuner = 1, .tuner_type = TUNER_ALPS_TSBE1_PAL, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Hauppauge WinTV USB Pro (PAL B/G) V2", }, [HPG_WINTV_PRO_PAL_BG_D_K] = { .interface = -1, .codec = CODEC_SAA7113, .video_channels = 3, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 0, .vbi = 1, .tuner = 1, .tuner_type = TUNER_ALPS_TSBE1_PAL, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Hauppauge WinTV USB Pro (PAL B/G,D/K)", }, [HPG_WINTV_PRO_PAL_I_D_K] = { .interface = -1, .codec = CODEC_SAA7113, .video_channels = 3, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 0, .vbi = 1, .tuner = 1, .tuner_type = TUNER_LG_PAL_NEW_TAPC, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Hauppauge WinTV USB Pro (PAL I,D/K)", }, [HPG_WINTV_PRO_NTSC_MN_FM] = { .interface = -1, .codec = CODEC_SAA7113, .video_channels = 3, .video_norm = V4L2_STD_NTSC, .audio_channels = 1, .radio = 1, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_NTSC_M, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Hauppauge WinTV USB Pro (NTSC M/N FM)", }, [HPG_WINTV_PRO_PAL_BG_FM] = { .interface = 0, .codec = CODEC_SAA7113, .video_channels = 3, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 1, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_PAL, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Hauppauge WinTV USB Pro (PAL B/G FM)", }, [HPG_WINTV_PRO_PAL_I_FM] = { .interface = 0, .codec = CODEC_SAA7113, .video_channels = 3, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 1, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_PAL, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Hauppauge WinTV USB Pro (PAL I FM)", }, [HPG_WINTV_PRO_PAL_D_K_FM] = { .interface = 0, .codec = CODEC_SAA7113, .video_channels = 3, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 1, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_PAL, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Hauppauge WinTV USB Pro (PAL D/K FM)", }, [HPG_WINTV_PRO_TEMIC_PAL_FM] = { .interface = 0, .codec = CODEC_SAA7113, .video_channels = 3, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 1, .vbi = 1, .tuner = 1, .tuner_type = TUNER_MICROTUNE_4049FM5, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "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, .video_channels = 3, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 1, .vbi = 1, .tuner = 1, .tuner_type = TUNER_MICROTUNE_4049FM5, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Hauppauge WinTV USB Pro (Temic PAL B/G FM)", }, [HPG_WINTV_PRO_PAL_FM] = { .interface = 0, .codec = CODEC_SAA7113, .video_channels = 3, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 1, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_FM1216ME_MK3, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "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, .video_channels = 3, .video_norm = V4L2_STD_NTSC, .audio_channels = 1, .radio = 1, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_NTSC_M, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Hauppauge WinTV USB Pro (NTSC M/N FM) V2", }, [CAMTEL_TVB330] = { .interface = -1, .codec = CODEC_SAA7113, .video_channels = 3, .video_norm = V4L2_STD_NTSC, .audio_channels = 1, .radio = 1, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_NTSC_M, .x_offset = 5, .y_offset = 5, .model_string = "Camtel Technology USB TV Genie Pro FM Model TVB330", }, [DIGITAL_VIDEO_CREATOR_I] = { .interface = -1, .codec = CODEC_SAA7113, .video_channels = 2, .video_norm = V4L2_STD_PAL, .audio_channels = 0, .radio = 0, .vbi = 1, .tuner = 0, .tuner_type = 0, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Digital Video Creator I", }, [GLOBAL_VILLAGE_GV_007_NTSC] = { .interface = -1, .codec = CODEC_SAA7111, .video_channels = 2, .video_norm = V4L2_STD_NTSC, .audio_channels = 0, .radio = 0, .vbi = 1, .tuner = 0, .tuner_type = 0, .x_offset = 82, .y_offset = 20, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Global Village GV-007 (NTSC)", }, [DAZZLE_DVC_50_REV_1_NTSC] = { .interface = 0, .codec = CODEC_SAA7113, .video_channels = 2, .video_norm = V4L2_STD_NTSC, .audio_channels = 0, .radio = 0, .vbi = 1, .tuner = 0, .tuner_type = 0, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Dazzle Fusion Model DVC-50 Rev 1 (NTSC)", }, [DAZZLE_DVC_80_REV_1_PAL] = { .interface = 0, .codec = CODEC_SAA7113, .video_channels = 2, .video_norm = V4L2_STD_PAL, .audio_channels = 0, .radio = 0, .vbi = 1, .tuner = 0, .tuner_type = 0, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Dazzle Fusion Model DVC-80 Rev 1 (PAL)", }, [DAZZLE_DVC_90_REV_1_SECAM] = { .interface = 0, .codec = CODEC_SAA7113, .video_channels = 2, .video_norm = V4L2_STD_SECAM, .audio_channels = 0, .radio = 0, .vbi = 1, .tuner = 0, .tuner_type = 0, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Dazzle Fusion Model DVC-90 Rev 1 (SECAM)", }, [ESKAPE_LABS_MYTV2GO] = { .interface = 0, .codec = CODEC_SAA7113, .video_channels = 2, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 1, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_FM1216ME_MK3, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Eskape Labs MyTV2Go", }, [PINNA_PCTV_USB_PAL] = { .interface = -1, .codec = CODEC_SAA7111, .video_channels = 3, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 0, .vbi = 0, .tuner = 1, .tuner_type = TUNER_TEMIC_4066FY5_PAL_I, .x_offset = -1, .y_offset = -1, .model_string = "Pinnacle Studio PCTV USB (PAL)", }, [PINNA_PCTV_USB_SECAM] = { .interface = -1, .codec = CODEC_SAA7111, .video_channels = 3, .video_norm = V4L2_STD_SECAM, .audio_channels = 1, .radio = 0, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_SECAM, .x_offset = -1, .y_offset = -1, .model_string = "Pinnacle Studio PCTV USB (SECAM)", }, [PINNA_PCTV_USB_PAL_FM] = { .interface = -1, .codec = CODEC_SAA7111, .video_channels = 3, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 1, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_PAL, .x_offset = 128, .y_offset = 23, .model_string = "Pinnacle Studio PCTV USB (PAL) FM", }, [MIRO_PCTV_USB] = { .interface = -1, .codec = CODEC_SAA7111, .video_channels = 3, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 0, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_PAL, .x_offset = -1, .y_offset = -1, .model_string = "Miro PCTV USB", }, [PINNA_PCTV_USB_NTSC_FM] = { .interface = -1, .codec = CODEC_SAA7111, .video_channels = 3, .video_norm = V4L2_STD_NTSC, .audio_channels = 1, .radio = 1, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_NTSC_M, .x_offset = -1, .y_offset = -1, .model_string = "Pinnacle Studio PCTV USB (NTSC) FM", }, [PINNA_PCTV_USB_NTSC_FM_V3] = { .interface = -1, .codec = CODEC_SAA7111, .video_channels = 3, .video_norm = V4L2_STD_NTSC, .audio_channels = 1, .radio = 1, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_NTSC_M, .x_offset = -1, .y_offset = -1, .model_string = "Pinnacle Studio PCTV USB (NTSC) FM V3", }, [PINNA_PCTV_USB_PAL_FM_V2] = { .interface = -1, .codec = CODEC_SAA7113, .video_channels = 3, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 1, .vbi = 1, .tuner = 1, .tuner_type = TUNER_TEMIC_4009FR5_PAL, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Pinnacle Studio PCTV USB (PAL) FM V2", }, [PINNA_PCTV_USB_NTSC_FM_V2] = { .interface = -1, .codec = CODEC_SAA7111, .video_channels = 3, .video_norm = V4L2_STD_NTSC, .audio_channels = 1, .radio = 1, .vbi = 1, .tuner = 1, .tuner_type = TUNER_TEMIC_4039FR5_NTSC, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Pinnacle Studio PCTV USB (NTSC) FM V2", }, [PINNA_PCTV_USB_PAL_FM_V3] = { .interface = -1, .codec = CODEC_SAA7113, .video_channels = 3, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 1, .vbi = 1, .tuner = 1, .tuner_type = TUNER_TEMIC_4009FR5_PAL, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Pinnacle Studio PCTV USB (PAL) FM V3", }, [PINNA_LINX_VD_IN_CAB_NTSC] = { .interface = -1, .codec = CODEC_SAA7113, .video_channels = 2, .video_norm = V4L2_STD_NTSC, .audio_channels = 1, .radio = 0, .vbi = 1, .tuner = 0, .tuner_type = 0, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Pinnacle Studio Linx Video input cable (NTSC)", }, [PINNA_LINX_VD_IN_CAB_PAL] = { .interface = -1, .codec = CODEC_SAA7113, .video_channels = 2, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 0, .vbi = 1, .tuner = 0, .tuner_type = 0, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Pinnacle Studio Linx Video input cable (PAL)", }, [PINNA_PCTV_BUNGEE_PAL_FM] = { .interface = -1, .codec = CODEC_SAA7113, .video_channels = 3, .video_norm = V4L2_STD_PAL, .audio_channels = 1, .radio = 1, .vbi = 1, .tuner = 1, .tuner_type = TUNER_TEMIC_4009FR5_PAL, .x_offset = 0, .y_offset = 3, .dvi_yuv_override = 1, .dvi_yuv = 7, .model_string = "Pinnacle PCTV Bungee USB (PAL) FM", }, [HPG_WINTV] = { .interface = -1, .codec = CODEC_SAA7111, .video_channels = 3, .video_norm = V4L2_STD_NTSC, .audio_channels = 1, .radio = 0, .vbi = 1, .tuner = 1, .tuner_type = TUNER_PHILIPS_NTSC_M, .x_offset = -1, .y_offset = -1, .model_string = "Hauppauge WinTv-USB", }, [MICROCAM_NTSC] = { .interface = -1, .codec = CODEC_WEBCAM, .video_channels = 1, .video_norm = V4L2_STD_NTSC, .audio_channels = 0, .radio = 0, .vbi = 0, .tuner = 0, .tuner_type = 0, .x_offset = 71, .y_offset = 15, .model_string = "Nogatech USB MicroCam NTSC (NV3000N)", }, [MICROCAM_PAL] = { .interface = -1, .codec = CODEC_WEBCAM, .video_channels = 1, .video_norm = V4L2_STD_PAL, .audio_channels = 0, .radio = 0, .vbi = 0, .tuner = 0, .tuner_type = 0, .x_offset = 71, .y_offset = 18, .model_string = "Nogatech USB MicroCam PAL (NV3001P)", }, }; const int usbvision_device_data_size = ARRAY_SIZE(usbvision_device_data); /* Supported Devices */ struct usb_device_id usbvision_table[] = { { 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, 0x3000), .driver_info = MICROCAM_NTSC }, { USB_DEVICE(0x0573, 0x3001), .driver_info = MICROCAM_PAL }, { 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, 0x0113), .driver_info = PINNA_PCTV_USB_NTSC_FM_V3 }, { 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 }, { }, /* terminate list */ }; MODULE_DEVICE_TABLE(usb, usbvision_table);