Commit 2bfa1ac6 authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab Committed by Linus Torvalds

[PATCH] v4l: 692: bttv coding style and card ids

- BTTV Boards now use the same CodingStyle as cx88 and saa7134.
- Included missing card numbers
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@brturbo.com.br>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 70b6934a
...@@ -309,8 +309,8 @@ static struct CARD { ...@@ -309,8 +309,8 @@ static struct CARD {
/* array with description for bt848 / bt878 tv/grabber cards */ /* array with description for bt848 / bt878 tv/grabber cards */
struct tvcard bttv_tvcards[] = { struct tvcard bttv_tvcards[] = {
{ [BTTV_UNKNOWN] = {
/* ---- card 0x00 ---------------------------------- */ /* ---- card 0x00 ---------------------------------- */
.name = " *** UNKNOWN/GENERIC *** ", .name = " *** UNKNOWN/GENERIC *** ",
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -319,7 +319,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -319,7 +319,8 @@ struct tvcard bttv_tvcards[] = {
.muxsel = { 2, 3, 1, 0}, .muxsel = { 2, 3, 1, 0},
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_MIRO] = {
.name = "MIRO PCTV", .name = "MIRO PCTV",
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -331,7 +332,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -331,7 +332,8 @@ struct tvcard bttv_tvcards[] = {
.needs_tvaudio = 1, .needs_tvaudio = 1,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_HAUPPAUGE] = {
.name = "Hauppauge (bt848)", .name = "Hauppauge (bt848)",
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -343,7 +345,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -343,7 +345,8 @@ struct tvcard bttv_tvcards[] = {
.needs_tvaudio = 1, .needs_tvaudio = 1,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_STB] = {
.name = "STB, Gateway P/N 6000699 (bt848)", .name = "STB, Gateway P/N 6000699 (bt848)",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -358,9 +361,10 @@ struct tvcard bttv_tvcards[] = { ...@@ -358,9 +361,10 @@ struct tvcard bttv_tvcards[] = {
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.pll = PLL_28, .pll = PLL_28,
.has_radio = 1, .has_radio = 1,
},{ },
/* ---- card 0x04 ---------------------------------- */ /* ---- card 0x04 ---------------------------------- */
[BTTV_INTEL] = {
.name = "Intel Create and Share PCI/ Smart Video Recorder III", .name = "Intel Create and Share PCI/ Smart Video Recorder III",
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 0, .audio_inputs = 0,
...@@ -372,7 +376,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -372,7 +376,8 @@ struct tvcard bttv_tvcards[] = {
.needs_tvaudio = 0, .needs_tvaudio = 0,
.tuner_type = 4, .tuner_type = 4,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_DIAMOND] = {
.name = "Diamond DTV2000", .name = "Diamond DTV2000",
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -384,7 +389,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -384,7 +389,8 @@ struct tvcard bttv_tvcards[] = {
.needs_tvaudio = 1, .needs_tvaudio = 1,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_AVERMEDIA] = {
.name = "AVerMedia TVPhone", .name = "AVerMedia TVPhone",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -399,7 +405,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -399,7 +405,8 @@ struct tvcard bttv_tvcards[] = {
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.audio_hook = avermedia_tvphone_audio, .audio_hook = avermedia_tvphone_audio,
.has_remote = 1, .has_remote = 1,
},{ },
[BTTV_MATRIX_VISION] = {
.name = "MATRIX-Vision MV-Delta", .name = "MATRIX-Vision MV-Delta",
.video_inputs = 5, .video_inputs = 5,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -411,9 +418,10 @@ struct tvcard bttv_tvcards[] = { ...@@ -411,9 +418,10 @@ struct tvcard bttv_tvcards[] = {
.needs_tvaudio = 1, .needs_tvaudio = 1,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
/* ---- card 0x08 ---------------------------------- */ /* ---- card 0x08 ---------------------------------- */
[BTTV_FLYVIDEO] = {
.name = "Lifeview FlyVideo II (Bt848) LR26 / MAXI TV Video PCI2 LR26", .name = "Lifeview FlyVideo II (Bt848) LR26 / MAXI TV Video PCI2 LR26",
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -426,7 +434,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -426,7 +434,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_TURBOTV] = {
.name = "IMS/IXmicro TurboTV", .name = "IMS/IXmicro TurboTV",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -439,7 +448,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -439,7 +448,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = TUNER_TEMIC_PAL, .tuner_type = TUNER_TEMIC_PAL,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_HAUPPAUGE878] = {
.name = "Hauppauge (bt878)", .name = "Hauppauge (bt878)",
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -452,7 +462,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -452,7 +462,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_MIROPRO] = {
.name = "MIRO PCTV pro", .name = "MIRO PCTV pro",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -464,9 +475,10 @@ struct tvcard bttv_tvcards[] = { ...@@ -464,9 +475,10 @@ struct tvcard bttv_tvcards[] = {
.needs_tvaudio = 1, .needs_tvaudio = 1,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
/* ---- card 0x0c ---------------------------------- */ /* ---- card 0x0c ---------------------------------- */
[BTTV_ADSTECH_TV] = {
.name = "ADS Technologies Channel Surfer TV (bt848)", .name = "ADS Technologies Channel Surfer TV (bt848)",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -478,7 +490,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -478,7 +490,8 @@ struct tvcard bttv_tvcards[] = {
.needs_tvaudio = 1, .needs_tvaudio = 1,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_AVERMEDIA98] = {
.name = "AVerMedia TVCapture 98", .name = "AVerMedia TVCapture 98",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 4, .audio_inputs = 4,
...@@ -493,7 +506,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -493,7 +506,8 @@ struct tvcard bttv_tvcards[] = {
.tuner_type = TUNER_PHILIPS_PAL, .tuner_type = TUNER_PHILIPS_PAL,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.audio_hook = avermedia_tv_stereo_audio, .audio_hook = avermedia_tv_stereo_audio,
},{ },
[BTTV_VHX] = {
.name = "Aimslab Video Highway Xtreme (VHX)", .name = "Aimslab Video Highway Xtreme (VHX)",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -506,7 +520,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -506,7 +520,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_ZOLTRIX] = {
.name = "Zoltrix TV-Max", .name = "Zoltrix TV-Max",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -518,9 +533,10 @@ struct tvcard bttv_tvcards[] = { ...@@ -518,9 +533,10 @@ struct tvcard bttv_tvcards[] = {
.needs_tvaudio = 1, .needs_tvaudio = 1,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
/* ---- card 0x10 ---------------------------------- */ /* ---- card 0x10 ---------------------------------- */
[BTTV_PIXVIEWPLAYTV] = {
.name = "Prolink Pixelview PlayTV (bt878)", .name = "Prolink Pixelview PlayTV (bt878)",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -528,12 +544,18 @@ struct tvcard bttv_tvcards[] = { ...@@ -528,12 +544,18 @@ struct tvcard bttv_tvcards[] = {
.svhs = 2, .svhs = 2,
.gpiomask = 0x01fe00, .gpiomask = 0x01fe00,
.muxsel = { 2, 3, 1, 1}, .muxsel = { 2, 3, 1, 1},
#if 0
/* old */
.audiomux = { 0x01c000, 0, 0x018000, 0x014000, 0x002000, 0 },
#else
/* 2003-10-20 by "Anton A. Arapov" <arapov@mail.ru> */ /* 2003-10-20 by "Anton A. Arapov" <arapov@mail.ru> */
.audiomux = { 0x001e00, 0, 0x018000, 0x014000, 0x002000, 0 }, .audiomux = { 0x001e00, 0, 0x018000, 0x014000, 0x002000, 0 },
#endif
.needs_tvaudio = 1, .needs_tvaudio = 1,
.pll = PLL_28, .pll = PLL_28,
.tuner_type = -1, .tuner_type = -1,
},{ },
[BTTV_WINVIEW_601] = {
.name = "Leadtek WinView 601", .name = "Leadtek WinView 601",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -547,7 +569,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -547,7 +569,8 @@ struct tvcard bttv_tvcards[] = {
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.audio_hook = winview_audio, .audio_hook = winview_audio,
.has_radio = 1, .has_radio = 1,
},{ },
[BTTV_AVEC_INTERCAP] = {
.name = "AVEC Intercapture", .name = "AVEC Intercapture",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 2, .audio_inputs = 2,
...@@ -559,7 +582,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -559,7 +582,8 @@ struct tvcard bttv_tvcards[] = {
.needs_tvaudio = 1, .needs_tvaudio = 1,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_LIFE_FLYKIT] = {
.name = "Lifeview FlyVideo II EZ /FlyKit LR38 Bt848 (capture only)", .name = "Lifeview FlyVideo II EZ /FlyKit LR38 Bt848 (capture only)",
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -571,9 +595,10 @@ struct tvcard bttv_tvcards[] = { ...@@ -571,9 +595,10 @@ struct tvcard bttv_tvcards[] = {
.no_msp34xx = 1, .no_msp34xx = 1,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
/* ---- card 0x14 ---------------------------------- */ /* ---- card 0x14 ---------------------------------- */
[BTTV_CEI_RAFFLES] = {
.name = "CEI Raffles Card", .name = "CEI Raffles Card",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 3, .audio_inputs = 3,
...@@ -582,7 +607,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -582,7 +607,8 @@ struct tvcard bttv_tvcards[] = {
.muxsel = {2, 3, 1, 1}, .muxsel = {2, 3, 1, 1},
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_CONFERENCETV] = {
.name = "Lifeview FlyVideo 98/ Lucky Star Image World ConferenceTV LR50", .name = "Lifeview FlyVideo 98/ Lucky Star Image World ConferenceTV LR50",
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 2, /* tuner, line in */ .audio_inputs = 2, /* tuner, line in */
...@@ -594,7 +620,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -594,7 +620,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = TUNER_PHILIPS_PAL_I, .tuner_type = TUNER_PHILIPS_PAL_I,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_PHOEBE_TVMAS] = {
.name = "Askey CPH050/ Phoebe Tv Master + FM", .name = "Askey CPH050/ Phoebe Tv Master + FM",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -607,7 +634,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -607,7 +634,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_MODTEC_205] = {
.name = "Modular Technology MM201/MM202/MM205/MM210/MM215 PCTV, bt878", .name = "Modular Technology MM201/MM202/MM205/MM210/MM215 PCTV, bt878",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -621,9 +649,10 @@ struct tvcard bttv_tvcards[] = { ...@@ -621,9 +649,10 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = TUNER_ALPS_TSBB5_PAL_I, .tuner_type = TUNER_ALPS_TSBB5_PAL_I,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
/* ---- card 0x18 ---------------------------------- */ /* ---- card 0x18 ---------------------------------- */
[BTTV_MAGICTVIEW061] = {
.name = "Askey CPH05X/06X (bt878) [many vendors]", .name = "Askey CPH05X/06X (bt878) [many vendors]",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -637,7 +666,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -637,7 +666,8 @@ struct tvcard bttv_tvcards[] = {
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.has_remote = 1, .has_remote = 1,
},{ },
[BTTV_VOBIS_BOOSTAR] = {
.name = "Terratec TerraTV+ Version 1.0 (Bt848)/ Terra TValue Version 1.0/ Vobis TV-Boostar", .name = "Terratec TerraTV+ Version 1.0 (Bt848)/ Terra TValue Version 1.0/ Vobis TV-Boostar",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -650,7 +680,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -650,7 +680,8 @@ struct tvcard bttv_tvcards[] = {
.tuner_type = TUNER_PHILIPS_PAL, .tuner_type = TUNER_PHILIPS_PAL,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.audio_hook = terratv_audio, .audio_hook = terratv_audio,
},{ },
[BTTV_HAUPPAUG_WCAM] = {
.name = "Hauppauge WinCam newer (bt878)", .name = "Hauppauge WinCam newer (bt878)",
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -662,7 +693,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -662,7 +693,8 @@ struct tvcard bttv_tvcards[] = {
.needs_tvaudio = 1, .needs_tvaudio = 1,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_MAXI] = {
.name = "Lifeview FlyVideo 98/ MAXI TV Video PCI2 LR50", .name = "Lifeview FlyVideo 98/ MAXI TV Video PCI2 LR50",
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 2, .audio_inputs = 2,
...@@ -674,9 +706,10 @@ struct tvcard bttv_tvcards[] = { ...@@ -674,9 +706,10 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = TUNER_PHILIPS_SECAM, .tuner_type = TUNER_PHILIPS_SECAM,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
/* ---- card 0x1c ---------------------------------- */ /* ---- card 0x1c ---------------------------------- */
[BTTV_TERRATV] = {
.name = "Terratec TerraTV+ Version 1.1 (bt878)", .name = "Terratec TerraTV+ Version 1.1 (bt878)",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -718,9 +751,10 @@ struct tvcard bttv_tvcards[] = { ...@@ -718,9 +751,10 @@ struct tvcard bttv_tvcards[] = {
1a0000 : TV Stereo 1a0000 : TV Stereo
30000 : Radio 30000 : Radio
40000 : Mute 40000 : Mute
*/ */
},{ },
[BTTV_PXC200] = {
/* Jannik Fritsch <jannik@techfak.uni-bielefeld.de> */ /* Jannik Fritsch <jannik@techfak.uni-bielefeld.de> */
.name = "Imagenation PXC200", .name = "Imagenation PXC200",
.video_inputs = 5, .video_inputs = 5,
...@@ -735,7 +769,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -735,7 +769,8 @@ struct tvcard bttv_tvcards[] = {
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.muxsel_hook = PXC200_muxsel, .muxsel_hook = PXC200_muxsel,
},{ },
[BTTV_FLYVIDEO_98] = {
.name = "Lifeview FlyVideo 98 LR50", .name = "Lifeview FlyVideo 98 LR50",
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -747,7 +782,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -747,7 +782,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_IPROTV] = {
.name = "Formac iProTV, Formac ProTV I (bt848)", .name = "Formac iProTV, Formac ProTV I (bt848)",
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -759,9 +795,10 @@ struct tvcard bttv_tvcards[] = { ...@@ -759,9 +795,10 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = TUNER_PHILIPS_PAL, .tuner_type = TUNER_PHILIPS_PAL,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
/* ---- card 0x20 ---------------------------------- */ /* ---- card 0x20 ---------------------------------- */
[BTTV_INTEL_C_S_PCI] = {
.name = "Intel Create and Share PCI/ Smart Video Recorder III", .name = "Intel Create and Share PCI/ Smart Video Recorder III",
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 0, .audio_inputs = 0,
...@@ -773,7 +810,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -773,7 +810,8 @@ struct tvcard bttv_tvcards[] = {
.needs_tvaudio = 0, .needs_tvaudio = 0,
.tuner_type = 4, .tuner_type = 4,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_TERRATVALUE] = {
.name = "Terratec TerraTValue Version Bt878", .name = "Terratec TerraTValue Version Bt878",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -786,16 +824,22 @@ struct tvcard bttv_tvcards[] = { ...@@ -786,16 +824,22 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = TUNER_PHILIPS_PAL, .tuner_type = TUNER_PHILIPS_PAL,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_WINFAST2000] = {
.name = "Leadtek WinFast 2000/ WinFast 2000 XP", .name = "Leadtek WinFast 2000/ WinFast 2000 XP",
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 1, .audio_inputs = 1,
.tuner = 0, .tuner = 0,
.svhs = 2, .svhs = 2,
.muxsel = { 2, 3, 1, 1, 0}, /* TV, CVid, SVid, CVid over SVid connector */ .muxsel = { 2, 3, 1, 1, 0}, /* TV, CVid, SVid, CVid over SVid connector */
#if 0
.gpiomask = 0xc33000,
.audiomux = { 0x422000,0x1000,0x0000,0x620000,0x800000 },
#else
/* Alexander Varakin <avarakin@hotmail.com> [stereo version] */ /* Alexander Varakin <avarakin@hotmail.com> [stereo version] */
.gpiomask = 0xb33000, .gpiomask = 0xb33000,
.audiomux = { 0x122000,0x1000,0x0000,0x620000,0x800000 }, .audiomux = { 0x122000,0x1000,0x0000,0x620000,0x800000 },
#endif
/* Audio Routing for "WinFast 2000 XP" (no tv stereo !) /* Audio Routing for "WinFast 2000 XP" (no tv stereo !)
gpio23 -- hef4052:nEnable (0x800000) gpio23 -- hef4052:nEnable (0x800000)
gpio12 -- hef4052:A1 gpio12 -- hef4052:A1
...@@ -814,7 +858,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -814,7 +858,8 @@ struct tvcard bttv_tvcards[] = {
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.audio_hook = winfast2000_audio, .audio_hook = winfast2000_audio,
.has_remote = 1, .has_remote = 1,
},{ },
[BTTV_CHRONOS_VS2] = {
.name = "Lifeview FlyVideo 98 LR50 / Chronos Video Shuttle II", .name = "Lifeview FlyVideo 98 LR50 / Chronos Video Shuttle II",
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 3, .audio_inputs = 3,
...@@ -826,9 +871,10 @@ struct tvcard bttv_tvcards[] = { ...@@ -826,9 +871,10 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
/* ---- card 0x24 ---------------------------------- */ /* ---- card 0x24 ---------------------------------- */
[BTTV_TYPHOON_TVIEW] = {
.name = "Lifeview FlyVideo 98FM LR50 / Typhoon TView TV/FM Tuner", .name = "Lifeview FlyVideo 98FM LR50 / Typhoon TView TV/FM Tuner",
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 3, .audio_inputs = 3,
...@@ -841,7 +887,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -841,7 +887,8 @@ struct tvcard bttv_tvcards[] = {
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.has_radio = 1, .has_radio = 1,
},{ },
[BTTV_PXELVWPLTVPRO] = {
.name = "Prolink PixelView PlayTV pro", .name = "Prolink PixelView PlayTV pro",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -854,7 +901,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -854,7 +901,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_MAGICTVIEW063] = {
.name = "Askey CPH06X TView99", .name = "Askey CPH06X TView99",
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -868,7 +916,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -868,7 +916,8 @@ struct tvcard bttv_tvcards[] = {
.tuner_type = 1, .tuner_type = 1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.has_remote = 1, .has_remote = 1,
},{ },
[BTTV_PINNACLE] = {
.name = "Pinnacle PCTV Studio/Rave", .name = "Pinnacle PCTV Studio/Rave",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -881,9 +930,10 @@ struct tvcard bttv_tvcards[] = { ...@@ -881,9 +930,10 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
/* ---- card 0x28 ---------------------------------- */ /* ---- card 0x28 ---------------------------------- */
[BTTV_STB2] = {
.name = "STB TV PCI FM, Gateway P/N 6000704 (bt878), 3Dfx VoodooTV 100", .name = "STB TV PCI FM, Gateway P/N 6000704 (bt878), 3Dfx VoodooTV 100",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -898,7 +948,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -898,7 +948,8 @@ struct tvcard bttv_tvcards[] = {
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.pll = PLL_28, .pll = PLL_28,
.has_radio = 1, .has_radio = 1,
},{ },
[BTTV_AVPHONE98] = {
.name = "AVerMedia TVPhone 98", .name = "AVerMedia TVPhone 98",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 4, .audio_inputs = 4,
...@@ -913,7 +964,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -913,7 +964,8 @@ struct tvcard bttv_tvcards[] = {
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.has_radio = 1, .has_radio = 1,
.audio_hook = avermedia_tvphone_audio, .audio_hook = avermedia_tvphone_audio,
},{ },
[BTTV_PV951] = {
.name = "ProVideo PV951", /* pic16c54 */ .name = "ProVideo PV951", /* pic16c54 */
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -927,7 +979,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -927,7 +979,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = 1, .tuner_type = 1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_ONAIR_TV] = {
.name = "Little OnAir TV", .name = "Little OnAir TV",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -939,9 +992,10 @@ struct tvcard bttv_tvcards[] = { ...@@ -939,9 +992,10 @@ struct tvcard bttv_tvcards[] = {
.no_msp34xx = 1, .no_msp34xx = 1,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
/* ---- card 0x2c ---------------------------------- */ /* ---- card 0x2c ---------------------------------- */
[BTTV_SIGMA_TVII_FM] = {
.name = "Sigma TVII-FM", .name = "Sigma TVII-FM",
.video_inputs = 2, .video_inputs = 2,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -954,7 +1008,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -954,7 +1008,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_NONE, .pll = PLL_NONE,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_MATRIX_VISION2] = {
.name = "MATRIX-Vision MV-Delta 2", .name = "MATRIX-Vision MV-Delta 2",
.video_inputs = 5, .video_inputs = 5,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -967,7 +1022,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -967,7 +1022,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_ZOLTRIX_GENIE] = {
.name = "Zoltrix Genie TV/FM", .name = "Zoltrix Genie TV/FM",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -980,7 +1036,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -980,7 +1036,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = 21, .tuner_type = 21,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_TERRATVRADIO] = {
.name = "Terratec TV/Radio+", .name = "Terratec TV/Radio+",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -995,9 +1052,10 @@ struct tvcard bttv_tvcards[] = { ...@@ -995,9 +1052,10 @@ struct tvcard bttv_tvcards[] = {
.tuner_type = 1, .tuner_type = 1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.has_radio = 1, .has_radio = 1,
},{ },
/* ---- card 0x30 ---------------------------------- */ /* ---- card 0x30 ---------------------------------- */
[BTTV_DYNALINK] = {
.name = "Askey CPH03x/ Dynalink Magic TView", .name = "Askey CPH03x/ Dynalink Magic TView",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -1010,7 +1068,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1010,7 +1068,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_GVBCTV3PCI] = {
.name = "IODATA GV-BCTV3/PCI", .name = "IODATA GV-BCTV3/PCI",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -1024,7 +1083,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1024,7 +1083,8 @@ struct tvcard bttv_tvcards[] = {
.tuner_type = TUNER_ALPS_TSHC6_NTSC, .tuner_type = TUNER_ALPS_TSHC6_NTSC,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.audio_hook = gvbctv3pci_audio, .audio_hook = gvbctv3pci_audio,
},{ },
[BTTV_PXELVWPLTVPAK] = {
.name = "Prolink PV-BT878P+4E / PixelView PlayTV PAK / Lenco MXTV-9578 CP", .name = "Prolink PV-BT878P+4E / PixelView PlayTV PAK / Lenco MXTV-9578 CP",
.video_inputs = 5, .video_inputs = 5,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -1048,7 +1108,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1048,7 +1108,8 @@ struct tvcard bttv_tvcards[] = {
GPIO23: A5,A0, U5,nEN GPIO23: A5,A0, U5,nEN
Note: At i2c=0x8a is a Bt832 chip, which changes to 0x88 after being reset via GPIO22 Note: At i2c=0x8a is a Bt832 chip, which changes to 0x88 after being reset via GPIO22
*/ */
},{ },
[BTTV_EAGLE] = {
.name = "Eagle Wireless Capricorn2 (bt878A)", .name = "Eagle Wireless Capricorn2 (bt878A)",
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -1060,9 +1121,10 @@ struct tvcard bttv_tvcards[] = { ...@@ -1060,9 +1121,10 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = -1 /* TUNER_ALPS_TMDH2_NTSC */, .tuner_type = -1 /* TUNER_ALPS_TMDH2_NTSC */,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
/* ---- card 0x34 ---------------------------------- */ /* ---- card 0x34 ---------------------------------- */
[BTTV_PINNACLEPRO] = {
/* David Härdeman <david@2gen.com> */ /* David Härdeman <david@2gen.com> */
.name = "Pinnacle PCTV Studio Pro", .name = "Pinnacle PCTV Studio Pro",
.video_inputs = 4, .video_inputs = 4,
...@@ -1085,7 +1147,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1085,7 +1147,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_TVIEW_RDS_FM] = {
/* Claas Langbehn <claas@bigfoot.com>, /* Claas Langbehn <claas@bigfoot.com>,
Sven Grothklags <sven@upb.de> */ Sven Grothklags <sven@upb.de> */
.name = "Typhoon TView RDS + FM Stereo / KNC1 TV Station RDS", .name = "Typhoon TView RDS + FM Stereo / KNC1 TV Station RDS",
...@@ -1101,7 +1164,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1101,7 +1164,8 @@ struct tvcard bttv_tvcards[] = {
.tuner_type = TUNER_PHILIPS_PAL, .tuner_type = TUNER_PHILIPS_PAL,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.has_radio = 1, .has_radio = 1,
},{ },
[BTTV_LIFETEC_9415] = {
/* Tim Rstermundt <rosterm@uni-muenster.de> /* Tim Rstermundt <rosterm@uni-muenster.de>
in de.comp.os.unix.linux.hardware: in de.comp.os.unix.linux.hardware:
options bttv card=0 pll=1 radio=1 gpiomask=0x18e0 options bttv card=0 pll=1 radio=1 gpiomask=0x18e0
...@@ -1122,7 +1186,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1122,7 +1186,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_BESTBUY_EASYTV] = {
/* Miguel Angel Alvarez <maacruz@navegalia.com> /* Miguel Angel Alvarez <maacruz@navegalia.com>
old Easy TV BT848 version (model CPH031) */ old Easy TV BT848 version (model CPH031) */
.name = "Askey CPH031/ BESTBUY Easy TV", .name = "Askey CPH031/ BESTBUY Easy TV",
...@@ -1137,9 +1202,10 @@ struct tvcard bttv_tvcards[] = { ...@@ -1137,9 +1202,10 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = TUNER_TEMIC_PAL, .tuner_type = TUNER_TEMIC_PAL,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
/* ---- card 0x38 ---------------------------------- */ /* ---- card 0x38 ---------------------------------- */
[BTTV_FLYVIDEO_98FM] = {
/* Gordon Heydon <gjheydon@bigfoot.com ('98) */ /* Gordon Heydon <gjheydon@bigfoot.com ('98) */
.name = "Lifeview FlyVideo 98FM LR50", .name = "Lifeview FlyVideo 98FM LR50",
.video_inputs = 4, .video_inputs = 4,
...@@ -1152,10 +1218,11 @@ struct tvcard bttv_tvcards[] = { ...@@ -1152,10 +1218,11 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = 5, .tuner_type = 5,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
/* This is the ultimate cheapo capture card /* This is the ultimate cheapo capture card
* just a BT848A on a small PCB! * just a BT848A on a small PCB!
* Steve Hosgood <steve@equiinet.com> */ * Steve Hosgood <steve@equiinet.com> */
[BTTV_GRANDTEC] = {
.name = "GrandTec 'Grand Video Capture' (Bt848)", .name = "GrandTec 'Grand Video Capture' (Bt848)",
.video_inputs = 2, .video_inputs = 2,
.audio_inputs = 0, .audio_inputs = 0,
...@@ -1169,7 +1236,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1169,7 +1236,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_35, .pll = PLL_35,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_ASKEY_CPH060] = {
/* Daniel Herrington <daniel.herrington@home.com> */ /* Daniel Herrington <daniel.herrington@home.com> */
.name = "Askey CPH060/ Phoebe TV Master Only (No FM)", .name = "Askey CPH060/ Phoebe TV Master Only (No FM)",
.video_inputs = 3, .video_inputs = 3,
...@@ -1183,7 +1251,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1183,7 +1251,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = TUNER_TEMIC_4036FY5_NTSC, .tuner_type = TUNER_TEMIC_4036FY5_NTSC,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_ASKEY_CPH03X] = {
/* Matti Mottus <mottus@physic.ut.ee> */ /* Matti Mottus <mottus@physic.ut.ee> */
.name = "Askey CPH03x TV Capturer", .name = "Askey CPH03x TV Capturer",
.video_inputs = 4, .video_inputs = 4,
...@@ -1196,9 +1265,10 @@ struct tvcard bttv_tvcards[] = { ...@@ -1196,9 +1265,10 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = 0, .tuner_type = 0,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
/* ---- card 0x3c ---------------------------------- */ /* ---- card 0x3c ---------------------------------- */
[BTTV_MM100PCTV] = {
/* Philip Blundell <philb@gnu.org> */ /* Philip Blundell <philb@gnu.org> */
.name = "Modular Technology MM100PCTV", .name = "Modular Technology MM100PCTV",
.video_inputs = 2, .video_inputs = 2,
...@@ -1211,7 +1281,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1211,7 +1281,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_35, .pll = PLL_35,
.tuner_type = TUNER_TEMIC_PAL, .tuner_type = TUNER_TEMIC_PAL,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_GMV1] = {
/* Adrian Cox <adrian@humboldt.co.uk */ /* Adrian Cox <adrian@humboldt.co.uk */
.name = "AG Electronics GMV1", .name = "AG Electronics GMV1",
.video_inputs = 2, .video_inputs = 2,
...@@ -1226,7 +1297,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1226,7 +1297,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_BESTBUY_EASYTV2] = {
/* Miguel Angel Alvarez <maacruz@navegalia.com> /* Miguel Angel Alvarez <maacruz@navegalia.com>
new Easy TV BT878 version (model CPH061) new Easy TV BT878 version (model CPH061)
special thanks to Informatica Mieres for providing the card */ special thanks to Informatica Mieres for providing the card */
...@@ -1242,7 +1314,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1242,7 +1314,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = TUNER_PHILIPS_PAL, .tuner_type = TUNER_PHILIPS_PAL,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_ATI_TVWONDER] = {
/* Lukas Gebauer <geby@volny.cz> */ /* Lukas Gebauer <geby@volny.cz> */
.name = "ATI TV-Wonder", .name = "ATI TV-Wonder",
.video_inputs = 3, .video_inputs = 3,
...@@ -1255,9 +1328,10 @@ struct tvcard bttv_tvcards[] = { ...@@ -1255,9 +1328,10 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = TUNER_TEMIC_4006FN5_MULTI_PAL, .tuner_type = TUNER_TEMIC_4006FN5_MULTI_PAL,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
/* ---- card 0x40 ---------------------------------- */ /* ---- card 0x40 ---------------------------------- */
[BTTV_ATI_TVWONDERVE] = {
/* Lukas Gebauer <geby@volny.cz> */ /* Lukas Gebauer <geby@volny.cz> */
.name = "ATI TV-Wonder VE", .name = "ATI TV-Wonder VE",
.video_inputs = 2, .video_inputs = 2,
...@@ -1271,7 +1345,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1271,7 +1345,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = TUNER_TEMIC_4006FN5_MULTI_PAL, .tuner_type = TUNER_TEMIC_4006FN5_MULTI_PAL,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_FLYVIDEO2000] = {
/* DeeJay <deejay@westel900.net (2000S) */ /* DeeJay <deejay@westel900.net (2000S) */
.name = "Lifeview FlyVideo 2000S LR90", .name = "Lifeview FlyVideo 2000S LR90",
.video_inputs = 3, .video_inputs = 3,
...@@ -1291,7 +1366,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1291,7 +1366,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = 5, .tuner_type = 5,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_TERRATVALUER] = {
.name = "Terratec TValueRadio", .name = "Terratec TValueRadio",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -1305,7 +1381,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1305,7 +1381,8 @@ struct tvcard bttv_tvcards[] = {
.tuner_type = TUNER_PHILIPS_PAL, .tuner_type = TUNER_PHILIPS_PAL,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.has_radio = 1, .has_radio = 1,
},{ },
[BTTV_GVBCTV4PCI] = {
/* TANAKA Kei <peg00625@nifty.com> */ /* TANAKA Kei <peg00625@nifty.com> */
.name = "IODATA GV-BCTV4/PCI", .name = "IODATA GV-BCTV4/PCI",
.video_inputs = 3, .video_inputs = 3,
...@@ -1320,9 +1397,10 @@ struct tvcard bttv_tvcards[] = { ...@@ -1320,9 +1397,10 @@ struct tvcard bttv_tvcards[] = {
.tuner_type = TUNER_SHARP_2U5JF5540_NTSC, .tuner_type = TUNER_SHARP_2U5JF5540_NTSC,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.audio_hook = gvbctv3pci_audio, .audio_hook = gvbctv3pci_audio,
},{ },
/* ---- card 0x44 ---------------------------------- */ /* ---- card 0x44 ---------------------------------- */
[BTTV_VOODOOTV_FM] = {
.name = "3Dfx VoodooTV FM (Euro), VoodooTV 200 (USA)", .name = "3Dfx VoodooTV FM (Euro), VoodooTV 200 (USA)",
/* try "insmod msp3400 simple=0" if you have /* try "insmod msp3400 simple=0" if you have
* sound problems with this card. */ * sound problems with this card. */
...@@ -1341,7 +1419,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1341,7 +1419,8 @@ struct tvcard bttv_tvcards[] = {
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.pll = PLL_28, .pll = PLL_28,
.has_radio = 1, .has_radio = 1,
},{ },
[BTTV_AIMMS] = {
/* Philip Blundell <pb@nexus.co.uk> */ /* Philip Blundell <pb@nexus.co.uk> */
.name = "Active Imaging AIMMS", .name = "Active Imaging AIMMS",
.video_inputs = 1, .video_inputs = 1,
...@@ -1352,7 +1431,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1352,7 +1431,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.muxsel = { 2 }, .muxsel = { 2 },
.gpiomask = 0 .gpiomask = 0
},{ },
[BTTV_PV_BT878P_PLUS] = {
/* Tomasz Pyra <hellfire@sedez.iq.pl> */ /* Tomasz Pyra <hellfire@sedez.iq.pl> */
.name = "Prolink Pixelview PV-BT878P+ (Rev.4C,8E)", .name = "Prolink Pixelview PV-BT878P+ (Rev.4C,8E)",
.video_inputs = 3, .video_inputs = 3,
...@@ -1374,7 +1454,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1374,7 +1454,8 @@ struct tvcard bttv_tvcards[] = {
GPIO3: U4.nEN, U5.A0, A5.nEN GPIO3: U4.nEN, U5.A0, A5.nEN
GPIO8-15: vrd866b ? GPIO8-15: vrd866b ?
*/ */
},{ },
[BTTV_FLYVIDEO98EZ] = {
.name = "Lifeview FlyVideo 98EZ (capture only) LR51", .name = "Lifeview FlyVideo 98EZ (capture only) LR51",
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 0, .audio_inputs = 0,
...@@ -1385,9 +1466,10 @@ struct tvcard bttv_tvcards[] = { ...@@ -1385,9 +1466,10 @@ struct tvcard bttv_tvcards[] = {
.no_msp34xx = 1, .no_msp34xx = 1,
.tuner_type = UNSET, .tuner_type = UNSET,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
/* ---- card 0x48 ---------------------------------- */ /* ---- card 0x48 ---------------------------------- */
[BTTV_PV_BT878P_9B] = {
/* Dariusz Kowalewski <darekk@automex.pl> */ /* Dariusz Kowalewski <darekk@automex.pl> */
.name = "Prolink Pixelview PV-BT878P+9B (PlayTV Pro rev.9B FM+NICAM)", .name = "Prolink Pixelview PV-BT878P+9B (PlayTV Pro rev.9B FM+NICAM)",
.video_inputs = 4, .video_inputs = 4,
...@@ -1413,7 +1495,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1413,7 +1495,8 @@ struct tvcard bttv_tvcards[] = {
GPIO8-15: vrd866b GPIO8-15: vrd866b
GPIO20,22,23: R30,R29,R28 GPIO20,22,23: R30,R29,R28
*/ */
},{ },
[BTTV_SENSORAY311] = {
/* Clay Kunz <ckunz@mail.arc.nasa.gov> */ /* Clay Kunz <ckunz@mail.arc.nasa.gov> */
/* you must jumper JP5 for the card to work */ /* you must jumper JP5 for the card to work */
.name = "Sensoray 311", .name = "Sensoray 311",
...@@ -1427,7 +1510,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1427,7 +1510,8 @@ struct tvcard bttv_tvcards[] = {
.needs_tvaudio = 0, .needs_tvaudio = 0,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_RV605] = {
/* Miguel Freitas <miguel@cetuc.puc-rio.br> */ /* Miguel Freitas <miguel@cetuc.puc-rio.br> */
.name = "RemoteVision MX (RV605)", .name = "RemoteVision MX (RV605)",
.video_inputs = 16, .video_inputs = 16,
...@@ -1443,7 +1527,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1443,7 +1527,8 @@ struct tvcard bttv_tvcards[] = {
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.muxsel_hook = rv605_muxsel, .muxsel_hook = rv605_muxsel,
},{ },
[BTTV_POWERCLR_MTV878] = {
.name = "Powercolor MTV878/ MTV878R/ MTV878F", .name = "Powercolor MTV878/ MTV878R/ MTV878F",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 2, .audio_inputs = 2,
...@@ -1457,9 +1542,10 @@ struct tvcard bttv_tvcards[] = { ...@@ -1457,9 +1542,10 @@ struct tvcard bttv_tvcards[] = {
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.pll = PLL_28, .pll = PLL_28,
.has_radio = 1, .has_radio = 1,
},{ },
/* ---- card 0x4c ---------------------------------- */ /* ---- card 0x4c ---------------------------------- */
[BTTV_WINDVR] = {
/* Masaki Suzuki <masaki@btree.org> */ /* Masaki Suzuki <masaki@btree.org> */
.name = "Canopus WinDVR PCI (COMPAQ Presario 3524JP, 5112JP)", .name = "Canopus WinDVR PCI (COMPAQ Presario 3524JP, 5112JP)",
.video_inputs = 3, .video_inputs = 3,
...@@ -1472,7 +1558,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1472,7 +1558,8 @@ struct tvcard bttv_tvcards[] = {
.tuner_type = TUNER_PHILIPS_NTSC, .tuner_type = TUNER_PHILIPS_NTSC,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.audio_hook = windvr_audio, .audio_hook = windvr_audio,
},{ },
[BTTV_GRANDTEC_MULTI] = {
.name = "GrandTec Multi Capture Card (Bt878)", .name = "GrandTec Multi Capture Card (Bt878)",
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 0, .audio_inputs = 0,
...@@ -1486,7 +1573,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1486,7 +1573,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_KWORLD] = {
.name = "Jetway TV/Capture JW-TV878-FBK, Kworld KW-TV878RF", .name = "Jetway TV/Capture JW-TV878-FBK, Kworld KW-TV878RF",
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 3, .audio_inputs = 3,
...@@ -1518,7 +1606,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1518,7 +1606,8 @@ struct tvcard bttv_tvcards[] = {
GPIO16-21: n.c. GPIO16-21: n.c.
GPIO22,23: ?? GPIO22,23: ??
?? : mtu8b56ep microcontroller for IR (GPIO wiring unknown)*/ ?? : mtu8b56ep microcontroller for IR (GPIO wiring unknown)*/
},{ },
[BTTV_DSP_TCVIDEO] = {
/* Arthur Tetzlaff-Deas, DSP Design Ltd <software@dspdesign.com> */ /* Arthur Tetzlaff-Deas, DSP Design Ltd <software@dspdesign.com> */
.name = "DSP Design TCVIDEO", .name = "DSP Design TCVIDEO",
.video_inputs = 4, .video_inputs = 4,
...@@ -1527,9 +1616,10 @@ struct tvcard bttv_tvcards[] = { ...@@ -1527,9 +1616,10 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
/* ---- card 0x50 ---------------------------------- */ /* ---- card 0x50 ---------------------------------- */
[BTTV_HAUPPAUGEPVR] = {
.name = "Hauppauge WinTV PVR", .name = "Hauppauge WinTV PVR",
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -1543,7 +1633,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1543,7 +1633,8 @@ struct tvcard bttv_tvcards[] = {
.gpiomask = 7, .gpiomask = 7,
.audiomux = {7}, .audiomux = {7},
},{ },
[BTTV_GVBCTV5PCI] = {
.name = "IODATA GV-BCTV5/PCI", .name = "IODATA GV-BCTV5/PCI",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -1558,7 +1649,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1558,7 +1649,8 @@ struct tvcard bttv_tvcards[] = {
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.audio_hook = gvbctv5pci_audio, .audio_hook = gvbctv5pci_audio,
.has_radio = 1, .has_radio = 1,
},{ },
[BTTV_OSPREY1x0] = {
.name = "Osprey 100/150 (878)", /* 0x1(2|3)-45C6-C1 */ .name = "Osprey 100/150 (878)", /* 0x1(2|3)-45C6-C1 */
.video_inputs = 4, /* id-inputs-clock */ .video_inputs = 4, /* id-inputs-clock */
.audio_inputs = 0, .audio_inputs = 0,
...@@ -1571,7 +1663,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1571,7 +1663,8 @@ struct tvcard bttv_tvcards[] = {
.no_msp34xx = 1, .no_msp34xx = 1,
.no_tda9875 = 1, .no_tda9875 = 1,
.no_tda7432 = 1, .no_tda7432 = 1,
},{ },
[BTTV_OSPREY1x0_848] = {
.name = "Osprey 100/150 (848)", /* 0x04-54C0-C1 & older boards */ .name = "Osprey 100/150 (848)", /* 0x04-54C0-C1 & older boards */
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 0, .audio_inputs = 0,
...@@ -1584,9 +1677,10 @@ struct tvcard bttv_tvcards[] = { ...@@ -1584,9 +1677,10 @@ struct tvcard bttv_tvcards[] = {
.no_msp34xx = 1, .no_msp34xx = 1,
.no_tda9875 = 1, .no_tda9875 = 1,
.no_tda7432 = 1, .no_tda7432 = 1,
},{ },
/* ---- card 0x54 ---------------------------------- */ /* ---- card 0x54 ---------------------------------- */
[BTTV_OSPREY101_848] = {
.name = "Osprey 101 (848)", /* 0x05-40C0-C1 */ .name = "Osprey 101 (848)", /* 0x05-40C0-C1 */
.video_inputs = 2, .video_inputs = 2,
.audio_inputs = 0, .audio_inputs = 0,
...@@ -1599,7 +1693,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1599,7 +1693,8 @@ struct tvcard bttv_tvcards[] = {
.no_msp34xx = 1, .no_msp34xx = 1,
.no_tda9875 = 1, .no_tda9875 = 1,
.no_tda7432 = 1, .no_tda7432 = 1,
},{ },
[BTTV_OSPREY1x1] = {
.name = "Osprey 101/151", /* 0x1(4|5)-0004-C4 */ .name = "Osprey 101/151", /* 0x1(4|5)-0004-C4 */
.video_inputs = 1, .video_inputs = 1,
.audio_inputs = 0, .audio_inputs = 0,
...@@ -1612,7 +1707,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1612,7 +1707,8 @@ struct tvcard bttv_tvcards[] = {
.no_msp34xx = 1, .no_msp34xx = 1,
.no_tda9875 = 1, .no_tda9875 = 1,
.no_tda7432 = 1, .no_tda7432 = 1,
},{ },
[BTTV_OSPREY1x1_SVID] = {
.name = "Osprey 101/151 w/ svid", /* 0x(16|17|20)-00C4-C1 */ .name = "Osprey 101/151 w/ svid", /* 0x(16|17|20)-00C4-C1 */
.video_inputs = 2, .video_inputs = 2,
.audio_inputs = 0, .audio_inputs = 0,
...@@ -1625,7 +1721,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1625,7 +1721,8 @@ struct tvcard bttv_tvcards[] = {
.no_msp34xx = 1, .no_msp34xx = 1,
.no_tda9875 = 1, .no_tda9875 = 1,
.no_tda7432 = 1, .no_tda7432 = 1,
},{ },
[BTTV_OSPREY2xx] = {
.name = "Osprey 200/201/250/251", /* 0x1(8|9|E|F)-0004-C4 */ .name = "Osprey 200/201/250/251", /* 0x1(8|9|E|F)-0004-C4 */
.video_inputs = 1, .video_inputs = 1,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -1638,9 +1735,10 @@ struct tvcard bttv_tvcards[] = { ...@@ -1638,9 +1735,10 @@ struct tvcard bttv_tvcards[] = {
.no_msp34xx = 1, .no_msp34xx = 1,
.no_tda9875 = 1, .no_tda9875 = 1,
.no_tda7432 = 1, .no_tda7432 = 1,
},{ },
/* ---- card 0x58 ---------------------------------- */ /* ---- card 0x58 ---------------------------------- */
[BTTV_OSPREY2x0_SVID] = {
.name = "Osprey 200/250", /* 0x1(A|B)-00C4-C1 */ .name = "Osprey 200/250", /* 0x1(A|B)-00C4-C1 */
.video_inputs = 2, .video_inputs = 2,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -1653,7 +1751,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1653,7 +1751,8 @@ struct tvcard bttv_tvcards[] = {
.no_msp34xx = 1, .no_msp34xx = 1,
.no_tda9875 = 1, .no_tda9875 = 1,
.no_tda7432 = 1, .no_tda7432 = 1,
},{ },
[BTTV_OSPREY2x0] = {
.name = "Osprey 210/220", /* 0x1(A|B)-04C0-C1 */ .name = "Osprey 210/220", /* 0x1(A|B)-04C0-C1 */
.video_inputs = 2, .video_inputs = 2,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -1666,7 +1765,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1666,7 +1765,8 @@ struct tvcard bttv_tvcards[] = {
.no_msp34xx = 1, .no_msp34xx = 1,
.no_tda9875 = 1, .no_tda9875 = 1,
.no_tda7432 = 1, .no_tda7432 = 1,
},{ },
[BTTV_OSPREY500] = {
.name = "Osprey 500", /* 500 */ .name = "Osprey 500", /* 500 */
.video_inputs = 2, .video_inputs = 2,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -1679,20 +1779,31 @@ struct tvcard bttv_tvcards[] = { ...@@ -1679,20 +1779,31 @@ struct tvcard bttv_tvcards[] = {
.no_msp34xx = 1, .no_msp34xx = 1,
.no_tda9875 = 1, .no_tda9875 = 1,
.no_tda7432 = 1, .no_tda7432 = 1,
},{ },
[BTTV_OSPREY540] = {
.name = "Osprey 540", /* 540 */ .name = "Osprey 540", /* 540 */
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 1, .audio_inputs = 1,
.tuner = -1, .tuner = -1,
#if 0 /* TODO ... */
.svhs = OSPREY540_SVID_ANALOG,
.muxsel = { [OSPREY540_COMP_ANALOG] = 2,
[OSPREY540_SVID_ANALOG] = 3, },
#endif
.pll = PLL_28, .pll = PLL_28,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.no_msp34xx = 1, .no_msp34xx = 1,
.no_tda9875 = 1, .no_tda9875 = 1,
.no_tda7432 = 1, .no_tda7432 = 1,
},{ #if 0 /* TODO ... */
.muxsel_hook = osprey_540_muxsel,
.picture_hook = osprey_540_set_picture,
#endif
},
/* ---- card 0x5C ---------------------------------- */ /* ---- card 0x5C ---------------------------------- */
[BTTV_OSPREY2000] = {
.name = "Osprey 2000", /* 2000 */ .name = "Osprey 2000", /* 2000 */
.video_inputs = 2, .video_inputs = 2,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -1705,7 +1816,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1705,7 +1816,8 @@ struct tvcard bttv_tvcards[] = {
.no_msp34xx = 1, .no_msp34xx = 1,
.no_tda9875 = 1, .no_tda9875 = 1,
.no_tda7432 = 1, /* must avoid, conflicts with the bt860 */ .no_tda7432 = 1, /* must avoid, conflicts with the bt860 */
},{ },
[BTTV_IDS_EAGLE] = {
/* M G Berberich <berberic@forwiss.uni-passau.de> */ /* M G Berberich <berberic@forwiss.uni-passau.de> */
.name = "IDS Eagle", .name = "IDS Eagle",
.video_inputs = 4, .video_inputs = 4,
...@@ -1720,7 +1832,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1720,7 +1832,8 @@ struct tvcard bttv_tvcards[] = {
.no_msp34xx = 1, .no_msp34xx = 1,
.no_tda9875 = 1, .no_tda9875 = 1,
.pll = PLL_28, .pll = PLL_28,
},{ },
[BTTV_PINNACLESAT] = {
.name = "Pinnacle PCTV Sat", .name = "Pinnacle PCTV Sat",
.video_inputs = 2, .video_inputs = 2,
.audio_inputs = 0, .audio_inputs = 0,
...@@ -1735,7 +1848,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1735,7 +1848,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.no_gpioirq = 1, .no_gpioirq = 1,
.has_dvb = 1, .has_dvb = 1,
},{ },
[BTTV_FORMAC_PROTV] = {
.name = "Formac ProTV II (bt878)", .name = "Formac ProTV II (bt878)",
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -1749,16 +1863,17 @@ struct tvcard bttv_tvcards[] = { ...@@ -1749,16 +1863,17 @@ struct tvcard bttv_tvcards[] = {
.has_radio = 1, .has_radio = 1,
.tuner_type = TUNER_PHILIPS_PAL, .tuner_type = TUNER_PHILIPS_PAL,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
/* sound routing: /* sound routing:
GPIO=0x00,0x01,0x03: mute (?) GPIO=0x00,0x01,0x03: mute (?)
0x02: both TV and radio (tuner: FM1216/I) 0x02: both TV and radio (tuner: FM1216/I)
The card has onboard audio connectors labeled "cdrom" and "board", The card has onboard audio connectors labeled "cdrom" and "board",
not soldered here, though unknown wiring. not soldered here, though unknown wiring.
Card lacks: external audio in, pci subsystem id. Card lacks: external audio in, pci subsystem id.
*/ */
},{ },
/* ---- card 0x60 ---------------------------------- */ /* ---- card 0x60 ---------------------------------- */
[BTTV_MACHTV] = {
.name = "MachTV", .name = "MachTV",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -1771,7 +1886,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1771,7 +1886,8 @@ struct tvcard bttv_tvcards[] = {
.tuner_type = 5, .tuner_type = 5,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.pll = 1, .pll = 1,
},{ },
[BTTV_EURESYS_PICOLO] = {
.name = "Euresys Picolo", .name = "Euresys Picolo",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 0, .audio_inputs = 0,
...@@ -1785,7 +1901,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1785,7 +1901,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = UNSET, .tuner_type = UNSET,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_PV150] = {
/* Luc Van Hoeylandt <luc@e-magic.be> */ /* Luc Van Hoeylandt <luc@e-magic.be> */
.name = "ProVideo PV150", /* 0x4f */ .name = "ProVideo PV150", /* 0x4f */
.video_inputs = 2, .video_inputs = 2,
...@@ -1800,7 +1917,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1800,7 +1917,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = UNSET, .tuner_type = UNSET,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_AD_TVK503] = {
/* Hiroshi Takekawa <sian@big.or.jp> */ /* Hiroshi Takekawa <sian@big.or.jp> */
/* This card lacks subsystem ID */ /* This card lacks subsystem ID */
.name = "AD-TVK503", /* 0x63 */ .name = "AD-TVK503", /* 0x63 */
...@@ -1818,9 +1936,10 @@ struct tvcard bttv_tvcards[] = { ...@@ -1818,9 +1936,10 @@ struct tvcard bttv_tvcards[] = {
.tuner_type = 2, .tuner_type = 2,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.audio_hook = adtvk503_audio, .audio_hook = adtvk503_audio,
},{ },
/* ---- card 0x64 ---------------------------------- */ /* ---- card 0x64 ---------------------------------- */
[BTTV_HERCULES_SM_TV] = {
.name = "Hercules Smart TV Stereo", .name = "Hercules Smart TV Stereo",
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -1842,7 +1961,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1842,7 +1961,8 @@ struct tvcard bttv_tvcards[] = {
- Other chips: em78p156elp @ 0x96 (probably IR remote control) - Other chips: em78p156elp @ 0x96 (probably IR remote control)
hef4053 (instead 4052) for unknown function hef4053 (instead 4052) for unknown function
*/ */
},{ },
[BTTV_PACETV] = {
.name = "Pace TV & Radio Card", .name = "Pace TV & Radio Card",
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -1862,7 +1982,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1862,7 +1982,8 @@ struct tvcard bttv_tvcards[] = {
/* /*
.digital_mode = DIGITAL_MODE_CAMERA, todo! .digital_mode = DIGITAL_MODE_CAMERA, todo!
*/ */
},{ },
[BTTV_IVC200] = {
/* Chris Willing <chris@vislab.usyd.edu.au> */ /* Chris Willing <chris@vislab.usyd.edu.au> */
.name = "IVC-200", .name = "IVC-200",
.video_inputs = 1, .video_inputs = 1,
...@@ -1874,7 +1995,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1874,7 +1995,8 @@ struct tvcard bttv_tvcards[] = {
.gpiomask = 0xdf, .gpiomask = 0xdf,
.muxsel = { 2 }, .muxsel = { 2 },
.pll = PLL_28, .pll = PLL_28,
},{ },
[BTTV_XGUARD] = {
.name = "Grand X-Guard / Trust 814PCI", .name = "Grand X-Guard / Trust 814PCI",
.video_inputs = 16, .video_inputs = 16,
.audio_inputs = 0, .audio_inputs = 0,
...@@ -1889,9 +2011,10 @@ struct tvcard bttv_tvcards[] = { ...@@ -1889,9 +2011,10 @@ struct tvcard bttv_tvcards[] = {
.no_tda9875 = 1, .no_tda9875 = 1,
.no_tda7432 = 1, .no_tda7432 = 1,
.pll = PLL_28, .pll = PLL_28,
},{ },
/* ---- card 0x68 ---------------------------------- */ /* ---- card 0x68 ---------------------------------- */
[BTTV_NEBULA_DIGITV] = {
.name = "Nebula Electronics DigiTV", .name = "Nebula Electronics DigiTV",
.video_inputs = 1, .video_inputs = 1,
.tuner = -1, .tuner = -1,
...@@ -1905,7 +2028,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1905,7 +2028,8 @@ struct tvcard bttv_tvcards[] = {
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.has_dvb = 1, .has_dvb = 1,
.no_gpioirq = 1, .no_gpioirq = 1,
},{ },
[BTTV_PV143] = {
/* Jorge Boncompte - DTI2 <jorge@dti2.net> */ /* Jorge Boncompte - DTI2 <jorge@dti2.net> */
.name = "ProVideo PV143", .name = "ProVideo PV143",
.video_inputs = 4, .video_inputs = 4,
...@@ -1920,7 +2044,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1920,7 +2044,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_VD009X1_MINIDIN] = {
/* M.Klahr@phytec.de */ /* M.Klahr@phytec.de */
.name = "PHYTEC VD-009-X1 MiniDIN (bt878)", .name = "PHYTEC VD-009-X1 MiniDIN (bt878)",
.video_inputs = 4, .video_inputs = 4,
...@@ -1934,7 +2059,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1934,7 +2059,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_VD009X1_COMBI] = {
.name = "PHYTEC VD-009-X1 Combi (bt878)", .name = "PHYTEC VD-009-X1 Combi (bt878)",
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 0, .audio_inputs = 0,
...@@ -1947,9 +2073,10 @@ struct tvcard bttv_tvcards[] = { ...@@ -1947,9 +2073,10 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
/* ---- card 0x6c ---------------------------------- */ /* ---- card 0x6c ---------------------------------- */
[BTTV_VD009_MINIDIN] = {
.name = "PHYTEC VD-009 MiniDIN (bt878)", .name = "PHYTEC VD-009 MiniDIN (bt878)",
.video_inputs = 10, .video_inputs = 10,
.audio_inputs = 0, .audio_inputs = 0,
...@@ -1965,7 +2092,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1965,7 +2092,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_VD009_COMBI] = {
.name = "PHYTEC VD-009 Combi (bt878)", .name = "PHYTEC VD-009 Combi (bt878)",
.video_inputs = 10, .video_inputs = 10,
.audio_inputs = 0, .audio_inputs = 0,
...@@ -1981,7 +2109,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1981,7 +2109,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_IVC100] = {
.name = "IVC-100", .name = "IVC-100",
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 0, .audio_inputs = 0,
...@@ -1992,7 +2121,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -1992,7 +2121,8 @@ struct tvcard bttv_tvcards[] = {
.gpiomask = 0xdf, .gpiomask = 0xdf,
.muxsel = { 2, 3, 1, 0 }, .muxsel = { 2, 3, 1, 0 },
.pll = PLL_28, .pll = PLL_28,
},{ },
[BTTV_IVC120] = {
/* IVC-120G - Alan Garfield <alan@fromorbit.com> */ /* IVC-120G - Alan Garfield <alan@fromorbit.com> */
.name = "IVC-120G", .name = "IVC-120G",
.video_inputs = 16, .video_inputs = 16,
...@@ -2010,9 +2140,10 @@ struct tvcard bttv_tvcards[] = { ...@@ -2010,9 +2140,10 @@ struct tvcard bttv_tvcards[] = {
0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10 }, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10 },
.muxsel_hook = ivc120_muxsel, .muxsel_hook = ivc120_muxsel,
.pll = PLL_28, .pll = PLL_28,
},{ },
/* ---- card 0x70 ---------------------------------- */ /* ---- card 0x70 ---------------------------------- */
[BTTV_PC_HDTV] = {
.name = "pcHDTV HD-2000 TV", .name = "pcHDTV HD-2000 TV",
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -2022,7 +2153,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -2022,7 +2153,8 @@ struct tvcard bttv_tvcards[] = {
.tuner_type = TUNER_PHILIPS_ATSC, .tuner_type = TUNER_PHILIPS_ATSC,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.has_dvb = 1, .has_dvb = 1,
},{ },
[BTTV_TWINHAN_DST] = {
.name = "Twinhan DST + clones", .name = "Twinhan DST + clones",
.no_msp34xx = 1, .no_msp34xx = 1,
.no_tda9875 = 1, .no_tda9875 = 1,
...@@ -2031,7 +2163,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -2031,7 +2163,8 @@ struct tvcard bttv_tvcards[] = {
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.no_video = 1, .no_video = 1,
.has_dvb = 1, .has_dvb = 1,
},{ },
[BTTV_WINFASTVC100] = {
.name = "Winfast VC100", .name = "Winfast VC100",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 0, .audio_inputs = 0,
...@@ -2044,7 +2177,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -2044,7 +2177,8 @@ struct tvcard bttv_tvcards[] = {
.tuner_type = TUNER_ABSENT, .tuner_type = TUNER_ABSENT,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.pll = PLL_28, .pll = PLL_28,
},{ },
[BTTV_TEV560] = {
.name = "Teppro TEV-560/InterVision IV-560", .name = "Teppro TEV-560/InterVision IV-560",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -2057,9 +2191,10 @@ struct tvcard bttv_tvcards[] = { ...@@ -2057,9 +2191,10 @@ struct tvcard bttv_tvcards[] = {
.tuner_type = TUNER_PHILIPS_PAL, .tuner_type = TUNER_PHILIPS_PAL,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.pll = PLL_35, .pll = PLL_35,
},{ },
/* ---- card 0x74 ---------------------------------- */ /* ---- card 0x74 ---------------------------------- */
[BTTV_SIMUS_GVC1100] = {
.name = "SIMUS GVC1100", .name = "SIMUS GVC1100",
.video_inputs = 4, .video_inputs = 4,
.audio_inputs = 0, .audio_inputs = 0,
...@@ -2071,7 +2206,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -2071,7 +2206,8 @@ struct tvcard bttv_tvcards[] = {
.muxsel = { 2, 2, 2, 2}, .muxsel = { 2, 2, 2, 2},
.gpiomask = 0x3F, .gpiomask = 0x3F,
.muxsel_hook = gvc1100_muxsel, .muxsel_hook = gvc1100_muxsel,
},{ },
[BTTV_NGSTV_PLUS] = {
/* Carlos Silva r3pek@r3pek.homelinux.org || card 0x75 */ /* Carlos Silva r3pek@r3pek.homelinux.org || card 0x75 */
.name = "NGS NGSTV+", .name = "NGS NGSTV+",
.video_inputs = 3, .video_inputs = 3,
...@@ -2084,7 +2220,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -2084,7 +2220,8 @@ struct tvcard bttv_tvcards[] = {
.tuner_type = TUNER_PHILIPS_PAL, .tuner_type = TUNER_PHILIPS_PAL,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.has_remote = 1, .has_remote = 1,
},{ },
[BTTV_LMLBT4] = {
/* http://linuxmedialabs.com */ /* http://linuxmedialabs.com */
.name = "LMLBT4", .name = "LMLBT4",
.video_inputs = 4, /* IN1,IN2,IN3,IN4 */ .video_inputs = 4, /* IN1,IN2,IN3,IN4 */
...@@ -2098,7 +2235,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -2098,7 +2235,8 @@ struct tvcard bttv_tvcards[] = {
.needs_tvaudio = 0, .needs_tvaudio = 0,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_TEKRAM_M205] = {
/* Helmroos Harri <harri.helmroos@pp.inet.fi> */ /* Helmroos Harri <harri.helmroos@pp.inet.fi> */
.name = "Tekram M205 PRO", .name = "Tekram M205 PRO",
.video_inputs = 3, .video_inputs = 3,
...@@ -2112,9 +2250,10 @@ struct tvcard bttv_tvcards[] = { ...@@ -2112,9 +2250,10 @@ struct tvcard bttv_tvcards[] = {
.muxsel = { 2, 3, 1}, .muxsel = { 2, 3, 1},
.audiomux = { 0x68, 0x68, 0x61, 0x61, 0x00 }, .audiomux = { 0x68, 0x68, 0x61, 0x61, 0x00 },
.pll = PLL_28, .pll = PLL_28,
},{ },
/* ---- card 0x78 ---------------------------------- */ /* ---- card 0x78 ---------------------------------- */
[BTTV_CONTVFMI] = {
/* Javier Cendan Ares <jcendan@lycos.es> */ /* Javier Cendan Ares <jcendan@lycos.es> */
/* bt878 TV + FM without subsystem ID */ /* bt878 TV + FM without subsystem ID */
.name = "Conceptronic CONTVFMi", .name = "Conceptronic CONTVFMi",
...@@ -2131,7 +2270,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -2131,7 +2270,8 @@ struct tvcard bttv_tvcards[] = {
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.has_remote = 1, .has_remote = 1,
.has_radio = 1, .has_radio = 1,
},{ },
[BTTV_PICOLO_TETRA_CHIP] = {
/*Eric DEBIEF <debief@telemsa.com>*/ /*Eric DEBIEF <debief@telemsa.com>*/
/*EURESYS Picolo Tetra : 4 Conexant Fusion 878A, no audio, video input set with analog multiplexers GPIO controled*/ /*EURESYS Picolo Tetra : 4 Conexant Fusion 878A, no audio, video input set with analog multiplexers GPIO controled*/
/* adds picolo_tetra_muxsel(), picolo_tetra_init(), the folowing declaration strucure, and #define BTTV_PICOLO_TETRA_CHIP*/ /* adds picolo_tetra_muxsel(), picolo_tetra_init(), the folowing declaration strucure, and #define BTTV_PICOLO_TETRA_CHIP*/
...@@ -2153,7 +2293,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -2153,7 +2293,8 @@ struct tvcard bttv_tvcards[] = {
.muxsel_hook = picolo_tetra_muxsel,/*Required as it doesn't follow the classic input selection policy*/ .muxsel_hook = picolo_tetra_muxsel,/*Required as it doesn't follow the classic input selection policy*/
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_SPIRIT_TV] = {
/* Spirit TV Tuner from http://spiritmodems.com.au */ /* Spirit TV Tuner from http://spiritmodems.com.au */
/* Stafford Goodsell <surge@goliath.homeunix.org> */ /* Stafford Goodsell <surge@goliath.homeunix.org> */
.name = "Spirit TV Tuner", .name = "Spirit TV Tuner",
...@@ -2168,7 +2309,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -2168,7 +2309,8 @@ struct tvcard bttv_tvcards[] = {
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.no_msp34xx = 1, .no_msp34xx = 1,
.no_tda9875 = 1, .no_tda9875 = 1,
},{ },
[BTTV_AVDVBT_771] = {
/* Wolfram Joost <wojo@frokaschwei.de> */ /* Wolfram Joost <wojo@frokaschwei.de> */
.name = "AVerMedia AVerTV DVB-T 771", .name = "AVerMedia AVerTV DVB-T 771",
.video_inputs = 2, .video_inputs = 2,
...@@ -2184,8 +2326,9 @@ struct tvcard bttv_tvcards[] = { ...@@ -2184,8 +2326,9 @@ struct tvcard bttv_tvcards[] = {
.has_dvb = 1, .has_dvb = 1,
.no_gpioirq = 1, .no_gpioirq = 1,
.has_remote = 1, .has_remote = 1,
},{ },
/* ---- card 0x7c ---------------------------------- */ /* ---- card 0x7c ---------------------------------- */
[BTTV_AVDVBT_761] = {
/* Matt Jesson <dvb@jesson.eclipse.co.uk> */ /* Matt Jesson <dvb@jesson.eclipse.co.uk> */
/* Based on the Nebula card data - added remote and new card number - BTTV_AVDVBT_761, see also ir-kbd-gpio.c */ /* Based on the Nebula card data - added remote and new card number - BTTV_AVDVBT_761, see also ir-kbd-gpio.c */
.name = "AverMedia AverTV DVB-T 761", .name = "AverMedia AverTV DVB-T 761",
...@@ -2202,7 +2345,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -2202,7 +2345,8 @@ struct tvcard bttv_tvcards[] = {
.has_dvb = 1, .has_dvb = 1,
.no_gpioirq = 1, .no_gpioirq = 1,
.has_remote = 1, .has_remote = 1,
},{ },
[BTTV_MATRIX_VISIONSQ] = {
/* andre.schwarz@matrix-vision.de */ /* andre.schwarz@matrix-vision.de */
.name = "MATRIX Vision Sigma-SQ", .name = "MATRIX Vision Sigma-SQ",
.video_inputs = 16, .video_inputs = 16,
...@@ -2218,7 +2362,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -2218,7 +2362,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_MATRIX_VISIONSLC] = {
/* andre.schwarz@matrix-vision.de */ /* andre.schwarz@matrix-vision.de */
.name = "MATRIX Vision Sigma-SLC", .name = "MATRIX Vision Sigma-SLC",
.video_inputs = 4, .video_inputs = 4,
...@@ -2233,8 +2378,9 @@ struct tvcard bttv_tvcards[] = { ...@@ -2233,8 +2378,9 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
/* BTTV_APAC_VIEWCOMP */ /* BTTV_APAC_VIEWCOMP */
[BTTV_APAC_VIEWCOMP] = {
/* Attila Kondoros <attila.kondoros@chello.hu> */ /* Attila Kondoros <attila.kondoros@chello.hu> */
/* bt878 TV + FM 0x00000000 subsystem ID */ /* bt878 TV + FM 0x00000000 subsystem ID */
.name = "APAC Viewcomp 878(AMAX)", .name = "APAC Viewcomp 878(AMAX)",
...@@ -2251,9 +2397,10 @@ struct tvcard bttv_tvcards[] = { ...@@ -2251,9 +2397,10 @@ struct tvcard bttv_tvcards[] = {
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.has_remote = 1, /* miniremote works, see ir-kbd-gpio.c */ .has_remote = 1, /* miniremote works, see ir-kbd-gpio.c */
.has_radio = 1, /* not every card has radio */ .has_radio = 1, /* not every card has radio */
},{ },
/* ---- card 0x80 ---------------------------------- */ /* ---- card 0x80 ---------------------------------- */
[BTTV_DVICO_DVBT_LITE] = {
/* Chris Pascoe <c.pascoe@itee.uq.edu.au> */ /* Chris Pascoe <c.pascoe@itee.uq.edu.au> */
.name = "DViCO FusionHDTV DVB-T Lite", .name = "DViCO FusionHDTV DVB-T Lite",
.tuner = -1, .tuner = -1,
...@@ -2265,7 +2412,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -2265,7 +2412,8 @@ struct tvcard bttv_tvcards[] = {
.has_dvb = 1, .has_dvb = 1,
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
},{ },
[BTTV_VGEAR_MYVCD] = {
/* Steven <photon38@pchome.com.tw> */ /* Steven <photon38@pchome.com.tw> */
.name = "V-Gear MyVCD", .name = "V-Gear MyVCD",
.video_inputs = 3, .video_inputs = 3,
...@@ -2280,7 +2428,11 @@ struct tvcard bttv_tvcards[] = { ...@@ -2280,7 +2428,11 @@ struct tvcard bttv_tvcards[] = {
.tuner_type = TUNER_PHILIPS_NTSC_M, .tuner_type = TUNER_PHILIPS_NTSC_M,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.has_radio = 0, .has_radio = 0,
},{ #if 0
.has_remote = 1,
#endif
},
[BTTV_SUPER_TV] = {
/* Rick C <cryptdragoon@gmail.com> */ /* Rick C <cryptdragoon@gmail.com> */
.name = "Super TV Tuner", .name = "Super TV Tuner",
.video_inputs = 4, .video_inputs = 4,
...@@ -2294,7 +2446,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -2294,7 +2446,8 @@ struct tvcard bttv_tvcards[] = {
.audiomux = { 0, 0x000001,0,0, 0}, .audiomux = { 0, 0x000001,0,0, 0},
.needs_tvaudio = 1, .needs_tvaudio = 1,
.has_radio = 1, .has_radio = 1,
},{ },
[BTTV_TIBET_CS16] = {
/* Chris Fanning <video4linux@haydon.net> */ /* Chris Fanning <video4linux@haydon.net> */
.name = "Tibet Systems 'Progress DVR' CS16", .name = "Tibet Systems 'Progress DVR' CS16",
.video_inputs = 16, .video_inputs = 16,
...@@ -2309,8 +2462,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -2309,8 +2462,8 @@ struct tvcard bttv_tvcards[] = {
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.muxsel_hook = tibetCS16_muxsel, .muxsel_hook = tibetCS16_muxsel,
}, },
{ {
/* Bill Brack <wbrack@mmm.com.hk> */ /* Bill Brack <wbrack@mmm.com.hk> */
/* /*
* Note that, because of the card's wiring, the "master" * Note that, because of the card's wiring, the "master"
...@@ -2345,8 +2498,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -2345,8 +2498,8 @@ struct tvcard bttv_tvcards[] = {
.no_tda7432 = 1, .no_tda7432 = 1,
.no_tda9875 = 1, .no_tda9875 = 1,
.muxsel_hook = kodicom4400r_muxsel, .muxsel_hook = kodicom4400r_muxsel,
}, },
{ {
/* Bill Brack <wbrack@mmm.com.hk> */ /* Bill Brack <wbrack@mmm.com.hk> */
/* Note that, for reasons unknown, the "master" BT878A chip (i.e. the /* Note that, for reasons unknown, the "master" BT878A chip (i.e. the
* one which controls the analog switch, and must use the card type) * one which controls the analog switch, and must use the card type)
...@@ -2368,8 +2521,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -2368,8 +2521,8 @@ struct tvcard bttv_tvcards[] = {
.no_tda7432 = 1, .no_tda7432 = 1,
.no_tda9875 = 1, .no_tda9875 = 1,
.muxsel_hook = kodicom4400r_muxsel, .muxsel_hook = kodicom4400r_muxsel,
}, },
{ {
/* ---- card 0x86---------------------------------- */ /* ---- card 0x86---------------------------------- */
/* Michael Henson <mhenson@clarityvi.com> */ /* Michael Henson <mhenson@clarityvi.com> */
/* Adlink RTV24 with special unlock codes */ /* Adlink RTV24 with special unlock codes */
...@@ -2382,26 +2535,27 @@ struct tvcard bttv_tvcards[] = { ...@@ -2382,26 +2535,27 @@ struct tvcard bttv_tvcards[] = {
.tuner_type = -1, .tuner_type = -1,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.pll = PLL_28, .pll = PLL_28,
}, },
{ {
/* ---- card 0x87---------------------------------- */ /* ---- card 0x87---------------------------------- */
/* Michael Krufky <mkrufky@m1k.net> */ /* Michael Krufky <mkrufky@m1k.net> */
.name = "DViCO FusionHDTV 5 Lite", .name = "DViCO FusionHDTV 5 Lite",
.tuner = 0, .tuner = 0,
.tuner_type = TUNER_LG_TDVS_H062F, .tuner_type = TUNER_LG_TDVS_H062F,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.video_inputs = 3, .video_inputs = 2,
.audio_inputs = 1, .audio_inputs = 1,
.svhs = 2, .svhs = 2,
.muxsel = { 2, 3, 1 }, .muxsel = { 2, 3 },
.gpiomask = 0x00e00007, .gpiomask = 0x00e00007,
.audiomux = { 0x00400005, 0, 0x00000001, 0, 0x00c00007, 0 }, .audiomux = { 0x00400005, 0, 0x00000001, 0, 0x00c00007, 0 },
.no_msp34xx = 1, .no_msp34xx = 1,
.no_tda9875 = 1, .no_tda9875 = 1,
.no_tda7432 = 1, .no_tda7432 = 1,
.has_dvb = 1, .has_dvb = 1,
},{ },
/* ---- card 0x88---------------------------------- */ /* ---- card 0x88---------------------------------- */
[BTTV_KODICOM_4400R] = {
/* Mauro Carvalho Chehab <mchehab@brturbo.com.br> */ /* Mauro Carvalho Chehab <mchehab@brturbo.com.br> */
.name = "Acorp Y878F", .name = "Acorp Y878F",
.video_inputs = 3, .video_inputs = 3,
...@@ -2416,8 +2570,9 @@ struct tvcard bttv_tvcards[] = { ...@@ -2416,8 +2570,9 @@ struct tvcard bttv_tvcards[] = {
.tuner_type = TUNER_YMEC_TVF66T5_B_DFF, .tuner_type = TUNER_YMEC_TVF66T5_B_DFF,
.tuner_addr = 0xc1 >>1, .tuner_addr = 0xc1 >>1,
.has_radio = 1, .has_radio = 1,
},{ },
/* ---- card 0x89 ---------------------------------- */ /* ---- card 0x89 ---------------------------------- */
[BTTV_KODICOM_4400R_SL] = {
.name = "Conceptronic CTVFMi v2", .name = "Conceptronic CTVFMi v2",
.video_inputs = 3, .video_inputs = 3,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -2431,7 +2586,11 @@ struct tvcard bttv_tvcards[] = { ...@@ -2431,7 +2586,11 @@ struct tvcard bttv_tvcards[] = {
.tuner_type = TUNER_PHILIPS_FM1216ME_MK3, .tuner_type = TUNER_PHILIPS_FM1216ME_MK3,
.tuner_addr = ADDR_UNSET, .tuner_addr = ADDR_UNSET,
.has_remote = 1, .has_remote = 1,
},{ #if 0
.has_radio = 1,
#endif
},
[BTTV_ADLINK_RTV24] = {
.name = "Prolink Pixelview PV-BT878P+ (Rev.2E)", .name = "Prolink Pixelview PV-BT878P+ (Rev.2E)",
.video_inputs = 5, .video_inputs = 5,
.audio_inputs = 1, .audio_inputs = 1,
...@@ -2445,7 +2604,8 @@ struct tvcard bttv_tvcards[] = { ...@@ -2445,7 +2604,8 @@ struct tvcard bttv_tvcards[] = {
.pll = PLL_28, .pll = PLL_28,
.tuner_type = TUNER_LG_PAL_FM, .tuner_type = TUNER_LG_PAL_FM,
.has_remote = 1, .has_remote = 1,
}}; }
};
static const unsigned int bttv_num_tvcards = ARRAY_SIZE(bttv_tvcards); static const unsigned int bttv_num_tvcards = ARRAY_SIZE(bttv_tvcards);
...@@ -4513,8 +4673,7 @@ void __devinit bttv_check_chipset(void) ...@@ -4513,8 +4673,7 @@ void __devinit bttv_check_chipset(void)
} }
if (UNSET != latency) if (UNSET != latency)
printk(KERN_INFO "bttv: pci latency fixup [%d]\n",latency); printk(KERN_INFO "bttv: pci latency fixup [%d]\n",latency);
while ((dev = pci_get_device(PCI_VENDOR_ID_INTEL,
while ((dev = pci_find_device(PCI_VENDOR_ID_INTEL,
PCI_DEVICE_ID_INTEL_82441, dev))) { PCI_DEVICE_ID_INTEL_82441, dev))) {
unsigned char b; unsigned char b;
pci_read_config_byte(dev, 0x53, &b); pci_read_config_byte(dev, 0x53, &b);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment