aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/video/cx88/cx88-cards.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@g5.osdl.org>2006-06-25 13:09:31 -0400
committerLinus Torvalds <torvalds@g5.osdl.org>2006-06-25 13:09:31 -0400
commit25581ad107be24b89d805da51a03d616f8f3d1be (patch)
tree36e2bd32667b5dd5a39e1939c1c5162f18967715 /drivers/media/video/cx88/cx88-cards.c
parent72cf2709bf8e0410800f118c4298bfbf8715b303 (diff)
parent7477ddaa4d2d69bbcd49e12990af158dbb03f2f2 (diff)
Merge master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb
* master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb: (244 commits) V4L/DVB (4210b): git-dvb: tea575x-tuner build fix V4L/DVB (4210a): git-dvb versus matroxfb V4L/DVB (4209): Added some BTTV PCI IDs for newer boards Fixes some sync issues between V4L/DVB development and GIT V4L/DVB (4206): Cx88-blackbird: always set encoder height based on tvnorm->id V4L/DVB (4205): Merge tda9887 module into tuner. V4L/DVB (4203): Explicitly set the enum values. V4L/DVB (4202): allow selecting CX2341x port mode V4L/DVB (4200): Disable bitrate_mode when encoding mpeg-1. V4L/DVB (4199): Add cx2341x-specific control array to cx2341x.c V4L/DVB (4198): Avoid newer usages of obsoleted experimental MPEGCOMP API V4L/DVB (4197): Port new MPEG API to saa7134-empress with saa6752hs V4L/DVB (4196): Port cx88-blackbird to the new MPEG API. V4L/DVB (4193): Update cx2341x fw encoding API doc. V4L/DVB (4192): Use control helpers for saa7115, cx25840, msp3400. V4L/DVB (4191): Add CX2341X MPEG encoder module. V4L/DVB (4190): Add helper functions for control processing to v4l2-common. V4L/DVB (4189): Add videodev support for VIDIOC_S/G/TRY_EXT_CTRLS. V4L/DVB (4188): Add new MPEG control/ioctl definitions to videodev2.h V4L/DVB (4186): Add support for the DNTV Live! mini DVB-T card. ...
Diffstat (limited to 'drivers/media/video/cx88/cx88-cards.c')
-rw-r--r--drivers/media/video/cx88/cx88-cards.c150
1 files changed, 139 insertions, 11 deletions
diff --git a/drivers/media/video/cx88/cx88-cards.c b/drivers/media/video/cx88/cx88-cards.c
index f80154b87d22..67cdd8270863 100644
--- a/drivers/media/video/cx88/cx88-cards.c
+++ b/drivers/media/video/cx88/cx88-cards.c
@@ -114,7 +114,7 @@ struct cx88_board cx88_boards[] = {
114 .radio = { 114 .radio = {
115 .type = CX88_RADIO, 115 .type = CX88_RADIO,
116 .gpio0 = 0xff10, 116 .gpio0 = 0xff10,
117 }, 117 },
118 }, 118 },
119 [CX88_BOARD_ATI_WONDER_PRO] = { 119 [CX88_BOARD_ATI_WONDER_PRO] = {
120 .name = "ATI TV Wonder Pro", 120 .name = "ATI TV Wonder Pro",
@@ -267,7 +267,7 @@ struct cx88_board cx88_boards[] = {
267 .gpio1 = 0x00007004, 267 .gpio1 = 0x00007004,
268 .gpio2 = 0x0035d700, 268 .gpio2 = 0x0035d700,
269 .gpio3 = 0x02000000, 269 .gpio3 = 0x02000000,
270 }, 270 },
271 }, 271 },
272 [CX88_BOARD_LEADTEK_PVR2000] = { 272 [CX88_BOARD_LEADTEK_PVR2000] = {
273 // gpio values for PAL version from regspy by DScaler 273 // gpio values for PAL version from regspy by DScaler
@@ -413,7 +413,7 @@ struct cx88_board cx88_boards[] = {
413 .type = CX88_VMUX_COMPOSITE1, 413 .type = CX88_VMUX_COMPOSITE1,
414 .vmux = 1, 414 .vmux = 1,
415 .gpio0 = 0x000027df, 415 .gpio0 = 0x000027df,
416 },{ 416 },{
417 .type = CX88_VMUX_SVIDEO, 417 .type = CX88_VMUX_SVIDEO,
418 .vmux = 2, 418 .vmux = 2,
419 .gpio0 = 0x000027df, 419 .gpio0 = 0x000027df,
@@ -536,7 +536,7 @@ struct cx88_board cx88_boards[] = {
536 .type = CX88_VMUX_COMPOSITE1, 536 .type = CX88_VMUX_COMPOSITE1,
537 .vmux = 1, 537 .vmux = 1,
538 .gpio0 = 0x000027df, 538 .gpio0 = 0x000027df,
539 },{ 539 },{
540 .type = CX88_VMUX_SVIDEO, 540 .type = CX88_VMUX_SVIDEO,
541 .vmux = 2, 541 .vmux = 2,
542 .gpio0 = 0x000027df, 542 .gpio0 = 0x000027df,
@@ -759,7 +759,7 @@ struct cx88_board cx88_boards[] = {
759 }, 759 },
760 [CX88_BOARD_DVICO_FUSIONHDTV_5_GOLD] = { 760 [CX88_BOARD_DVICO_FUSIONHDTV_5_GOLD] = {
761 .name = "DViCO FusionHDTV 5 Gold", 761 .name = "DViCO FusionHDTV 5 Gold",
762 .tuner_type = TUNER_LG_TDVS_H062F, 762 .tuner_type = TUNER_LG_TDVS_H06XF, /* TDVS-H062F */
763 .radio_type = UNSET, 763 .radio_type = UNSET,
764 .tuner_addr = ADDR_UNSET, 764 .tuner_addr = ADDR_UNSET,
765 .radio_addr = ADDR_UNSET, 765 .radio_addr = ADDR_UNSET,
@@ -1050,11 +1050,7 @@ struct cx88_board cx88_boards[] = {
1050 .dvb = 1, 1050 .dvb = 1,
1051 }, 1051 },
1052 [CX88_BOARD_KWORLD_HARDWARE_MPEG_TV_XPERT] = { 1052 [CX88_BOARD_KWORLD_HARDWARE_MPEG_TV_XPERT] = {
1053 /* FIXME: Standard video using the cx88 broadcast decoder is 1053 /* FIXME: Audio not working for s-video / composite inputs. */
1054 * working, but blackbird isn't working yet, audio is only
1055 * working correctly for television mode. S-Video and Composite
1056 * are working for video-only, so I have them disabled for now.
1057 */
1058 .name = "KWorld HardwareMpegTV XPert", 1054 .name = "KWorld HardwareMpegTV XPert",
1059 .tuner_type = TUNER_PHILIPS_TDA8290, 1055 .tuner_type = TUNER_PHILIPS_TDA8290,
1060 .radio_type = UNSET, 1056 .radio_type = UNSET,
@@ -1065,12 +1061,21 @@ struct cx88_board cx88_boards[] = {
1065 .vmux = 0, 1061 .vmux = 0,
1066 .gpio0 = 0x3de2, 1062 .gpio0 = 0x3de2,
1067 .gpio2 = 0x00ff, 1063 .gpio2 = 0x00ff,
1064 },{
1065 .type = CX88_VMUX_COMPOSITE1,
1066 .vmux = 1,
1067 .gpio0 = 0x3de6,
1068 },{
1069 .type = CX88_VMUX_SVIDEO,
1070 .vmux = 2,
1071 .gpio0 = 0x3de6,
1068 }}, 1072 }},
1069 .radio = { 1073 .radio = {
1070 .type = CX88_RADIO, 1074 .type = CX88_RADIO,
1071 .gpio0 = 0x3de6, 1075 .gpio0 = 0x3de6,
1072 .gpio2 = 0x00ff, 1076 .gpio2 = 0x00ff,
1073 }, 1077 },
1078 .blackbird = 1,
1074 }, 1079 },
1075 [CX88_BOARD_DVICO_FUSIONHDTV_DVB_T_HYBRID] = { 1080 [CX88_BOARD_DVICO_FUSIONHDTV_DVB_T_HYBRID] = {
1076 .name = "DViCO FusionHDTV DVB-T Hybrid", 1081 .name = "DViCO FusionHDTV DVB-T Hybrid",
@@ -1093,7 +1098,102 @@ struct cx88_board cx88_boards[] = {
1093 }}, 1098 }},
1094 .dvb = 1, 1099 .dvb = 1,
1095 }, 1100 },
1096 1101 [CX88_BOARD_PCHDTV_HD5500] = {
1102 .name = "pcHDTV HD5500 HDTV",
1103 .tuner_type = TUNER_LG_TDVS_H06XF, /* TDVS-H064F */
1104 .radio_type = UNSET,
1105 .tuner_addr = ADDR_UNSET,
1106 .radio_addr = ADDR_UNSET,
1107 .tda9887_conf = TDA9887_PRESENT,
1108 .input = {{
1109 .type = CX88_VMUX_TELEVISION,
1110 .vmux = 0,
1111 .gpio0 = 0x87fd,
1112 },{
1113 .type = CX88_VMUX_COMPOSITE1,
1114 .vmux = 1,
1115 .gpio0 = 0x87f9,
1116 },{
1117 .type = CX88_VMUX_SVIDEO,
1118 .vmux = 2,
1119 .gpio0 = 0x87f9,
1120 }},
1121 .dvb = 1,
1122 },
1123 [CX88_BOARD_KWORLD_MCE200_DELUXE] = {
1124 /* FIXME: tested TV input only, disabled composite,
1125 svideo and radio until they can be tested also. */
1126 .name = "Kworld MCE 200 Deluxe",
1127 .tuner_type = TUNER_TENA_9533_DI,
1128 .radio_type = UNSET,
1129 .tda9887_conf = TDA9887_PRESENT,
1130 .tuner_addr = ADDR_UNSET,
1131 .radio_addr = ADDR_UNSET,
1132 .input = {{
1133 .type = CX88_VMUX_TELEVISION,
1134 .vmux = 0,
1135 .gpio0 = 0x0000BDE6
1136 }},
1137 .blackbird = 1,
1138 },
1139 [CX88_BOARD_PIXELVIEW_PLAYTV_P7000] = {
1140 /* FIXME: SVideo, Composite and FM inputs are untested */
1141 .name = "PixelView PlayTV P7000",
1142 .tuner_type = TUNER_PHILIPS_FM1216ME_MK3,
1143 .radio_type = UNSET,
1144 .tuner_addr = ADDR_UNSET,
1145 .radio_addr = ADDR_UNSET,
1146 .tda9887_conf = TDA9887_PRESENT | TDA9887_PORT1_ACTIVE |
1147 TDA9887_PORT2_ACTIVE,
1148 .input = {{
1149 .type = CX88_VMUX_TELEVISION,
1150 .vmux = 0,
1151 .gpio0 = 0x5da6,
1152 }},
1153 .blackbird = 1,
1154 },
1155 [CX88_BOARD_NPGTECH_REALTV_TOP10FM] = {
1156 .name = "NPG Tech Real TV FM Top 10",
1157 .tuner_type = TUNER_TNF_5335MF, /* Actually a TNF9535 */
1158 .radio_type = UNSET,
1159 .tuner_addr = ADDR_UNSET,
1160 .radio_addr = ADDR_UNSET,
1161 .input = {{
1162 .type = CX88_VMUX_TELEVISION,
1163 .vmux = 0,
1164 .gpio0 = 0x0788,
1165 },{
1166 .type = CX88_VMUX_COMPOSITE1,
1167 .vmux = 1,
1168 .gpio0 = 0x078b,
1169 },{
1170 .type = CX88_VMUX_SVIDEO,
1171 .vmux = 2,
1172 .gpio0 = 0x078b,
1173 }},
1174 .radio = {
1175 .type = CX88_RADIO,
1176 .gpio0 = 0x074a,
1177 },
1178 },
1179 [CX88_BOARD_WINFAST_DTV2000H] = {
1180 /* video inputs and radio still in testing */
1181 .name = "WinFast DTV2000 H",
1182 .tuner_type = TUNER_PHILIPS_FMD1216ME_MK3,
1183 .radio_type = UNSET,
1184 .tuner_addr = ADDR_UNSET,
1185 .radio_addr = ADDR_UNSET,
1186 .tda9887_conf = TDA9887_PRESENT,
1187 .input = {{
1188 .type = CX88_VMUX_TELEVISION,
1189 .vmux = 0,
1190 .gpio0 = 0x00017304,
1191 .gpio1 = 0x00008203,
1192 .gpio2 = 0x00017304,
1193 .gpio3 = 0x02000000,
1194 }},
1195 .dvb = 1,
1196 },
1097}; 1197};
1098const unsigned int cx88_bcount = ARRAY_SIZE(cx88_boards); 1198const unsigned int cx88_bcount = ARRAY_SIZE(cx88_boards);
1099 1199
@@ -1311,6 +1411,34 @@ struct cx88_subid cx88_subids[] = {
1311 .subvendor = 0x18ac, 1411 .subvendor = 0x18ac,
1312 .subdevice = 0xdb44, 1412 .subdevice = 0xdb44,
1313 .card = CX88_BOARD_DVICO_FUSIONHDTV_DVB_T_HYBRID, 1413 .card = CX88_BOARD_DVICO_FUSIONHDTV_DVB_T_HYBRID,
1414 },{
1415 .subvendor = 0x7063,
1416 .subdevice = 0x5500,
1417 .card = CX88_BOARD_PCHDTV_HD5500,
1418 },{
1419 .subvendor = 0x17de,
1420 .subdevice = 0x0841,
1421 .card = CX88_BOARD_KWORLD_MCE200_DELUXE,
1422 },{
1423 .subvendor = 0x1822,
1424 .subdevice = 0x0019,
1425 .card = CX88_BOARD_DNTV_LIVE_DVB_T_PRO,
1426 },{
1427 .subvendor = 0x1554,
1428 .subdevice = 0x4813,
1429 .card = CX88_BOARD_PIXELVIEW_PLAYTV_P7000,
1430 },{
1431 .subvendor = 0x14f1,
1432 .subdevice = 0x0842,
1433 .card = CX88_BOARD_NPGTECH_REALTV_TOP10FM,
1434 },{
1435 .subvendor = 0x107d,
1436 .subdevice = 0x665e,
1437 .card = CX88_BOARD_WINFAST_DTV2000H,
1438 },{
1439 .subvendor = 0x18ac,
1440 .subdevice = 0xd800, /* FusionHDTV 3 Gold (original revision) */
1441 .card = CX88_BOARD_DVICO_FUSIONHDTV_3_GOLD_Q,
1314 }, 1442 },
1315}; 1443};
1316const unsigned int cx88_idcount = ARRAY_SIZE(cx88_subids); 1444const unsigned int cx88_idcount = ARRAY_SIZE(cx88_subids);