diff options
Diffstat (limited to 'drivers/media/video/cx88/cx88-cards.c')
-rw-r--r-- | drivers/media/video/cx88/cx88-cards.c | 86 |
1 files changed, 54 insertions, 32 deletions
diff --git a/drivers/media/video/cx88/cx88-cards.c b/drivers/media/video/cx88/cx88-cards.c index f764a57c56be..c791708b1336 100644 --- a/drivers/media/video/cx88/cx88-cards.c +++ b/drivers/media/video/cx88/cx88-cards.c | |||
@@ -281,18 +281,22 @@ struct cx88_board cx88_boards[] = { | |||
281 | .type = CX88_VMUX_TELEVISION, | 281 | .type = CX88_VMUX_TELEVISION, |
282 | .vmux = 0, | 282 | .vmux = 0, |
283 | .gpio0 = 0x0000bde2, | 283 | .gpio0 = 0x0000bde2, |
284 | .extadc = 1, | ||
284 | },{ | 285 | },{ |
285 | .type = CX88_VMUX_COMPOSITE1, | 286 | .type = CX88_VMUX_COMPOSITE1, |
286 | .vmux = 1, | 287 | .vmux = 1, |
287 | .gpio0 = 0x0000bde6, | 288 | .gpio0 = 0x0000bde6, |
289 | .extadc = 1, | ||
288 | },{ | 290 | },{ |
289 | .type = CX88_VMUX_SVIDEO, | 291 | .type = CX88_VMUX_SVIDEO, |
290 | .vmux = 2, | 292 | .vmux = 2, |
291 | .gpio0 = 0x0000bde6, | 293 | .gpio0 = 0x0000bde6, |
294 | .extadc = 1, | ||
292 | }}, | 295 | }}, |
293 | .radio = { | 296 | .radio = { |
294 | .type = CX88_RADIO, | 297 | .type = CX88_RADIO, |
295 | .gpio0 = 0x0000bd62, | 298 | .gpio0 = 0x0000bd62, |
299 | .extadc = 1, | ||
296 | }, | 300 | }, |
297 | .mpeg = CX88_MPEG_BLACKBIRD, | 301 | .mpeg = CX88_MPEG_BLACKBIRD, |
298 | }, | 302 | }, |
@@ -353,6 +357,7 @@ struct cx88_board cx88_boards[] = { | |||
353 | .type = CX88_VMUX_SVIDEO, | 357 | .type = CX88_VMUX_SVIDEO, |
354 | .vmux = 2, | 358 | .vmux = 2, |
355 | .gpio0 = 0x0000fde6, // 0x0000fda6 L,R RCA audio in? | 359 | .gpio0 = 0x0000fde6, // 0x0000fda6 L,R RCA audio in? |
360 | .extadc = 1, | ||
356 | }}, | 361 | }}, |
357 | .radio = { | 362 | .radio = { |
358 | .type = CX88_RADIO, | 363 | .type = CX88_RADIO, |
@@ -523,6 +528,7 @@ struct cx88_board cx88_boards[] = { | |||
523 | .input = {{ | 528 | .input = {{ |
524 | .type = CX88_VMUX_TELEVISION, | 529 | .type = CX88_VMUX_TELEVISION, |
525 | .vmux = 0, | 530 | .vmux = 0, |
531 | .extadc = 1, | ||
526 | }}, | 532 | }}, |
527 | .mpeg = CX88_MPEG_BLACKBIRD, | 533 | .mpeg = CX88_MPEG_BLACKBIRD, |
528 | }, | 534 | }, |
@@ -646,18 +652,22 @@ struct cx88_board cx88_boards[] = { | |||
646 | .type = CX88_VMUX_TELEVISION, | 652 | .type = CX88_VMUX_TELEVISION, |
647 | .vmux = 0, | 653 | .vmux = 0, |
648 | .gpio0 = 0x00009d80, | 654 | .gpio0 = 0x00009d80, |
655 | .extadc = 1, | ||
649 | },{ | 656 | },{ |
650 | .type = CX88_VMUX_COMPOSITE1, | 657 | .type = CX88_VMUX_COMPOSITE1, |
651 | .vmux = 1, | 658 | .vmux = 1, |
652 | .gpio0 = 0x00009d76, | 659 | .gpio0 = 0x00009d76, |
660 | .extadc = 1, | ||
653 | },{ | 661 | },{ |
654 | .type = CX88_VMUX_SVIDEO, | 662 | .type = CX88_VMUX_SVIDEO, |
655 | .vmux = 2, | 663 | .vmux = 2, |
656 | .gpio0 = 0x00009d76, | 664 | .gpio0 = 0x00009d76, |
665 | .extadc = 1, | ||
657 | }}, | 666 | }}, |
658 | .radio = { | 667 | .radio = { |
659 | .type = CX88_RADIO, | 668 | .type = CX88_RADIO, |
660 | .gpio0 = 0x00009d00, | 669 | .gpio0 = 0x00009d00, |
670 | .extadc = 1, | ||
661 | }, | 671 | }, |
662 | .mpeg = CX88_MPEG_BLACKBIRD, | 672 | .mpeg = CX88_MPEG_BLACKBIRD, |
663 | }, | 673 | }, |
@@ -786,25 +796,29 @@ struct cx88_board cx88_boards[] = { | |||
786 | .tuner_addr = ADDR_UNSET, | 796 | .tuner_addr = ADDR_UNSET, |
787 | .radio_addr = ADDR_UNSET, | 797 | .radio_addr = ADDR_UNSET, |
788 | .tda9887_conf = TDA9887_PRESENT, | 798 | .tda9887_conf = TDA9887_PRESENT, |
789 | .mpeg = CX88_MPEG_BLACKBIRD, | ||
790 | .input = {{ | 799 | .input = {{ |
791 | .type = CX88_VMUX_COMPOSITE1, | 800 | .type = CX88_VMUX_COMPOSITE1, |
792 | .vmux = 0, | 801 | .vmux = 0, |
793 | .gpio0 = 0x0000cd73, | 802 | .gpio0 = 0x0000cd73, |
803 | .extadc = 1, | ||
794 | },{ | 804 | },{ |
795 | .type = CX88_VMUX_SVIDEO, | 805 | .type = CX88_VMUX_SVIDEO, |
796 | .vmux = 1, | 806 | .vmux = 1, |
797 | .gpio0 = 0x0000cd73, | 807 | .gpio0 = 0x0000cd73, |
808 | .extadc = 1, | ||
798 | },{ | 809 | },{ |
799 | .type = CX88_VMUX_TELEVISION, | 810 | .type = CX88_VMUX_TELEVISION, |
800 | .vmux = 3, | 811 | .vmux = 3, |
801 | .gpio0 = 0x0000cdb3, | 812 | .gpio0 = 0x0000cdb3, |
813 | .extadc = 1, | ||
802 | }}, | 814 | }}, |
803 | .radio = { | 815 | .radio = { |
804 | .type = CX88_RADIO, | 816 | .type = CX88_RADIO, |
805 | .vmux = 2, | 817 | .vmux = 2, |
806 | .gpio0 = 0x0000cdf3, | 818 | .gpio0 = 0x0000cdf3, |
819 | .extadc = 1, | ||
807 | }, | 820 | }, |
821 | .mpeg = CX88_MPEG_BLACKBIRD, | ||
808 | }, | 822 | }, |
809 | [CX88_BOARD_KWORLD_VSTREAM_EXPERT_DVD] = { | 823 | [CX88_BOARD_KWORLD_VSTREAM_EXPERT_DVD] = { |
810 | /* Alexander Wold <awold@bigfoot.com> */ | 824 | /* Alexander Wold <awold@bigfoot.com> */ |
@@ -1050,7 +1064,6 @@ struct cx88_board cx88_boards[] = { | |||
1050 | .mpeg = CX88_MPEG_DVB, | 1064 | .mpeg = CX88_MPEG_DVB, |
1051 | }, | 1065 | }, |
1052 | [CX88_BOARD_KWORLD_HARDWARE_MPEG_TV_XPERT] = { | 1066 | [CX88_BOARD_KWORLD_HARDWARE_MPEG_TV_XPERT] = { |
1053 | /* FIXME: Audio not working for s-video / composite inputs. */ | ||
1054 | .name = "KWorld HardwareMpegTV XPert", | 1067 | .name = "KWorld HardwareMpegTV XPert", |
1055 | .tuner_type = TUNER_PHILIPS_TDA8290, | 1068 | .tuner_type = TUNER_PHILIPS_TDA8290, |
1056 | .radio_type = UNSET, | 1069 | .radio_type = UNSET, |
@@ -1065,10 +1078,12 @@ struct cx88_board cx88_boards[] = { | |||
1065 | .type = CX88_VMUX_COMPOSITE1, | 1078 | .type = CX88_VMUX_COMPOSITE1, |
1066 | .vmux = 1, | 1079 | .vmux = 1, |
1067 | .gpio0 = 0x3de6, | 1080 | .gpio0 = 0x3de6, |
1081 | .extadc = 1, | ||
1068 | },{ | 1082 | },{ |
1069 | .type = CX88_VMUX_SVIDEO, | 1083 | .type = CX88_VMUX_SVIDEO, |
1070 | .vmux = 2, | 1084 | .vmux = 2, |
1071 | .gpio0 = 0x3de6, | 1085 | .gpio0 = 0x3de6, |
1086 | .extadc = 1, | ||
1072 | }}, | 1087 | }}, |
1073 | .radio = { | 1088 | .radio = { |
1074 | .type = CX88_RADIO, | 1089 | .type = CX88_RADIO, |
@@ -1252,35 +1267,35 @@ struct cx88_board cx88_boards[] = { | |||
1252 | .gpio0 = 0x070b, | 1267 | .gpio0 = 0x070b, |
1253 | }}, | 1268 | }}, |
1254 | }, | 1269 | }, |
1255 | [CX88_BOARD_TE_DTV_250_OEM_SWANN] = { | 1270 | [CX88_BOARD_TE_DTV_250_OEM_SWANN] = { |
1256 | .name = "Shenzhen Tungsten Ages Tech TE-DTV-250 / Swann OEM", | 1271 | .name = "Shenzhen Tungsten Ages Tech TE-DTV-250 / Swann OEM", |
1257 | .tuner_type = TUNER_LG_PAL_NEW_TAPC, | 1272 | .tuner_type = TUNER_LG_PAL_NEW_TAPC, |
1258 | .radio_type = UNSET, | 1273 | .radio_type = UNSET, |
1259 | .tuner_addr = ADDR_UNSET, | 1274 | .tuner_addr = ADDR_UNSET, |
1260 | .radio_addr = ADDR_UNSET, | 1275 | .radio_addr = ADDR_UNSET, |
1261 | .input = {{ | 1276 | .input = {{ |
1262 | .type = CX88_VMUX_TELEVISION, | 1277 | .type = CX88_VMUX_TELEVISION, |
1263 | .vmux = 0, | 1278 | .vmux = 0, |
1264 | .gpio0 = 0x003fffff, | 1279 | .gpio0 = 0x003fffff, |
1265 | .gpio1 = 0x00e00000, | 1280 | .gpio1 = 0x00e00000, |
1266 | .gpio2 = 0x003fffff, | 1281 | .gpio2 = 0x003fffff, |
1267 | .gpio3 = 0x02000000, | 1282 | .gpio3 = 0x02000000, |
1268 | },{ | 1283 | },{ |
1269 | .type = CX88_VMUX_COMPOSITE1, | 1284 | .type = CX88_VMUX_COMPOSITE1, |
1270 | .vmux = 1, | 1285 | .vmux = 1, |
1271 | .gpio0 = 0x003fffff, | 1286 | .gpio0 = 0x003fffff, |
1272 | .gpio1 = 0x00e00000, | 1287 | .gpio1 = 0x00e00000, |
1273 | .gpio2 = 0x003fffff, | 1288 | .gpio2 = 0x003fffff, |
1274 | .gpio3 = 0x02000000, | 1289 | .gpio3 = 0x02000000, |
1275 | },{ | 1290 | },{ |
1276 | .type = CX88_VMUX_SVIDEO, | 1291 | .type = CX88_VMUX_SVIDEO, |
1277 | .vmux = 2, | 1292 | .vmux = 2, |
1278 | .gpio0 = 0x003fffff, | 1293 | .gpio0 = 0x003fffff, |
1279 | .gpio1 = 0x00e00000, | 1294 | .gpio1 = 0x00e00000, |
1280 | .gpio2 = 0x003fffff, | 1295 | .gpio2 = 0x003fffff, |
1281 | .gpio3 = 0x02000000, | 1296 | .gpio3 = 0x02000000, |
1282 | }}, | 1297 | }}, |
1283 | }, | 1298 | }, |
1284 | [CX88_BOARD_HAUPPAUGE_HVR1300] = { | 1299 | [CX88_BOARD_HAUPPAUGE_HVR1300] = { |
1285 | .name = "Hauppauge WinTV-HVR1300 DVB-T/Hybrid MPEG Encoder", | 1300 | .name = "Hauppauge WinTV-HVR1300 DVB-T/Hybrid MPEG Encoder", |
1286 | .tuner_type = TUNER_PHILIPS_FMD1216ME_MK3, | 1301 | .tuner_type = TUNER_PHILIPS_FMD1216ME_MK3, |
@@ -1293,17 +1308,20 @@ struct cx88_board cx88_boards[] = { | |||
1293 | .type = CX88_VMUX_TELEVISION, | 1308 | .type = CX88_VMUX_TELEVISION, |
1294 | .vmux = 0, | 1309 | .vmux = 0, |
1295 | .gpio0 = 0xe780, | 1310 | .gpio0 = 0xe780, |
1311 | .extadc = 1, | ||
1296 | },{ | 1312 | },{ |
1297 | .type = CX88_VMUX_COMPOSITE1, | 1313 | .type = CX88_VMUX_COMPOSITE1, |
1298 | .vmux = 1, | 1314 | .vmux = 1, |
1299 | .gpio0 = 0xe780, | 1315 | .gpio0 = 0xe780, |
1316 | .extadc = 1, | ||
1300 | },{ | 1317 | },{ |
1301 | .type = CX88_VMUX_SVIDEO, | 1318 | .type = CX88_VMUX_SVIDEO, |
1302 | .vmux = 2, | 1319 | .vmux = 2, |
1303 | .gpio0 = 0xe780, | 1320 | .gpio0 = 0xe780, |
1321 | .extadc = 1, | ||
1304 | }}, | 1322 | }}, |
1305 | /* fixme: Add radio support */ | 1323 | /* fixme: Add radio support */ |
1306 | .mpeg = CX88_MPEG_DVB, | 1324 | .mpeg = CX88_MPEG_DVB | CX88_MPEG_BLACKBIRD, |
1307 | }, | 1325 | }, |
1308 | }; | 1326 | }; |
1309 | const unsigned int cx88_bcount = ARRAY_SIZE(cx88_boards); | 1327 | const unsigned int cx88_bcount = ARRAY_SIZE(cx88_boards); |
@@ -1513,6 +1531,10 @@ struct cx88_subid cx88_subids[] = { | |||
1513 | },{ | 1531 | },{ |
1514 | .subvendor = 0x17de, | 1532 | .subvendor = 0x17de, |
1515 | .subdevice = 0x0840, | 1533 | .subdevice = 0x0840, |
1534 | .card = CX88_BOARD_KWORLD_HARDWARE_MPEG_TV_XPERT, | ||
1535 | },{ | ||
1536 | .subvendor = 0x1421, | ||
1537 | .subdevice = 0x0305, | ||
1516 | .card = CX88_BOARD_KWORLD_HARDWARE_MPEG_TV_XPERT, | 1538 | .card = CX88_BOARD_KWORLD_HARDWARE_MPEG_TV_XPERT, |
1517 | },{ | 1539 | },{ |
1518 | .subvendor = 0x18ac, | 1540 | .subvendor = 0x18ac, |