diff options
author | Trent Piepho <xyzzy@speakeasy.org> | 2009-01-28 19:32:59 -0500 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2009-03-30 11:42:47 -0400 |
commit | 4c548d4b28c0c65938914b2790fd2ca2e9c61d63 (patch) | |
tree | 6ec0824e97063c13e7fa73f6d439aeba5e608d24 /drivers/media/video/bt8xx/bttv-cards.c | |
parent | abb0362f49c361f71b5aa6d244d4847145ed53c1 (diff) |
V4L/DVB (10561): bttv: store card database more efficiently
The bttv card database is quite large and the data structure used to store
it wasn't very efficient. Most of the field are only used at card
initialization time so it doesn't matter if they aren't efficient to
access.
Overall the changes reduce code size by 60 bytes in ia32. The data size is
decreased by 5024 byes. It is probably even more for 64-bit kernels.
Move the fields in the struct around to be sorted from largest to smallest.
This saves on padding space used for alignment.
Get rid of the unused digital_mode field. Leave the setting as a comment
in the few cards entries that set it, in case someone ever writes the code.
Get rid of the unused audio_inputs field. Leave the values in the card
entries in case someone ever writes code that might use it.
Get ride of the unused radio_addr field. No card entries even set it to
anything interesting so it's not left as comments. All the code that used
it was removed in commit v2.6.14-3466-g291d1d7 from Nov 8th 2005.
Reduce video_inputs to u8 as no card has more than 255 inputs (the most is
16).
Change tuner_addr to u8. I2C addresses are only seven bits and 255 means
ADDR_UNSET, so everything fits.
Make has_radio a one bit flag.
Make the pll setting a two bit field.
Reduce svhs to four bits as no card has an s-video input above 9. Change
the value for no s-video input from UNSET (which is -1U and out of range of
four bits) to NO_SVHS (which is now 15).
Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/bt8xx/bttv-cards.c')
-rw-r--r-- | drivers/media/video/bt8xx/bttv-cards.c | 626 |
1 files changed, 235 insertions, 391 deletions
diff --git a/drivers/media/video/bt8xx/bttv-cards.c b/drivers/media/video/bt8xx/bttv-cards.c index edf8d2505f0b..f49e6e686628 100644 --- a/drivers/media/video/bt8xx/bttv-cards.c +++ b/drivers/media/video/bt8xx/bttv-cards.c | |||
@@ -320,17 +320,15 @@ struct tvcard bttv_tvcards[] = { | |||
320 | [BTTV_BOARD_UNKNOWN] = { | 320 | [BTTV_BOARD_UNKNOWN] = { |
321 | .name = " *** UNKNOWN/GENERIC *** ", | 321 | .name = " *** UNKNOWN/GENERIC *** ", |
322 | .video_inputs = 4, | 322 | .video_inputs = 4, |
323 | .audio_inputs = 1, | ||
324 | .svhs = 2, | 323 | .svhs = 2, |
325 | .muxsel = { 2, 3, 1, 0 }, | 324 | .muxsel = { 2, 3, 1, 0 }, |
326 | .tuner_type = UNSET, | 325 | .tuner_type = UNSET, |
327 | .tuner_addr = ADDR_UNSET, | 326 | .tuner_addr = ADDR_UNSET, |
328 | .radio_addr = ADDR_UNSET, | ||
329 | }, | 327 | }, |
330 | [BTTV_BOARD_MIRO] = { | 328 | [BTTV_BOARD_MIRO] = { |
331 | .name = "MIRO PCTV", | 329 | .name = "MIRO PCTV", |
332 | .video_inputs = 4, | 330 | .video_inputs = 4, |
333 | .audio_inputs = 1, | 331 | /* .audio_inputs= 1, */ |
334 | .svhs = 2, | 332 | .svhs = 2, |
335 | .gpiomask = 15, | 333 | .gpiomask = 15, |
336 | .muxsel = { 2, 3, 1, 1 }, | 334 | .muxsel = { 2, 3, 1, 1 }, |
@@ -339,12 +337,11 @@ struct tvcard bttv_tvcards[] = { | |||
339 | .needs_tvaudio = 1, | 337 | .needs_tvaudio = 1, |
340 | .tuner_type = UNSET, | 338 | .tuner_type = UNSET, |
341 | .tuner_addr = ADDR_UNSET, | 339 | .tuner_addr = ADDR_UNSET, |
342 | .radio_addr = ADDR_UNSET, | ||
343 | }, | 340 | }, |
344 | [BTTV_BOARD_HAUPPAUGE] = { | 341 | [BTTV_BOARD_HAUPPAUGE] = { |
345 | .name = "Hauppauge (bt848)", | 342 | .name = "Hauppauge (bt848)", |
346 | .video_inputs = 4, | 343 | .video_inputs = 4, |
347 | .audio_inputs = 1, | 344 | /* .audio_inputs= 1, */ |
348 | .svhs = 2, | 345 | .svhs = 2, |
349 | .gpiomask = 7, | 346 | .gpiomask = 7, |
350 | .muxsel = { 2, 3, 1, 1 }, | 347 | .muxsel = { 2, 3, 1, 1 }, |
@@ -353,12 +350,11 @@ struct tvcard bttv_tvcards[] = { | |||
353 | .needs_tvaudio = 1, | 350 | .needs_tvaudio = 1, |
354 | .tuner_type = UNSET, | 351 | .tuner_type = UNSET, |
355 | .tuner_addr = ADDR_UNSET, | 352 | .tuner_addr = ADDR_UNSET, |
356 | .radio_addr = ADDR_UNSET, | ||
357 | }, | 353 | }, |
358 | [BTTV_BOARD_STB] = { | 354 | [BTTV_BOARD_STB] = { |
359 | .name = "STB, Gateway P/N 6000699 (bt848)", | 355 | .name = "STB, Gateway P/N 6000699 (bt848)", |
360 | .video_inputs = 3, | 356 | .video_inputs = 3, |
361 | .audio_inputs = 1, | 357 | /* .audio_inputs= 1, */ |
362 | .svhs = 2, | 358 | .svhs = 2, |
363 | .gpiomask = 7, | 359 | .gpiomask = 7, |
364 | .muxsel = { 2, 3, 1, 1 }, | 360 | .muxsel = { 2, 3, 1, 1 }, |
@@ -368,7 +364,6 @@ struct tvcard bttv_tvcards[] = { | |||
368 | .needs_tvaudio = 1, | 364 | .needs_tvaudio = 1, |
369 | .tuner_type = TUNER_PHILIPS_NTSC, | 365 | .tuner_type = TUNER_PHILIPS_NTSC, |
370 | .tuner_addr = ADDR_UNSET, | 366 | .tuner_addr = ADDR_UNSET, |
371 | .radio_addr = ADDR_UNSET, | ||
372 | .pll = PLL_28, | 367 | .pll = PLL_28, |
373 | .has_radio = 1, | 368 | .has_radio = 1, |
374 | }, | 369 | }, |
@@ -377,7 +372,7 @@ struct tvcard bttv_tvcards[] = { | |||
377 | [BTTV_BOARD_INTEL] = { | 372 | [BTTV_BOARD_INTEL] = { |
378 | .name = "Intel Create and Share PCI/ Smart Video Recorder III", | 373 | .name = "Intel Create and Share PCI/ Smart Video Recorder III", |
379 | .video_inputs = 4, | 374 | .video_inputs = 4, |
380 | .audio_inputs = 0, | 375 | /* .audio_inputs= 0, */ |
381 | .svhs = 2, | 376 | .svhs = 2, |
382 | .gpiomask = 0, | 377 | .gpiomask = 0, |
383 | .muxsel = { 2, 3, 1, 1 }, | 378 | .muxsel = { 2, 3, 1, 1 }, |
@@ -385,12 +380,11 @@ struct tvcard bttv_tvcards[] = { | |||
385 | .needs_tvaudio = 0, | 380 | .needs_tvaudio = 0, |
386 | .tuner_type = TUNER_ABSENT, | 381 | .tuner_type = TUNER_ABSENT, |
387 | .tuner_addr = ADDR_UNSET, | 382 | .tuner_addr = ADDR_UNSET, |
388 | .radio_addr = ADDR_UNSET, | ||
389 | }, | 383 | }, |
390 | [BTTV_BOARD_DIAMOND] = { | 384 | [BTTV_BOARD_DIAMOND] = { |
391 | .name = "Diamond DTV2000", | 385 | .name = "Diamond DTV2000", |
392 | .video_inputs = 4, | 386 | .video_inputs = 4, |
393 | .audio_inputs = 1, | 387 | /* .audio_inputs= 1, */ |
394 | .svhs = 2, | 388 | .svhs = 2, |
395 | .gpiomask = 3, | 389 | .gpiomask = 3, |
396 | .muxsel = { 2, 3, 1, 0 }, | 390 | .muxsel = { 2, 3, 1, 0 }, |
@@ -399,12 +393,11 @@ struct tvcard bttv_tvcards[] = { | |||
399 | .needs_tvaudio = 1, | 393 | .needs_tvaudio = 1, |
400 | .tuner_type = UNSET, | 394 | .tuner_type = UNSET, |
401 | .tuner_addr = ADDR_UNSET, | 395 | .tuner_addr = ADDR_UNSET, |
402 | .radio_addr = ADDR_UNSET, | ||
403 | }, | 396 | }, |
404 | [BTTV_BOARD_AVERMEDIA] = { | 397 | [BTTV_BOARD_AVERMEDIA] = { |
405 | .name = "AVerMedia TVPhone", | 398 | .name = "AVerMedia TVPhone", |
406 | .video_inputs = 3, | 399 | .video_inputs = 3, |
407 | .audio_inputs = 1, | 400 | /* .audio_inputs= 1, */ |
408 | .svhs = 3, | 401 | .svhs = 3, |
409 | .muxsel = { 2, 3, 1, 1 }, | 402 | .muxsel = { 2, 3, 1, 1 }, |
410 | .gpiomask = 0x0f, | 403 | .gpiomask = 0x0f, |
@@ -413,14 +406,13 @@ struct tvcard bttv_tvcards[] = { | |||
413 | .needs_tvaudio = 1, | 406 | .needs_tvaudio = 1, |
414 | .tuner_type = UNSET, | 407 | .tuner_type = UNSET, |
415 | .tuner_addr = ADDR_UNSET, | 408 | .tuner_addr = ADDR_UNSET, |
416 | .radio_addr = ADDR_UNSET, | ||
417 | .audio_mode_gpio= avermedia_tvphone_audio, | 409 | .audio_mode_gpio= avermedia_tvphone_audio, |
418 | .has_remote = 1, | 410 | .has_remote = 1, |
419 | }, | 411 | }, |
420 | [BTTV_BOARD_MATRIX_VISION] = { | 412 | [BTTV_BOARD_MATRIX_VISION] = { |
421 | .name = "MATRIX-Vision MV-Delta", | 413 | .name = "MATRIX-Vision MV-Delta", |
422 | .video_inputs = 5, | 414 | .video_inputs = 5, |
423 | .audio_inputs = 1, | 415 | /* .audio_inputs= 1, */ |
424 | .svhs = 3, | 416 | .svhs = 3, |
425 | .gpiomask = 0, | 417 | .gpiomask = 0, |
426 | .muxsel = { 2, 3, 1, 0, 0 }, | 418 | .muxsel = { 2, 3, 1, 0, 0 }, |
@@ -428,14 +420,13 @@ struct tvcard bttv_tvcards[] = { | |||
428 | .needs_tvaudio = 1, | 420 | .needs_tvaudio = 1, |
429 | .tuner_type = TUNER_ABSENT, | 421 | .tuner_type = TUNER_ABSENT, |
430 | .tuner_addr = ADDR_UNSET, | 422 | .tuner_addr = ADDR_UNSET, |
431 | .radio_addr = ADDR_UNSET, | ||
432 | }, | 423 | }, |
433 | 424 | ||
434 | /* ---- card 0x08 ---------------------------------- */ | 425 | /* ---- card 0x08 ---------------------------------- */ |
435 | [BTTV_BOARD_FLYVIDEO] = { | 426 | [BTTV_BOARD_FLYVIDEO] = { |
436 | .name = "Lifeview FlyVideo II (Bt848) LR26 / MAXI TV Video PCI2 LR26", | 427 | .name = "Lifeview FlyVideo II (Bt848) LR26 / MAXI TV Video PCI2 LR26", |
437 | .video_inputs = 4, | 428 | .video_inputs = 4, |
438 | .audio_inputs = 1, | 429 | /* .audio_inputs= 1, */ |
439 | .svhs = 2, | 430 | .svhs = 2, |
440 | .gpiomask = 0xc00, | 431 | .gpiomask = 0xc00, |
441 | .muxsel = { 2, 3, 1, 1 }, | 432 | .muxsel = { 2, 3, 1, 1 }, |
@@ -445,12 +436,11 @@ struct tvcard bttv_tvcards[] = { | |||
445 | .pll = PLL_28, | 436 | .pll = PLL_28, |
446 | .tuner_type = UNSET, | 437 | .tuner_type = UNSET, |
447 | .tuner_addr = ADDR_UNSET, | 438 | .tuner_addr = ADDR_UNSET, |
448 | .radio_addr = ADDR_UNSET, | ||
449 | }, | 439 | }, |
450 | [BTTV_BOARD_TURBOTV] = { | 440 | [BTTV_BOARD_TURBOTV] = { |
451 | .name = "IMS/IXmicro TurboTV", | 441 | .name = "IMS/IXmicro TurboTV", |
452 | .video_inputs = 3, | 442 | .video_inputs = 3, |
453 | .audio_inputs = 1, | 443 | /* .audio_inputs= 1, */ |
454 | .svhs = 2, | 444 | .svhs = 2, |
455 | .gpiomask = 3, | 445 | .gpiomask = 3, |
456 | .muxsel = { 2, 3, 1, 1 }, | 446 | .muxsel = { 2, 3, 1, 1 }, |
@@ -459,12 +449,11 @@ struct tvcard bttv_tvcards[] = { | |||
459 | .pll = PLL_28, | 449 | .pll = PLL_28, |
460 | .tuner_type = TUNER_TEMIC_PAL, | 450 | .tuner_type = TUNER_TEMIC_PAL, |
461 | .tuner_addr = ADDR_UNSET, | 451 | .tuner_addr = ADDR_UNSET, |
462 | .radio_addr = ADDR_UNSET, | ||
463 | }, | 452 | }, |
464 | [BTTV_BOARD_HAUPPAUGE878] = { | 453 | [BTTV_BOARD_HAUPPAUGE878] = { |
465 | .name = "Hauppauge (bt878)", | 454 | .name = "Hauppauge (bt878)", |
466 | .video_inputs = 4, | 455 | .video_inputs = 4, |
467 | .audio_inputs = 1, | 456 | /* .audio_inputs= 1, */ |
468 | .svhs = 2, | 457 | .svhs = 2, |
469 | .gpiomask = 0x0f, /* old: 7 */ | 458 | .gpiomask = 0x0f, /* old: 7 */ |
470 | .muxsel = { 2, 0, 1, 1 }, | 459 | .muxsel = { 2, 0, 1, 1 }, |
@@ -474,12 +463,11 @@ struct tvcard bttv_tvcards[] = { | |||
474 | .pll = PLL_28, | 463 | .pll = PLL_28, |
475 | .tuner_type = UNSET, | 464 | .tuner_type = UNSET, |
476 | .tuner_addr = ADDR_UNSET, | 465 | .tuner_addr = ADDR_UNSET, |
477 | .radio_addr = ADDR_UNSET, | ||
478 | }, | 466 | }, |
479 | [BTTV_BOARD_MIROPRO] = { | 467 | [BTTV_BOARD_MIROPRO] = { |
480 | .name = "MIRO PCTV pro", | 468 | .name = "MIRO PCTV pro", |
481 | .video_inputs = 3, | 469 | .video_inputs = 3, |
482 | .audio_inputs = 1, | 470 | /* .audio_inputs= 1, */ |
483 | .svhs = 2, | 471 | .svhs = 2, |
484 | .gpiomask = 0x3014f, | 472 | .gpiomask = 0x3014f, |
485 | .muxsel = { 2, 3, 1, 1 }, | 473 | .muxsel = { 2, 3, 1, 1 }, |
@@ -488,14 +476,13 @@ struct tvcard bttv_tvcards[] = { | |||
488 | .needs_tvaudio = 1, | 476 | .needs_tvaudio = 1, |
489 | .tuner_type = UNSET, | 477 | .tuner_type = UNSET, |
490 | .tuner_addr = ADDR_UNSET, | 478 | .tuner_addr = ADDR_UNSET, |
491 | .radio_addr = ADDR_UNSET, | ||
492 | }, | 479 | }, |
493 | 480 | ||
494 | /* ---- card 0x0c ---------------------------------- */ | 481 | /* ---- card 0x0c ---------------------------------- */ |
495 | [BTTV_BOARD_ADSTECH_TV] = { | 482 | [BTTV_BOARD_ADSTECH_TV] = { |
496 | .name = "ADS Technologies Channel Surfer TV (bt848)", | 483 | .name = "ADS Technologies Channel Surfer TV (bt848)", |
497 | .video_inputs = 3, | 484 | .video_inputs = 3, |
498 | .audio_inputs = 1, | 485 | /* .audio_inputs= 1, */ |
499 | .svhs = 2, | 486 | .svhs = 2, |
500 | .gpiomask = 15, | 487 | .gpiomask = 15, |
501 | .muxsel = { 2, 3, 1, 1 }, | 488 | .muxsel = { 2, 3, 1, 1 }, |
@@ -503,12 +490,11 @@ struct tvcard bttv_tvcards[] = { | |||
503 | .needs_tvaudio = 1, | 490 | .needs_tvaudio = 1, |
504 | .tuner_type = UNSET, | 491 | .tuner_type = UNSET, |
505 | .tuner_addr = ADDR_UNSET, | 492 | .tuner_addr = ADDR_UNSET, |
506 | .radio_addr = ADDR_UNSET, | ||
507 | }, | 493 | }, |
508 | [BTTV_BOARD_AVERMEDIA98] = { | 494 | [BTTV_BOARD_AVERMEDIA98] = { |
509 | .name = "AVerMedia TVCapture 98", | 495 | .name = "AVerMedia TVCapture 98", |
510 | .video_inputs = 3, | 496 | .video_inputs = 3, |
511 | .audio_inputs = 4, | 497 | /* .audio_inputs= 4, */ |
512 | .svhs = 2, | 498 | .svhs = 2, |
513 | .gpiomask = 15, | 499 | .gpiomask = 15, |
514 | .muxsel = { 2, 3, 1, 1 }, | 500 | .muxsel = { 2, 3, 1, 1 }, |
@@ -518,14 +504,13 @@ struct tvcard bttv_tvcards[] = { | |||
518 | .pll = PLL_28, | 504 | .pll = PLL_28, |
519 | .tuner_type = TUNER_PHILIPS_PAL, | 505 | .tuner_type = TUNER_PHILIPS_PAL, |
520 | .tuner_addr = ADDR_UNSET, | 506 | .tuner_addr = ADDR_UNSET, |
521 | .radio_addr = ADDR_UNSET, | ||
522 | .audio_mode_gpio= avermedia_tv_stereo_audio, | 507 | .audio_mode_gpio= avermedia_tv_stereo_audio, |
523 | .no_gpioirq = 1, | 508 | .no_gpioirq = 1, |
524 | }, | 509 | }, |
525 | [BTTV_BOARD_VHX] = { | 510 | [BTTV_BOARD_VHX] = { |
526 | .name = "Aimslab Video Highway Xtreme (VHX)", | 511 | .name = "Aimslab Video Highway Xtreme (VHX)", |
527 | .video_inputs = 3, | 512 | .video_inputs = 3, |
528 | .audio_inputs = 1, | 513 | /* .audio_inputs= 1, */ |
529 | .svhs = 2, | 514 | .svhs = 2, |
530 | .gpiomask = 7, | 515 | .gpiomask = 7, |
531 | .muxsel = { 2, 3, 1, 1 }, | 516 | .muxsel = { 2, 3, 1, 1 }, |
@@ -535,12 +520,11 @@ struct tvcard bttv_tvcards[] = { | |||
535 | .pll = PLL_28, | 520 | .pll = PLL_28, |
536 | .tuner_type = UNSET, | 521 | .tuner_type = UNSET, |
537 | .tuner_addr = ADDR_UNSET, | 522 | .tuner_addr = ADDR_UNSET, |
538 | .radio_addr = ADDR_UNSET, | ||
539 | }, | 523 | }, |
540 | [BTTV_BOARD_ZOLTRIX] = { | 524 | [BTTV_BOARD_ZOLTRIX] = { |
541 | .name = "Zoltrix TV-Max", | 525 | .name = "Zoltrix TV-Max", |
542 | .video_inputs = 3, | 526 | .video_inputs = 3, |
543 | .audio_inputs = 1, | 527 | /* .audio_inputs= 1, */ |
544 | .svhs = 2, | 528 | .svhs = 2, |
545 | .gpiomask = 15, | 529 | .gpiomask = 15, |
546 | .muxsel = { 2, 3, 1, 1 }, | 530 | .muxsel = { 2, 3, 1, 1 }, |
@@ -549,14 +533,13 @@ struct tvcard bttv_tvcards[] = { | |||
549 | .needs_tvaudio = 1, | 533 | .needs_tvaudio = 1, |
550 | .tuner_type = UNSET, | 534 | .tuner_type = UNSET, |
551 | .tuner_addr = ADDR_UNSET, | 535 | .tuner_addr = ADDR_UNSET, |
552 | .radio_addr = ADDR_UNSET, | ||
553 | }, | 536 | }, |
554 | 537 | ||
555 | /* ---- card 0x10 ---------------------------------- */ | 538 | /* ---- card 0x10 ---------------------------------- */ |
556 | [BTTV_BOARD_PIXVIEWPLAYTV] = { | 539 | [BTTV_BOARD_PIXVIEWPLAYTV] = { |
557 | .name = "Prolink Pixelview PlayTV (bt878)", | 540 | .name = "Prolink Pixelview PlayTV (bt878)", |
558 | .video_inputs = 3, | 541 | .video_inputs = 3, |
559 | .audio_inputs = 1, | 542 | /* .audio_inputs= 1, */ |
560 | .svhs = 2, | 543 | .svhs = 2, |
561 | .gpiomask = 0x01fe00, | 544 | .gpiomask = 0x01fe00, |
562 | .muxsel = { 2, 3, 1, 1 }, | 545 | .muxsel = { 2, 3, 1, 1 }, |
@@ -567,12 +550,11 @@ struct tvcard bttv_tvcards[] = { | |||
567 | .pll = PLL_28, | 550 | .pll = PLL_28, |
568 | .tuner_type = UNSET, | 551 | .tuner_type = UNSET, |
569 | .tuner_addr = ADDR_UNSET, | 552 | .tuner_addr = ADDR_UNSET, |
570 | .radio_addr = ADDR_UNSET, | ||
571 | }, | 553 | }, |
572 | [BTTV_BOARD_WINVIEW_601] = { | 554 | [BTTV_BOARD_WINVIEW_601] = { |
573 | .name = "Leadtek WinView 601", | 555 | .name = "Leadtek WinView 601", |
574 | .video_inputs = 3, | 556 | .video_inputs = 3, |
575 | .audio_inputs = 1, | 557 | /* .audio_inputs= 1, */ |
576 | .svhs = 2, | 558 | .svhs = 2, |
577 | .gpiomask = 0x8300f8, | 559 | .gpiomask = 0x8300f8, |
578 | .muxsel = { 2, 3, 1, 1,0 }, | 560 | .muxsel = { 2, 3, 1, 1,0 }, |
@@ -581,14 +563,13 @@ struct tvcard bttv_tvcards[] = { | |||
581 | .needs_tvaudio = 1, | 563 | .needs_tvaudio = 1, |
582 | .tuner_type = UNSET, | 564 | .tuner_type = UNSET, |
583 | .tuner_addr = ADDR_UNSET, | 565 | .tuner_addr = ADDR_UNSET, |
584 | .radio_addr = ADDR_UNSET, | ||
585 | .volume_gpio = winview_volume, | 566 | .volume_gpio = winview_volume, |
586 | .has_radio = 1, | 567 | .has_radio = 1, |
587 | }, | 568 | }, |
588 | [BTTV_BOARD_AVEC_INTERCAP] = { | 569 | [BTTV_BOARD_AVEC_INTERCAP] = { |
589 | .name = "AVEC Intercapture", | 570 | .name = "AVEC Intercapture", |
590 | .video_inputs = 3, | 571 | .video_inputs = 3, |
591 | .audio_inputs = 2, | 572 | /* .audio_inputs= 2, */ |
592 | .svhs = 2, | 573 | .svhs = 2, |
593 | .gpiomask = 0, | 574 | .gpiomask = 0, |
594 | .muxsel = { 2, 3, 1, 1 }, | 575 | .muxsel = { 2, 3, 1, 1 }, |
@@ -596,37 +577,34 @@ struct tvcard bttv_tvcards[] = { | |||
596 | .needs_tvaudio = 1, | 577 | .needs_tvaudio = 1, |
597 | .tuner_type = UNSET, | 578 | .tuner_type = UNSET, |
598 | .tuner_addr = ADDR_UNSET, | 579 | .tuner_addr = ADDR_UNSET, |
599 | .radio_addr = ADDR_UNSET, | ||
600 | }, | 580 | }, |
601 | [BTTV_BOARD_LIFE_FLYKIT] = { | 581 | [BTTV_BOARD_LIFE_FLYKIT] = { |
602 | .name = "Lifeview FlyVideo II EZ /FlyKit LR38 Bt848 (capture only)", | 582 | .name = "Lifeview FlyVideo II EZ /FlyKit LR38 Bt848 (capture only)", |
603 | .video_inputs = 4, | 583 | .video_inputs = 4, |
604 | .audio_inputs = 1, | 584 | /* .audio_inputs= 1, */ |
605 | .svhs = UNSET, | 585 | .svhs = NO_SVHS, |
606 | .gpiomask = 0x8dff00, | 586 | .gpiomask = 0x8dff00, |
607 | .muxsel = { 2, 3, 1, 1 }, | 587 | .muxsel = { 2, 3, 1, 1 }, |
608 | .gpiomux = { 0 }, | 588 | .gpiomux = { 0 }, |
609 | .no_msp34xx = 1, | 589 | .no_msp34xx = 1, |
610 | .tuner_type = TUNER_ABSENT, | 590 | .tuner_type = TUNER_ABSENT, |
611 | .tuner_addr = ADDR_UNSET, | 591 | .tuner_addr = ADDR_UNSET, |
612 | .radio_addr = ADDR_UNSET, | ||
613 | }, | 592 | }, |
614 | 593 | ||
615 | /* ---- card 0x14 ---------------------------------- */ | 594 | /* ---- card 0x14 ---------------------------------- */ |
616 | [BTTV_BOARD_CEI_RAFFLES] = { | 595 | [BTTV_BOARD_CEI_RAFFLES] = { |
617 | .name = "CEI Raffles Card", | 596 | .name = "CEI Raffles Card", |
618 | .video_inputs = 3, | 597 | .video_inputs = 3, |
619 | .audio_inputs = 3, | 598 | /* .audio_inputs= 3, */ |
620 | .svhs = 2, | 599 | .svhs = 2, |
621 | .muxsel = { 2, 3, 1, 1 }, | 600 | .muxsel = { 2, 3, 1, 1 }, |
622 | .tuner_type = UNSET, | 601 | .tuner_type = UNSET, |
623 | .tuner_addr = ADDR_UNSET, | 602 | .tuner_addr = ADDR_UNSET, |
624 | .radio_addr = ADDR_UNSET, | ||
625 | }, | 603 | }, |
626 | [BTTV_BOARD_CONFERENCETV] = { | 604 | [BTTV_BOARD_CONFERENCETV] = { |
627 | .name = "Lifeview FlyVideo 98/ Lucky Star Image World ConferenceTV LR50", | 605 | .name = "Lifeview FlyVideo 98/ Lucky Star Image World ConferenceTV LR50", |
628 | .video_inputs = 4, | 606 | .video_inputs = 4, |
629 | .audio_inputs = 2, /* tuner, line in */ | 607 | /* .audio_inputs= 2, tuner, line in */ |
630 | .svhs = 2, | 608 | .svhs = 2, |
631 | .gpiomask = 0x1800, | 609 | .gpiomask = 0x1800, |
632 | .muxsel = { 2, 3, 1, 1 }, | 610 | .muxsel = { 2, 3, 1, 1 }, |
@@ -635,12 +613,11 @@ struct tvcard bttv_tvcards[] = { | |||
635 | .pll = PLL_28, | 613 | .pll = PLL_28, |
636 | .tuner_type = TUNER_PHILIPS_PAL_I, | 614 | .tuner_type = TUNER_PHILIPS_PAL_I, |
637 | .tuner_addr = ADDR_UNSET, | 615 | .tuner_addr = ADDR_UNSET, |
638 | .radio_addr = ADDR_UNSET, | ||
639 | }, | 616 | }, |
640 | [BTTV_BOARD_PHOEBE_TVMAS] = { | 617 | [BTTV_BOARD_PHOEBE_TVMAS] = { |
641 | .name = "Askey CPH050/ Phoebe Tv Master + FM", | 618 | .name = "Askey CPH050/ Phoebe Tv Master + FM", |
642 | .video_inputs = 3, | 619 | .video_inputs = 3, |
643 | .audio_inputs = 1, | 620 | /* .audio_inputs= 1, */ |
644 | .svhs = 2, | 621 | .svhs = 2, |
645 | .gpiomask = 0xc00, | 622 | .gpiomask = 0xc00, |
646 | .muxsel = { 2, 3, 1, 1 }, | 623 | .muxsel = { 2, 3, 1, 1 }, |
@@ -650,29 +627,27 @@ struct tvcard bttv_tvcards[] = { | |||
650 | .pll = PLL_28, | 627 | .pll = PLL_28, |
651 | .tuner_type = UNSET, | 628 | .tuner_type = UNSET, |
652 | .tuner_addr = ADDR_UNSET, | 629 | .tuner_addr = ADDR_UNSET, |
653 | .radio_addr = ADDR_UNSET, | ||
654 | }, | 630 | }, |
655 | [BTTV_BOARD_MODTEC_205] = { | 631 | [BTTV_BOARD_MODTEC_205] = { |
656 | .name = "Modular Technology MM201/MM202/MM205/MM210/MM215 PCTV, bt878", | 632 | .name = "Modular Technology MM201/MM202/MM205/MM210/MM215 PCTV, bt878", |
657 | .video_inputs = 3, | 633 | .video_inputs = 3, |
658 | .audio_inputs = 1, | 634 | /* .audio_inputs= 1, */ |
659 | .svhs = UNSET, | 635 | .svhs = NO_SVHS, |
660 | .gpiomask = 7, | 636 | .gpiomask = 7, |
661 | .muxsel = { 2, 3, -1 }, | 637 | .muxsel = { 2, 3, -1 }, |
662 | .digital_mode = DIGITAL_MODE_CAMERA, | 638 | /* .digital_mode= DIGITAL_MODE_CAMERA, */ |
663 | .gpiomux = { 0, 0, 0, 0 }, | 639 | .gpiomux = { 0, 0, 0, 0 }, |
664 | .no_msp34xx = 1, | 640 | .no_msp34xx = 1, |
665 | .pll = PLL_28, | 641 | .pll = PLL_28, |
666 | .tuner_type = TUNER_ALPS_TSBB5_PAL_I, | 642 | .tuner_type = TUNER_ALPS_TSBB5_PAL_I, |
667 | .tuner_addr = ADDR_UNSET, | 643 | .tuner_addr = ADDR_UNSET, |
668 | .radio_addr = ADDR_UNSET, | ||
669 | }, | 644 | }, |
670 | 645 | ||
671 | /* ---- card 0x18 ---------------------------------- */ | 646 | /* ---- card 0x18 ---------------------------------- */ |
672 | [BTTV_BOARD_MAGICTVIEW061] = { | 647 | [BTTV_BOARD_MAGICTVIEW061] = { |
673 | .name = "Askey CPH05X/06X (bt878) [many vendors]", | 648 | .name = "Askey CPH05X/06X (bt878) [many vendors]", |
674 | .video_inputs = 3, | 649 | .video_inputs = 3, |
675 | .audio_inputs = 1, | 650 | /* .audio_inputs= 1, */ |
676 | .svhs = 2, | 651 | .svhs = 2, |
677 | .gpiomask = 0xe00, | 652 | .gpiomask = 0xe00, |
678 | .muxsel = { 2, 3, 1, 1 }, | 653 | .muxsel = { 2, 3, 1, 1 }, |
@@ -682,13 +657,12 @@ struct tvcard bttv_tvcards[] = { | |||
682 | .pll = PLL_28, | 657 | .pll = PLL_28, |
683 | .tuner_type = UNSET, | 658 | .tuner_type = UNSET, |
684 | .tuner_addr = ADDR_UNSET, | 659 | .tuner_addr = ADDR_UNSET, |
685 | .radio_addr = ADDR_UNSET, | ||
686 | .has_remote = 1, | 660 | .has_remote = 1, |
687 | }, | 661 | }, |
688 | [BTTV_BOARD_VOBIS_BOOSTAR] = { | 662 | [BTTV_BOARD_VOBIS_BOOSTAR] = { |
689 | .name = "Terratec TerraTV+ Version 1.0 (Bt848)/ Terra TValue Version 1.0/ Vobis TV-Boostar", | 663 | .name = "Terratec TerraTV+ Version 1.0 (Bt848)/ Terra TValue Version 1.0/ Vobis TV-Boostar", |
690 | .video_inputs = 3, | 664 | .video_inputs = 3, |
691 | .audio_inputs = 1, | 665 | /* .audio_inputs= 1, */ |
692 | .svhs = 2, | 666 | .svhs = 2, |
693 | .gpiomask = 0x1f0fff, | 667 | .gpiomask = 0x1f0fff, |
694 | .muxsel = { 2, 3, 1, 1 }, | 668 | .muxsel = { 2, 3, 1, 1 }, |
@@ -697,13 +671,12 @@ struct tvcard bttv_tvcards[] = { | |||
697 | .needs_tvaudio = 0, | 671 | .needs_tvaudio = 0, |
698 | .tuner_type = TUNER_PHILIPS_PAL, | 672 | .tuner_type = TUNER_PHILIPS_PAL, |
699 | .tuner_addr = ADDR_UNSET, | 673 | .tuner_addr = ADDR_UNSET, |
700 | .radio_addr = ADDR_UNSET, | ||
701 | .audio_mode_gpio= terratv_audio, | 674 | .audio_mode_gpio= terratv_audio, |
702 | }, | 675 | }, |
703 | [BTTV_BOARD_HAUPPAUG_WCAM] = { | 676 | [BTTV_BOARD_HAUPPAUG_WCAM] = { |
704 | .name = "Hauppauge WinCam newer (bt878)", | 677 | .name = "Hauppauge WinCam newer (bt878)", |
705 | .video_inputs = 4, | 678 | .video_inputs = 4, |
706 | .audio_inputs = 1, | 679 | /* .audio_inputs= 1, */ |
707 | .svhs = 3, | 680 | .svhs = 3, |
708 | .gpiomask = 7, | 681 | .gpiomask = 7, |
709 | .muxsel = { 2, 0, 1, 1 }, | 682 | .muxsel = { 2, 0, 1, 1 }, |
@@ -712,12 +685,11 @@ struct tvcard bttv_tvcards[] = { | |||
712 | .needs_tvaudio = 1, | 685 | .needs_tvaudio = 1, |
713 | .tuner_type = UNSET, | 686 | .tuner_type = UNSET, |
714 | .tuner_addr = ADDR_UNSET, | 687 | .tuner_addr = ADDR_UNSET, |
715 | .radio_addr = ADDR_UNSET, | ||
716 | }, | 688 | }, |
717 | [BTTV_BOARD_MAXI] = { | 689 | [BTTV_BOARD_MAXI] = { |
718 | .name = "Lifeview FlyVideo 98/ MAXI TV Video PCI2 LR50", | 690 | .name = "Lifeview FlyVideo 98/ MAXI TV Video PCI2 LR50", |
719 | .video_inputs = 4, | 691 | .video_inputs = 4, |
720 | .audio_inputs = 2, | 692 | /* .audio_inputs= 2, */ |
721 | .svhs = 2, | 693 | .svhs = 2, |
722 | .gpiomask = 0x1800, | 694 | .gpiomask = 0x1800, |
723 | .muxsel = { 2, 3, 1, 1 }, | 695 | .muxsel = { 2, 3, 1, 1 }, |
@@ -726,14 +698,13 @@ struct tvcard bttv_tvcards[] = { | |||
726 | .pll = PLL_28, | 698 | .pll = PLL_28, |
727 | .tuner_type = TUNER_PHILIPS_SECAM, | 699 | .tuner_type = TUNER_PHILIPS_SECAM, |
728 | .tuner_addr = ADDR_UNSET, | 700 | .tuner_addr = ADDR_UNSET, |
729 | .radio_addr = ADDR_UNSET, | ||
730 | }, | 701 | }, |
731 | 702 | ||
732 | /* ---- card 0x1c ---------------------------------- */ | 703 | /* ---- card 0x1c ---------------------------------- */ |
733 | [BTTV_BOARD_TERRATV] = { | 704 | [BTTV_BOARD_TERRATV] = { |
734 | .name = "Terratec TerraTV+ Version 1.1 (bt878)", | 705 | .name = "Terratec TerraTV+ Version 1.1 (bt878)", |
735 | .video_inputs = 3, | 706 | .video_inputs = 3, |
736 | .audio_inputs = 1, | 707 | /* .audio_inputs= 1, */ |
737 | .svhs = 2, | 708 | .svhs = 2, |
738 | .gpiomask = 0x1f0fff, | 709 | .gpiomask = 0x1f0fff, |
739 | .muxsel = { 2, 3, 1, 1 }, | 710 | .muxsel = { 2, 3, 1, 1 }, |
@@ -742,7 +713,6 @@ struct tvcard bttv_tvcards[] = { | |||
742 | .needs_tvaudio = 0, | 713 | .needs_tvaudio = 0, |
743 | .tuner_type = TUNER_PHILIPS_PAL, | 714 | .tuner_type = TUNER_PHILIPS_PAL, |
744 | .tuner_addr = ADDR_UNSET, | 715 | .tuner_addr = ADDR_UNSET, |
745 | .radio_addr = ADDR_UNSET, | ||
746 | .audio_mode_gpio= terratv_audio, | 716 | .audio_mode_gpio= terratv_audio, |
747 | /* GPIO wiring: | 717 | /* GPIO wiring: |
748 | External 20 pin connector (for Active Radio Upgrade board) | 718 | External 20 pin connector (for Active Radio Upgrade board) |
@@ -780,7 +750,7 @@ struct tvcard bttv_tvcards[] = { | |||
780 | /* Jannik Fritsch <jannik@techfak.uni-bielefeld.de> */ | 750 | /* Jannik Fritsch <jannik@techfak.uni-bielefeld.de> */ |
781 | .name = "Imagenation PXC200", | 751 | .name = "Imagenation PXC200", |
782 | .video_inputs = 5, | 752 | .video_inputs = 5, |
783 | .audio_inputs = 1, | 753 | /* .audio_inputs= 1, */ |
784 | .svhs = 1, /* was: 4 */ | 754 | .svhs = 1, /* was: 4 */ |
785 | .gpiomask = 0, | 755 | .gpiomask = 0, |
786 | .muxsel = { 2, 3, 1, 0, 0}, | 756 | .muxsel = { 2, 3, 1, 0, 0}, |
@@ -788,14 +758,13 @@ struct tvcard bttv_tvcards[] = { | |||
788 | .needs_tvaudio = 1, | 758 | .needs_tvaudio = 1, |
789 | .tuner_type = TUNER_ABSENT, | 759 | .tuner_type = TUNER_ABSENT, |
790 | .tuner_addr = ADDR_UNSET, | 760 | .tuner_addr = ADDR_UNSET, |
791 | .radio_addr = ADDR_UNSET, | ||
792 | .muxsel_hook = PXC200_muxsel, | 761 | .muxsel_hook = PXC200_muxsel, |
793 | 762 | ||
794 | }, | 763 | }, |
795 | [BTTV_BOARD_FLYVIDEO_98] = { | 764 | [BTTV_BOARD_FLYVIDEO_98] = { |
796 | .name = "Lifeview FlyVideo 98 LR50", | 765 | .name = "Lifeview FlyVideo 98 LR50", |
797 | .video_inputs = 4, | 766 | .video_inputs = 4, |
798 | .audio_inputs = 1, | 767 | /* .audio_inputs= 1, */ |
799 | .svhs = 2, | 768 | .svhs = 2, |
800 | .gpiomask = 0x1800, /* 0x8dfe00 */ | 769 | .gpiomask = 0x1800, /* 0x8dfe00 */ |
801 | .muxsel = { 2, 3, 1, 1 }, | 770 | .muxsel = { 2, 3, 1, 1 }, |
@@ -804,12 +773,11 @@ struct tvcard bttv_tvcards[] = { | |||
804 | .pll = PLL_28, | 773 | .pll = PLL_28, |
805 | .tuner_type = UNSET, | 774 | .tuner_type = UNSET, |
806 | .tuner_addr = ADDR_UNSET, | 775 | .tuner_addr = ADDR_UNSET, |
807 | .radio_addr = ADDR_UNSET, | ||
808 | }, | 776 | }, |
809 | [BTTV_BOARD_IPROTV] = { | 777 | [BTTV_BOARD_IPROTV] = { |
810 | .name = "Formac iProTV, Formac ProTV I (bt848)", | 778 | .name = "Formac iProTV, Formac ProTV I (bt848)", |
811 | .video_inputs = 4, | 779 | .video_inputs = 4, |
812 | .audio_inputs = 1, | 780 | /* .audio_inputs= 1, */ |
813 | .svhs = 3, | 781 | .svhs = 3, |
814 | .gpiomask = 1, | 782 | .gpiomask = 1, |
815 | .muxsel = { 2, 3, 1, 1 }, | 783 | .muxsel = { 2, 3, 1, 1 }, |
@@ -817,14 +785,13 @@ struct tvcard bttv_tvcards[] = { | |||
817 | .pll = PLL_28, | 785 | .pll = PLL_28, |
818 | .tuner_type = TUNER_PHILIPS_PAL, | 786 | .tuner_type = TUNER_PHILIPS_PAL, |
819 | .tuner_addr = ADDR_UNSET, | 787 | .tuner_addr = ADDR_UNSET, |
820 | .radio_addr = ADDR_UNSET, | ||
821 | }, | 788 | }, |
822 | 789 | ||
823 | /* ---- card 0x20 ---------------------------------- */ | 790 | /* ---- card 0x20 ---------------------------------- */ |
824 | [BTTV_BOARD_INTEL_C_S_PCI] = { | 791 | [BTTV_BOARD_INTEL_C_S_PCI] = { |
825 | .name = "Intel Create and Share PCI/ Smart Video Recorder III", | 792 | .name = "Intel Create and Share PCI/ Smart Video Recorder III", |
826 | .video_inputs = 4, | 793 | .video_inputs = 4, |
827 | .audio_inputs = 0, | 794 | /* .audio_inputs= 0, */ |
828 | .svhs = 2, | 795 | .svhs = 2, |
829 | .gpiomask = 0, | 796 | .gpiomask = 0, |
830 | .muxsel = { 2, 3, 1, 1 }, | 797 | .muxsel = { 2, 3, 1, 1 }, |
@@ -832,12 +799,11 @@ struct tvcard bttv_tvcards[] = { | |||
832 | .needs_tvaudio = 0, | 799 | .needs_tvaudio = 0, |
833 | .tuner_type = TUNER_ABSENT, | 800 | .tuner_type = TUNER_ABSENT, |
834 | .tuner_addr = ADDR_UNSET, | 801 | .tuner_addr = ADDR_UNSET, |
835 | .radio_addr = ADDR_UNSET, | ||
836 | }, | 802 | }, |
837 | [BTTV_BOARD_TERRATVALUE] = { | 803 | [BTTV_BOARD_TERRATVALUE] = { |
838 | .name = "Terratec TerraTValue Version Bt878", | 804 | .name = "Terratec TerraTValue Version Bt878", |
839 | .video_inputs = 3, | 805 | .video_inputs = 3, |
840 | .audio_inputs = 1, | 806 | /* .audio_inputs= 1, */ |
841 | .svhs = 2, | 807 | .svhs = 2, |
842 | .gpiomask = 0xffff00, | 808 | .gpiomask = 0xffff00, |
843 | .muxsel = { 2, 3, 1, 1 }, | 809 | .muxsel = { 2, 3, 1, 1 }, |
@@ -847,12 +813,11 @@ struct tvcard bttv_tvcards[] = { | |||
847 | .pll = PLL_28, | 813 | .pll = PLL_28, |
848 | .tuner_type = TUNER_PHILIPS_PAL, | 814 | .tuner_type = TUNER_PHILIPS_PAL, |
849 | .tuner_addr = ADDR_UNSET, | 815 | .tuner_addr = ADDR_UNSET, |
850 | .radio_addr = ADDR_UNSET, | ||
851 | }, | 816 | }, |
852 | [BTTV_BOARD_WINFAST2000] = { | 817 | [BTTV_BOARD_WINFAST2000] = { |
853 | .name = "Leadtek WinFast 2000/ WinFast 2000 XP", | 818 | .name = "Leadtek WinFast 2000/ WinFast 2000 XP", |
854 | .video_inputs = 4, | 819 | .video_inputs = 4, |
855 | .audio_inputs = 1, | 820 | /* .audio_inputs= 1, */ |
856 | .svhs = 2, | 821 | .svhs = 2, |
857 | .muxsel = { 2, 3, 1, 1, 0 }, /* TV, CVid, SVid, CVid over SVid connector */ | 822 | .muxsel = { 2, 3, 1, 1, 0 }, /* TV, CVid, SVid, CVid over SVid connector */ |
858 | /* Alexander Varakin <avarakin@hotmail.com> [stereo version] */ | 823 | /* Alexander Varakin <avarakin@hotmail.com> [stereo version] */ |
@@ -875,14 +840,13 @@ struct tvcard bttv_tvcards[] = { | |||
875 | .has_radio = 1, | 840 | .has_radio = 1, |
876 | .tuner_type = TUNER_PHILIPS_PAL, /* default for now, gpio reads BFFF06 for Pal bg+dk */ | 841 | .tuner_type = TUNER_PHILIPS_PAL, /* default for now, gpio reads BFFF06 for Pal bg+dk */ |
877 | .tuner_addr = ADDR_UNSET, | 842 | .tuner_addr = ADDR_UNSET, |
878 | .radio_addr = ADDR_UNSET, | ||
879 | .audio_mode_gpio= winfast2000_audio, | 843 | .audio_mode_gpio= winfast2000_audio, |
880 | .has_remote = 1, | 844 | .has_remote = 1, |
881 | }, | 845 | }, |
882 | [BTTV_BOARD_CHRONOS_VS2] = { | 846 | [BTTV_BOARD_CHRONOS_VS2] = { |
883 | .name = "Lifeview FlyVideo 98 LR50 / Chronos Video Shuttle II", | 847 | .name = "Lifeview FlyVideo 98 LR50 / Chronos Video Shuttle II", |
884 | .video_inputs = 4, | 848 | .video_inputs = 4, |
885 | .audio_inputs = 3, | 849 | /* .audio_inputs= 3, */ |
886 | .svhs = 2, | 850 | .svhs = 2, |
887 | .gpiomask = 0x1800, | 851 | .gpiomask = 0x1800, |
888 | .muxsel = { 2, 3, 1, 1 }, | 852 | .muxsel = { 2, 3, 1, 1 }, |
@@ -891,14 +855,13 @@ struct tvcard bttv_tvcards[] = { | |||
891 | .pll = PLL_28, | 855 | .pll = PLL_28, |
892 | .tuner_type = UNSET, | 856 | .tuner_type = UNSET, |
893 | .tuner_addr = ADDR_UNSET, | 857 | .tuner_addr = ADDR_UNSET, |
894 | .radio_addr = ADDR_UNSET, | ||
895 | }, | 858 | }, |
896 | 859 | ||
897 | /* ---- card 0x24 ---------------------------------- */ | 860 | /* ---- card 0x24 ---------------------------------- */ |
898 | [BTTV_BOARD_TYPHOON_TVIEW] = { | 861 | [BTTV_BOARD_TYPHOON_TVIEW] = { |
899 | .name = "Lifeview FlyVideo 98FM LR50 / Typhoon TView TV/FM Tuner", | 862 | .name = "Lifeview FlyVideo 98FM LR50 / Typhoon TView TV/FM Tuner", |
900 | .video_inputs = 4, | 863 | .video_inputs = 4, |
901 | .audio_inputs = 3, | 864 | /* .audio_inputs= 3, */ |
902 | .svhs = 2, | 865 | .svhs = 2, |
903 | .gpiomask = 0x1800, | 866 | .gpiomask = 0x1800, |
904 | .muxsel = { 2, 3, 1, 1 }, | 867 | .muxsel = { 2, 3, 1, 1 }, |
@@ -907,13 +870,12 @@ struct tvcard bttv_tvcards[] = { | |||
907 | .pll = PLL_28, | 870 | .pll = PLL_28, |
908 | .tuner_type = UNSET, | 871 | .tuner_type = UNSET, |
909 | .tuner_addr = ADDR_UNSET, | 872 | .tuner_addr = ADDR_UNSET, |
910 | .radio_addr = ADDR_UNSET, | ||
911 | .has_radio = 1, | 873 | .has_radio = 1, |
912 | }, | 874 | }, |
913 | [BTTV_BOARD_PXELVWPLTVPRO] = { | 875 | [BTTV_BOARD_PXELVWPLTVPRO] = { |
914 | .name = "Prolink PixelView PlayTV pro", | 876 | .name = "Prolink PixelView PlayTV pro", |
915 | .video_inputs = 3, | 877 | .video_inputs = 3, |
916 | .audio_inputs = 1, | 878 | /* .audio_inputs= 1, */ |
917 | .svhs = 2, | 879 | .svhs = 2, |
918 | .gpiomask = 0xff, | 880 | .gpiomask = 0xff, |
919 | .muxsel = { 2, 3, 1, 1 }, | 881 | .muxsel = { 2, 3, 1, 1 }, |
@@ -923,12 +885,11 @@ struct tvcard bttv_tvcards[] = { | |||
923 | .pll = PLL_28, | 885 | .pll = PLL_28, |
924 | .tuner_type = UNSET, | 886 | .tuner_type = UNSET, |
925 | .tuner_addr = ADDR_UNSET, | 887 | .tuner_addr = ADDR_UNSET, |
926 | .radio_addr = ADDR_UNSET, | ||
927 | }, | 888 | }, |
928 | [BTTV_BOARD_MAGICTVIEW063] = { | 889 | [BTTV_BOARD_MAGICTVIEW063] = { |
929 | .name = "Askey CPH06X TView99", | 890 | .name = "Askey CPH06X TView99", |
930 | .video_inputs = 4, | 891 | .video_inputs = 4, |
931 | .audio_inputs = 1, | 892 | /* .audio_inputs= 1, */ |
932 | .svhs = 2, | 893 | .svhs = 2, |
933 | .gpiomask = 0x551e00, | 894 | .gpiomask = 0x551e00, |
934 | .muxsel = { 2, 3, 1, 0 }, | 895 | .muxsel = { 2, 3, 1, 0 }, |
@@ -938,13 +899,12 @@ struct tvcard bttv_tvcards[] = { | |||
938 | .pll = PLL_28, | 899 | .pll = PLL_28, |
939 | .tuner_type = TUNER_PHILIPS_PAL_I, | 900 | .tuner_type = TUNER_PHILIPS_PAL_I, |
940 | .tuner_addr = ADDR_UNSET, | 901 | .tuner_addr = ADDR_UNSET, |
941 | .radio_addr = ADDR_UNSET, | ||
942 | .has_remote = 1, | 902 | .has_remote = 1, |
943 | }, | 903 | }, |
944 | [BTTV_BOARD_PINNACLE] = { | 904 | [BTTV_BOARD_PINNACLE] = { |
945 | .name = "Pinnacle PCTV Studio/Rave", | 905 | .name = "Pinnacle PCTV Studio/Rave", |
946 | .video_inputs = 3, | 906 | .video_inputs = 3, |
947 | .audio_inputs = 1, | 907 | /* .audio_inputs= 1, */ |
948 | .svhs = 2, | 908 | .svhs = 2, |
949 | .gpiomask = 0x03000F, | 909 | .gpiomask = 0x03000F, |
950 | .muxsel = { 2, 3, 1, 1 }, | 910 | .muxsel = { 2, 3, 1, 1 }, |
@@ -954,14 +914,13 @@ struct tvcard bttv_tvcards[] = { | |||
954 | .pll = PLL_28, | 914 | .pll = PLL_28, |
955 | .tuner_type = UNSET, | 915 | .tuner_type = UNSET, |
956 | .tuner_addr = ADDR_UNSET, | 916 | .tuner_addr = ADDR_UNSET, |
957 | .radio_addr = ADDR_UNSET, | ||
958 | }, | 917 | }, |
959 | 918 | ||
960 | /* ---- card 0x28 ---------------------------------- */ | 919 | /* ---- card 0x28 ---------------------------------- */ |
961 | [BTTV_BOARD_STB2] = { | 920 | [BTTV_BOARD_STB2] = { |
962 | .name = "STB TV PCI FM, Gateway P/N 6000704 (bt878), 3Dfx VoodooTV 100", | 921 | .name = "STB TV PCI FM, Gateway P/N 6000704 (bt878), 3Dfx VoodooTV 100", |
963 | .video_inputs = 3, | 922 | .video_inputs = 3, |
964 | .audio_inputs = 1, | 923 | /* .audio_inputs= 1, */ |
965 | .svhs = 2, | 924 | .svhs = 2, |
966 | .gpiomask = 7, | 925 | .gpiomask = 7, |
967 | .muxsel = { 2, 3, 1, 1 }, | 926 | .muxsel = { 2, 3, 1, 1 }, |
@@ -971,14 +930,13 @@ struct tvcard bttv_tvcards[] = { | |||
971 | .needs_tvaudio = 1, | 930 | .needs_tvaudio = 1, |
972 | .tuner_type = TUNER_PHILIPS_NTSC, | 931 | .tuner_type = TUNER_PHILIPS_NTSC, |
973 | .tuner_addr = ADDR_UNSET, | 932 | .tuner_addr = ADDR_UNSET, |
974 | .radio_addr = ADDR_UNSET, | ||
975 | .pll = PLL_28, | 933 | .pll = PLL_28, |
976 | .has_radio = 1, | 934 | .has_radio = 1, |
977 | }, | 935 | }, |
978 | [BTTV_BOARD_AVPHONE98] = { | 936 | [BTTV_BOARD_AVPHONE98] = { |
979 | .name = "AVerMedia TVPhone 98", | 937 | .name = "AVerMedia TVPhone 98", |
980 | .video_inputs = 3, | 938 | .video_inputs = 3, |
981 | .audio_inputs = 4, | 939 | /* .audio_inputs= 4, */ |
982 | .svhs = 2, | 940 | .svhs = 2, |
983 | .gpiomask = 15, | 941 | .gpiomask = 15, |
984 | .muxsel = { 2, 3, 1, 1 }, | 942 | .muxsel = { 2, 3, 1, 1 }, |
@@ -987,14 +945,13 @@ struct tvcard bttv_tvcards[] = { | |||
987 | .pll = PLL_28, | 945 | .pll = PLL_28, |
988 | .tuner_type = UNSET, | 946 | .tuner_type = UNSET, |
989 | .tuner_addr = ADDR_UNSET, | 947 | .tuner_addr = ADDR_UNSET, |
990 | .radio_addr = ADDR_UNSET, | ||
991 | .has_radio = 1, | 948 | .has_radio = 1, |
992 | .audio_mode_gpio= avermedia_tvphone_audio, | 949 | .audio_mode_gpio= avermedia_tvphone_audio, |
993 | }, | 950 | }, |
994 | [BTTV_BOARD_PV951] = { | 951 | [BTTV_BOARD_PV951] = { |
995 | .name = "ProVideo PV951", /* pic16c54 */ | 952 | .name = "ProVideo PV951", /* pic16c54 */ |
996 | .video_inputs = 3, | 953 | .video_inputs = 3, |
997 | .audio_inputs = 1, | 954 | /* .audio_inputs= 1, */ |
998 | .svhs = 2, | 955 | .svhs = 2, |
999 | .gpiomask = 0, | 956 | .gpiomask = 0, |
1000 | .muxsel = { 2, 3, 1, 1}, | 957 | .muxsel = { 2, 3, 1, 1}, |
@@ -1004,12 +961,11 @@ struct tvcard bttv_tvcards[] = { | |||
1004 | .pll = PLL_28, | 961 | .pll = PLL_28, |
1005 | .tuner_type = TUNER_PHILIPS_PAL_I, | 962 | .tuner_type = TUNER_PHILIPS_PAL_I, |
1006 | .tuner_addr = ADDR_UNSET, | 963 | .tuner_addr = ADDR_UNSET, |
1007 | .radio_addr = ADDR_UNSET, | ||
1008 | }, | 964 | }, |
1009 | [BTTV_BOARD_ONAIR_TV] = { | 965 | [BTTV_BOARD_ONAIR_TV] = { |
1010 | .name = "Little OnAir TV", | 966 | .name = "Little OnAir TV", |
1011 | .video_inputs = 3, | 967 | .video_inputs = 3, |
1012 | .audio_inputs = 1, | 968 | /* .audio_inputs= 1, */ |
1013 | .svhs = 2, | 969 | .svhs = 2, |
1014 | .gpiomask = 0xe00b, | 970 | .gpiomask = 0xe00b, |
1015 | .muxsel = { 2, 3, 1, 1 }, | 971 | .muxsel = { 2, 3, 1, 1 }, |
@@ -1018,15 +974,14 @@ struct tvcard bttv_tvcards[] = { | |||
1018 | .no_msp34xx = 1, | 974 | .no_msp34xx = 1, |
1019 | .tuner_type = UNSET, | 975 | .tuner_type = UNSET, |
1020 | .tuner_addr = ADDR_UNSET, | 976 | .tuner_addr = ADDR_UNSET, |
1021 | .radio_addr = ADDR_UNSET, | ||
1022 | }, | 977 | }, |
1023 | 978 | ||
1024 | /* ---- card 0x2c ---------------------------------- */ | 979 | /* ---- card 0x2c ---------------------------------- */ |
1025 | [BTTV_BOARD_SIGMA_TVII_FM] = { | 980 | [BTTV_BOARD_SIGMA_TVII_FM] = { |
1026 | .name = "Sigma TVII-FM", | 981 | .name = "Sigma TVII-FM", |
1027 | .video_inputs = 2, | 982 | .video_inputs = 2, |
1028 | .audio_inputs = 1, | 983 | /* .audio_inputs= 1, */ |
1029 | .svhs = UNSET, | 984 | .svhs = NO_SVHS, |
1030 | .gpiomask = 3, | 985 | .gpiomask = 3, |
1031 | .muxsel = { 2, 3, 1, 1 }, | 986 | .muxsel = { 2, 3, 1, 1 }, |
1032 | .gpiomux = { 1, 1, 0, 2 }, | 987 | .gpiomux = { 1, 1, 0, 2 }, |
@@ -1035,12 +990,11 @@ struct tvcard bttv_tvcards[] = { | |||
1035 | .pll = PLL_NONE, | 990 | .pll = PLL_NONE, |
1036 | .tuner_type = UNSET, | 991 | .tuner_type = UNSET, |
1037 | .tuner_addr = ADDR_UNSET, | 992 | .tuner_addr = ADDR_UNSET, |
1038 | .radio_addr = ADDR_UNSET, | ||
1039 | }, | 993 | }, |
1040 | [BTTV_BOARD_MATRIX_VISION2] = { | 994 | [BTTV_BOARD_MATRIX_VISION2] = { |
1041 | .name = "MATRIX-Vision MV-Delta 2", | 995 | .name = "MATRIX-Vision MV-Delta 2", |
1042 | .video_inputs = 5, | 996 | .video_inputs = 5, |
1043 | .audio_inputs = 1, | 997 | /* .audio_inputs= 1, */ |
1044 | .svhs = 3, | 998 | .svhs = 3, |
1045 | .gpiomask = 0, | 999 | .gpiomask = 0, |
1046 | .muxsel = { 2, 3, 1, 0, 0 }, | 1000 | .muxsel = { 2, 3, 1, 0, 0 }, |
@@ -1049,12 +1003,11 @@ struct tvcard bttv_tvcards[] = { | |||
1049 | .pll = PLL_28, | 1003 | .pll = PLL_28, |
1050 | .tuner_type = TUNER_ABSENT, | 1004 | .tuner_type = TUNER_ABSENT, |
1051 | .tuner_addr = ADDR_UNSET, | 1005 | .tuner_addr = ADDR_UNSET, |
1052 | .radio_addr = ADDR_UNSET, | ||
1053 | }, | 1006 | }, |
1054 | [BTTV_BOARD_ZOLTRIX_GENIE] = { | 1007 | [BTTV_BOARD_ZOLTRIX_GENIE] = { |
1055 | .name = "Zoltrix Genie TV/FM", | 1008 | .name = "Zoltrix Genie TV/FM", |
1056 | .video_inputs = 3, | 1009 | .video_inputs = 3, |
1057 | .audio_inputs = 1, | 1010 | /* .audio_inputs= 1, */ |
1058 | .svhs = 2, | 1011 | .svhs = 2, |
1059 | .gpiomask = 0xbcf03f, | 1012 | .gpiomask = 0xbcf03f, |
1060 | .muxsel = { 2, 3, 1, 1 }, | 1013 | .muxsel = { 2, 3, 1, 1 }, |
@@ -1064,12 +1017,11 @@ struct tvcard bttv_tvcards[] = { | |||
1064 | .pll = PLL_28, | 1017 | .pll = PLL_28, |
1065 | .tuner_type = TUNER_TEMIC_4039FR5_NTSC, | 1018 | .tuner_type = TUNER_TEMIC_4039FR5_NTSC, |
1066 | .tuner_addr = ADDR_UNSET, | 1019 | .tuner_addr = ADDR_UNSET, |
1067 | .radio_addr = ADDR_UNSET, | ||
1068 | }, | 1020 | }, |
1069 | [BTTV_BOARD_TERRATVRADIO] = { | 1021 | [BTTV_BOARD_TERRATVRADIO] = { |
1070 | .name = "Terratec TV/Radio+", | 1022 | .name = "Terratec TV/Radio+", |
1071 | .video_inputs = 3, | 1023 | .video_inputs = 3, |
1072 | .audio_inputs = 1, | 1024 | /* .audio_inputs= 1, */ |
1073 | .svhs = 2, | 1025 | .svhs = 2, |
1074 | .gpiomask = 0x70000, | 1026 | .gpiomask = 0x70000, |
1075 | .muxsel = { 2, 3, 1, 1 }, | 1027 | .muxsel = { 2, 3, 1, 1 }, |
@@ -1080,7 +1032,6 @@ struct tvcard bttv_tvcards[] = { | |||
1080 | .pll = PLL_35, | 1032 | .pll = PLL_35, |
1081 | .tuner_type = TUNER_PHILIPS_PAL_I, | 1033 | .tuner_type = TUNER_PHILIPS_PAL_I, |
1082 | .tuner_addr = ADDR_UNSET, | 1034 | .tuner_addr = ADDR_UNSET, |
1083 | .radio_addr = ADDR_UNSET, | ||
1084 | .has_radio = 1, | 1035 | .has_radio = 1, |
1085 | }, | 1036 | }, |
1086 | 1037 | ||
@@ -1088,7 +1039,7 @@ struct tvcard bttv_tvcards[] = { | |||
1088 | [BTTV_BOARD_DYNALINK] = { | 1039 | [BTTV_BOARD_DYNALINK] = { |
1089 | .name = "Askey CPH03x/ Dynalink Magic TView", | 1040 | .name = "Askey CPH03x/ Dynalink Magic TView", |
1090 | .video_inputs = 3, | 1041 | .video_inputs = 3, |
1091 | .audio_inputs = 1, | 1042 | /* .audio_inputs= 1, */ |
1092 | .svhs = 2, | 1043 | .svhs = 2, |
1093 | .gpiomask = 15, | 1044 | .gpiomask = 15, |
1094 | .muxsel = { 2, 3, 1, 1 }, | 1045 | .muxsel = { 2, 3, 1, 1 }, |
@@ -1098,12 +1049,11 @@ struct tvcard bttv_tvcards[] = { | |||
1098 | .pll = PLL_28, | 1049 | .pll = PLL_28, |
1099 | .tuner_type = UNSET, | 1050 | .tuner_type = UNSET, |
1100 | .tuner_addr = ADDR_UNSET, | 1051 | .tuner_addr = ADDR_UNSET, |
1101 | .radio_addr = ADDR_UNSET, | ||
1102 | }, | 1052 | }, |
1103 | [BTTV_BOARD_GVBCTV3PCI] = { | 1053 | [BTTV_BOARD_GVBCTV3PCI] = { |
1104 | .name = "IODATA GV-BCTV3/PCI", | 1054 | .name = "IODATA GV-BCTV3/PCI", |
1105 | .video_inputs = 3, | 1055 | .video_inputs = 3, |
1106 | .audio_inputs = 1, | 1056 | /* .audio_inputs= 1, */ |
1107 | .svhs = 2, | 1057 | .svhs = 2, |
1108 | .gpiomask = 0x010f00, | 1058 | .gpiomask = 0x010f00, |
1109 | .muxsel = {2, 3, 0, 0 }, | 1059 | .muxsel = {2, 3, 0, 0 }, |
@@ -1112,24 +1062,22 @@ struct tvcard bttv_tvcards[] = { | |||
1112 | .pll = PLL_28, | 1062 | .pll = PLL_28, |
1113 | .tuner_type = TUNER_ALPS_TSHC6_NTSC, | 1063 | .tuner_type = TUNER_ALPS_TSHC6_NTSC, |
1114 | .tuner_addr = ADDR_UNSET, | 1064 | .tuner_addr = ADDR_UNSET, |
1115 | .radio_addr = ADDR_UNSET, | ||
1116 | .audio_mode_gpio= gvbctv3pci_audio, | 1065 | .audio_mode_gpio= gvbctv3pci_audio, |
1117 | }, | 1066 | }, |
1118 | [BTTV_BOARD_PXELVWPLTVPAK] = { | 1067 | [BTTV_BOARD_PXELVWPLTVPAK] = { |
1119 | .name = "Prolink PV-BT878P+4E / PixelView PlayTV PAK / Lenco MXTV-9578 CP", | 1068 | .name = "Prolink PV-BT878P+4E / PixelView PlayTV PAK / Lenco MXTV-9578 CP", |
1120 | .video_inputs = 5, | 1069 | .video_inputs = 5, |
1121 | .audio_inputs = 1, | 1070 | /* .audio_inputs= 1, */ |
1122 | .svhs = 3, | 1071 | .svhs = 3, |
1123 | .gpiomask = 0xAA0000, | 1072 | .gpiomask = 0xAA0000, |
1124 | .muxsel = { 2,3,1,1,-1 }, | 1073 | .muxsel = { 2, 3, 1, 1, -1 }, |
1125 | .digital_mode = DIGITAL_MODE_CAMERA, | 1074 | /* .digital_mode= DIGITAL_MODE_CAMERA, */ |
1126 | .gpiomux = { 0x20000, 0, 0x80000, 0x80000 }, | 1075 | .gpiomux = { 0x20000, 0, 0x80000, 0x80000 }, |
1127 | .gpiomute = 0xa8000, | 1076 | .gpiomute = 0xa8000, |
1128 | .no_msp34xx = 1, | 1077 | .no_msp34xx = 1, |
1129 | .pll = PLL_28, | 1078 | .pll = PLL_28, |
1130 | .tuner_type = TUNER_PHILIPS_PAL_I, | 1079 | .tuner_type = TUNER_PHILIPS_PAL_I, |
1131 | .tuner_addr = ADDR_UNSET, | 1080 | .tuner_addr = ADDR_UNSET, |
1132 | .radio_addr = ADDR_UNSET, | ||
1133 | .has_remote = 1, | 1081 | .has_remote = 1, |
1134 | /* GPIO wiring: (different from Rev.4C !) | 1082 | /* GPIO wiring: (different from Rev.4C !) |
1135 | GPIO17: U4.A0 (first hef4052bt) | 1083 | GPIO17: U4.A0 (first hef4052bt) |
@@ -1144,7 +1092,7 @@ struct tvcard bttv_tvcards[] = { | |||
1144 | [BTTV_BOARD_EAGLE] = { | 1092 | [BTTV_BOARD_EAGLE] = { |
1145 | .name = "Eagle Wireless Capricorn2 (bt878A)", | 1093 | .name = "Eagle Wireless Capricorn2 (bt878A)", |
1146 | .video_inputs = 4, | 1094 | .video_inputs = 4, |
1147 | .audio_inputs = 1, | 1095 | /* .audio_inputs= 1, */ |
1148 | .svhs = 2, | 1096 | .svhs = 2, |
1149 | .gpiomask = 7, | 1097 | .gpiomask = 7, |
1150 | .muxsel = { 2, 0, 1, 1 }, | 1098 | .muxsel = { 2, 0, 1, 1 }, |
@@ -1153,7 +1101,6 @@ struct tvcard bttv_tvcards[] = { | |||
1153 | .pll = PLL_28, | 1101 | .pll = PLL_28, |
1154 | .tuner_type = UNSET /* TUNER_ALPS_TMDH2_NTSC */, | 1102 | .tuner_type = UNSET /* TUNER_ALPS_TMDH2_NTSC */, |
1155 | .tuner_addr = ADDR_UNSET, | 1103 | .tuner_addr = ADDR_UNSET, |
1156 | .radio_addr = ADDR_UNSET, | ||
1157 | }, | 1104 | }, |
1158 | 1105 | ||
1159 | /* ---- card 0x34 ---------------------------------- */ | 1106 | /* ---- card 0x34 ---------------------------------- */ |
@@ -1161,7 +1108,7 @@ struct tvcard bttv_tvcards[] = { | |||
1161 | /* David Härdeman <david@2gen.com> */ | 1108 | /* David Härdeman <david@2gen.com> */ |
1162 | .name = "Pinnacle PCTV Studio Pro", | 1109 | .name = "Pinnacle PCTV Studio Pro", |
1163 | .video_inputs = 4, | 1110 | .video_inputs = 4, |
1164 | .audio_inputs = 1, | 1111 | /* .audio_inputs= 1, */ |
1165 | .svhs = 3, | 1112 | .svhs = 3, |
1166 | .gpiomask = 0x03000F, | 1113 | .gpiomask = 0x03000F, |
1167 | .muxsel = { 2, 3, 1, 1 }, | 1114 | .muxsel = { 2, 3, 1, 1 }, |
@@ -1180,14 +1127,13 @@ struct tvcard bttv_tvcards[] = { | |||
1180 | .pll = PLL_28, | 1127 | .pll = PLL_28, |
1181 | .tuner_type = UNSET, | 1128 | .tuner_type = UNSET, |
1182 | .tuner_addr = ADDR_UNSET, | 1129 | .tuner_addr = ADDR_UNSET, |
1183 | .radio_addr = ADDR_UNSET, | ||
1184 | }, | 1130 | }, |
1185 | [BTTV_BOARD_TVIEW_RDS_FM] = { | 1131 | [BTTV_BOARD_TVIEW_RDS_FM] = { |
1186 | /* Claas Langbehn <claas@bigfoot.com>, | 1132 | /* Claas Langbehn <claas@bigfoot.com>, |
1187 | Sven Grothklags <sven@upb.de> */ | 1133 | Sven Grothklags <sven@upb.de> */ |
1188 | .name = "Typhoon TView RDS + FM Stereo / KNC1 TV Station RDS", | 1134 | .name = "Typhoon TView RDS + FM Stereo / KNC1 TV Station RDS", |
1189 | .video_inputs = 4, | 1135 | .video_inputs = 4, |
1190 | .audio_inputs = 3, | 1136 | /* .audio_inputs= 3, */ |
1191 | .svhs = 2, | 1137 | .svhs = 2, |
1192 | .gpiomask = 0x1c, | 1138 | .gpiomask = 0x1c, |
1193 | .muxsel = { 2, 3, 1, 1 }, | 1139 | .muxsel = { 2, 3, 1, 1 }, |
@@ -1197,7 +1143,6 @@ struct tvcard bttv_tvcards[] = { | |||
1197 | .pll = PLL_28, | 1143 | .pll = PLL_28, |
1198 | .tuner_type = TUNER_PHILIPS_PAL, | 1144 | .tuner_type = TUNER_PHILIPS_PAL, |
1199 | .tuner_addr = ADDR_UNSET, | 1145 | .tuner_addr = ADDR_UNSET, |
1200 | .radio_addr = ADDR_UNSET, | ||
1201 | .has_radio = 1, | 1146 | .has_radio = 1, |
1202 | }, | 1147 | }, |
1203 | [BTTV_BOARD_LIFETEC_9415] = { | 1148 | [BTTV_BOARD_LIFETEC_9415] = { |
@@ -1208,7 +1153,7 @@ struct tvcard bttv_tvcards[] = { | |||
1208 | options tuner type=5 */ | 1153 | options tuner type=5 */ |
1209 | .name = "Lifeview FlyVideo 2000 /FlyVideo A2/ Lifetec LT 9415 TV [LR90]", | 1154 | .name = "Lifeview FlyVideo 2000 /FlyVideo A2/ Lifetec LT 9415 TV [LR90]", |
1210 | .video_inputs = 4, | 1155 | .video_inputs = 4, |
1211 | .audio_inputs = 1, | 1156 | /* .audio_inputs= 1, */ |
1212 | .svhs = 2, | 1157 | .svhs = 2, |
1213 | .gpiomask = 0x18e0, | 1158 | .gpiomask = 0x18e0, |
1214 | .muxsel = { 2, 3, 1, 1 }, | 1159 | .muxsel = { 2, 3, 1, 1 }, |
@@ -1221,14 +1166,13 @@ struct tvcard bttv_tvcards[] = { | |||
1221 | .pll = PLL_28, | 1166 | .pll = PLL_28, |
1222 | .tuner_type = UNSET, | 1167 | .tuner_type = UNSET, |
1223 | .tuner_addr = ADDR_UNSET, | 1168 | .tuner_addr = ADDR_UNSET, |
1224 | .radio_addr = ADDR_UNSET, | ||
1225 | }, | 1169 | }, |
1226 | [BTTV_BOARD_BESTBUY_EASYTV] = { | 1170 | [BTTV_BOARD_BESTBUY_EASYTV] = { |
1227 | /* Miguel Angel Alvarez <maacruz@navegalia.com> | 1171 | /* Miguel Angel Alvarez <maacruz@navegalia.com> |
1228 | old Easy TV BT848 version (model CPH031) */ | 1172 | old Easy TV BT848 version (model CPH031) */ |
1229 | .name = "Askey CPH031/ BESTBUY Easy TV", | 1173 | .name = "Askey CPH031/ BESTBUY Easy TV", |
1230 | .video_inputs = 4, | 1174 | .video_inputs = 4, |
1231 | .audio_inputs = 1, | 1175 | /* .audio_inputs= 1, */ |
1232 | .svhs = 2, | 1176 | .svhs = 2, |
1233 | .gpiomask = 0xF, | 1177 | .gpiomask = 0xF, |
1234 | .muxsel = { 2, 3, 1, 0 }, | 1178 | .muxsel = { 2, 3, 1, 0 }, |
@@ -1238,7 +1182,6 @@ struct tvcard bttv_tvcards[] = { | |||
1238 | .pll = PLL_28, | 1182 | .pll = PLL_28, |
1239 | .tuner_type = TUNER_TEMIC_PAL, | 1183 | .tuner_type = TUNER_TEMIC_PAL, |
1240 | .tuner_addr = ADDR_UNSET, | 1184 | .tuner_addr = ADDR_UNSET, |
1241 | .radio_addr = ADDR_UNSET, | ||
1242 | }, | 1185 | }, |
1243 | 1186 | ||
1244 | /* ---- card 0x38 ---------------------------------- */ | 1187 | /* ---- card 0x38 ---------------------------------- */ |
@@ -1246,7 +1189,7 @@ struct tvcard bttv_tvcards[] = { | |||
1246 | /* Gordon Heydon <gjheydon@bigfoot.com ('98) */ | 1189 | /* Gordon Heydon <gjheydon@bigfoot.com ('98) */ |
1247 | .name = "Lifeview FlyVideo 98FM LR50", | 1190 | .name = "Lifeview FlyVideo 98FM LR50", |
1248 | .video_inputs = 4, | 1191 | .video_inputs = 4, |
1249 | .audio_inputs = 3, | 1192 | /* .audio_inputs= 3, */ |
1250 | .svhs = 2, | 1193 | .svhs = 2, |
1251 | .gpiomask = 0x1800, | 1194 | .gpiomask = 0x1800, |
1252 | .muxsel = { 2, 3, 1, 1 }, | 1195 | .muxsel = { 2, 3, 1, 1 }, |
@@ -1255,7 +1198,6 @@ struct tvcard bttv_tvcards[] = { | |||
1255 | .pll = PLL_28, | 1198 | .pll = PLL_28, |
1256 | .tuner_type = TUNER_PHILIPS_PAL, | 1199 | .tuner_type = TUNER_PHILIPS_PAL, |
1257 | .tuner_addr = ADDR_UNSET, | 1200 | .tuner_addr = ADDR_UNSET, |
1258 | .radio_addr = ADDR_UNSET, | ||
1259 | }, | 1201 | }, |
1260 | /* This is the ultimate cheapo capture card | 1202 | /* This is the ultimate cheapo capture card |
1261 | * just a BT848A on a small PCB! | 1203 | * just a BT848A on a small PCB! |
@@ -1263,7 +1205,7 @@ struct tvcard bttv_tvcards[] = { | |||
1263 | [BTTV_BOARD_GRANDTEC] = { | 1205 | [BTTV_BOARD_GRANDTEC] = { |
1264 | .name = "GrandTec 'Grand Video Capture' (Bt848)", | 1206 | .name = "GrandTec 'Grand Video Capture' (Bt848)", |
1265 | .video_inputs = 2, | 1207 | .video_inputs = 2, |
1266 | .audio_inputs = 0, | 1208 | /* .audio_inputs= 0, */ |
1267 | .svhs = 1, | 1209 | .svhs = 1, |
1268 | .gpiomask = 0, | 1210 | .gpiomask = 0, |
1269 | .muxsel = { 3, 1 }, | 1211 | .muxsel = { 3, 1 }, |
@@ -1273,13 +1215,12 @@ struct tvcard bttv_tvcards[] = { | |||
1273 | .pll = PLL_35, | 1215 | .pll = PLL_35, |
1274 | .tuner_type = TUNER_ABSENT, | 1216 | .tuner_type = TUNER_ABSENT, |
1275 | .tuner_addr = ADDR_UNSET, | 1217 | .tuner_addr = ADDR_UNSET, |
1276 | .radio_addr = ADDR_UNSET, | ||
1277 | }, | 1218 | }, |
1278 | [BTTV_BOARD_ASKEY_CPH060] = { | 1219 | [BTTV_BOARD_ASKEY_CPH060] = { |
1279 | /* Daniel Herrington <daniel.herrington@home.com> */ | 1220 | /* Daniel Herrington <daniel.herrington@home.com> */ |
1280 | .name = "Askey CPH060/ Phoebe TV Master Only (No FM)", | 1221 | .name = "Askey CPH060/ Phoebe TV Master Only (No FM)", |
1281 | .video_inputs = 3, | 1222 | .video_inputs = 3, |
1282 | .audio_inputs = 1, | 1223 | /* .audio_inputs= 1, */ |
1283 | .svhs = 2, | 1224 | .svhs = 2, |
1284 | .gpiomask = 0xe00, | 1225 | .gpiomask = 0xe00, |
1285 | .muxsel = { 2, 3, 1, 1}, | 1226 | .muxsel = { 2, 3, 1, 1}, |
@@ -1289,13 +1230,12 @@ struct tvcard bttv_tvcards[] = { | |||
1289 | .pll = PLL_28, | 1230 | .pll = PLL_28, |
1290 | .tuner_type = TUNER_TEMIC_4036FY5_NTSC, | 1231 | .tuner_type = TUNER_TEMIC_4036FY5_NTSC, |
1291 | .tuner_addr = ADDR_UNSET, | 1232 | .tuner_addr = ADDR_UNSET, |
1292 | .radio_addr = ADDR_UNSET, | ||
1293 | }, | 1233 | }, |
1294 | [BTTV_BOARD_ASKEY_CPH03X] = { | 1234 | [BTTV_BOARD_ASKEY_CPH03X] = { |
1295 | /* Matti Mottus <mottus@physic.ut.ee> */ | 1235 | /* Matti Mottus <mottus@physic.ut.ee> */ |
1296 | .name = "Askey CPH03x TV Capturer", | 1236 | .name = "Askey CPH03x TV Capturer", |
1297 | .video_inputs = 4, | 1237 | .video_inputs = 4, |
1298 | .audio_inputs = 1, | 1238 | /* .audio_inputs= 1, */ |
1299 | .svhs = 2, | 1239 | .svhs = 2, |
1300 | .gpiomask = 0x03000F, | 1240 | .gpiomask = 0x03000F, |
1301 | .muxsel = { 2, 3, 1, 0 }, | 1241 | .muxsel = { 2, 3, 1, 0 }, |
@@ -1304,7 +1244,6 @@ struct tvcard bttv_tvcards[] = { | |||
1304 | .pll = PLL_28, | 1244 | .pll = PLL_28, |
1305 | .tuner_type = TUNER_TEMIC_PAL, | 1245 | .tuner_type = TUNER_TEMIC_PAL, |
1306 | .tuner_addr = ADDR_UNSET, | 1246 | .tuner_addr = ADDR_UNSET, |
1307 | .radio_addr = ADDR_UNSET, | ||
1308 | }, | 1247 | }, |
1309 | 1248 | ||
1310 | /* ---- card 0x3c ---------------------------------- */ | 1249 | /* ---- card 0x3c ---------------------------------- */ |
@@ -1312,8 +1251,8 @@ struct tvcard bttv_tvcards[] = { | |||
1312 | /* Philip Blundell <philb@gnu.org> */ | 1251 | /* Philip Blundell <philb@gnu.org> */ |
1313 | .name = "Modular Technology MM100PCTV", | 1252 | .name = "Modular Technology MM100PCTV", |
1314 | .video_inputs = 2, | 1253 | .video_inputs = 2, |
1315 | .audio_inputs = 2, | 1254 | /* .audio_inputs= 2, */ |
1316 | .svhs = UNSET, | 1255 | .svhs = NO_SVHS, |
1317 | .gpiomask = 11, | 1256 | .gpiomask = 11, |
1318 | .muxsel = { 2, 3, 1, 1 }, | 1257 | .muxsel = { 2, 3, 1, 1 }, |
1319 | .gpiomux = { 2, 0, 0, 1 }, | 1258 | .gpiomux = { 2, 0, 0, 1 }, |
@@ -1321,13 +1260,12 @@ struct tvcard bttv_tvcards[] = { | |||
1321 | .pll = PLL_35, | 1260 | .pll = PLL_35, |
1322 | .tuner_type = TUNER_TEMIC_PAL, | 1261 | .tuner_type = TUNER_TEMIC_PAL, |
1323 | .tuner_addr = ADDR_UNSET, | 1262 | .tuner_addr = ADDR_UNSET, |
1324 | .radio_addr = ADDR_UNSET, | ||
1325 | }, | 1263 | }, |
1326 | [BTTV_BOARD_GMV1] = { | 1264 | [BTTV_BOARD_GMV1] = { |
1327 | /* Adrian Cox <adrian@humboldt.co.uk */ | 1265 | /* Adrian Cox <adrian@humboldt.co.uk */ |
1328 | .name = "AG Electronics GMV1", | 1266 | .name = "AG Electronics GMV1", |
1329 | .video_inputs = 2, | 1267 | .video_inputs = 2, |
1330 | .audio_inputs = 0, | 1268 | /* .audio_inputs= 0, */ |
1331 | .svhs = 1, | 1269 | .svhs = 1, |
1332 | .gpiomask = 0xF, | 1270 | .gpiomask = 0xF, |
1333 | .muxsel = { 2, 2 }, | 1271 | .muxsel = { 2, 2 }, |
@@ -1337,7 +1275,6 @@ struct tvcard bttv_tvcards[] = { | |||
1337 | .pll = PLL_28, | 1275 | .pll = PLL_28, |
1338 | .tuner_type = TUNER_ABSENT, | 1276 | .tuner_type = TUNER_ABSENT, |
1339 | .tuner_addr = ADDR_UNSET, | 1277 | .tuner_addr = ADDR_UNSET, |
1340 | .radio_addr = ADDR_UNSET, | ||
1341 | }, | 1278 | }, |
1342 | [BTTV_BOARD_BESTBUY_EASYTV2] = { | 1279 | [BTTV_BOARD_BESTBUY_EASYTV2] = { |
1343 | /* Miguel Angel Alvarez <maacruz@navegalia.com> | 1280 | /* Miguel Angel Alvarez <maacruz@navegalia.com> |
@@ -1345,7 +1282,7 @@ struct tvcard bttv_tvcards[] = { | |||
1345 | special thanks to Informatica Mieres for providing the card */ | 1282 | special thanks to Informatica Mieres for providing the card */ |
1346 | .name = "Askey CPH061/ BESTBUY Easy TV (bt878)", | 1283 | .name = "Askey CPH061/ BESTBUY Easy TV (bt878)", |
1347 | .video_inputs = 3, | 1284 | .video_inputs = 3, |
1348 | .audio_inputs = 2, | 1285 | /* .audio_inputs= 2, */ |
1349 | .svhs = 2, | 1286 | .svhs = 2, |
1350 | .gpiomask = 0xFF, | 1287 | .gpiomask = 0xFF, |
1351 | .muxsel = { 2, 3, 1, 0 }, | 1288 | .muxsel = { 2, 3, 1, 0 }, |
@@ -1355,13 +1292,12 @@ struct tvcard bttv_tvcards[] = { | |||
1355 | .pll = PLL_28, | 1292 | .pll = PLL_28, |
1356 | .tuner_type = TUNER_PHILIPS_PAL, | 1293 | .tuner_type = TUNER_PHILIPS_PAL, |
1357 | .tuner_addr = ADDR_UNSET, | 1294 | .tuner_addr = ADDR_UNSET, |
1358 | .radio_addr = ADDR_UNSET, | ||
1359 | }, | 1295 | }, |
1360 | [BTTV_BOARD_ATI_TVWONDER] = { | 1296 | [BTTV_BOARD_ATI_TVWONDER] = { |
1361 | /* Lukas Gebauer <geby@volny.cz> */ | 1297 | /* Lukas Gebauer <geby@volny.cz> */ |
1362 | .name = "ATI TV-Wonder", | 1298 | .name = "ATI TV-Wonder", |
1363 | .video_inputs = 3, | 1299 | .video_inputs = 3, |
1364 | .audio_inputs = 1, | 1300 | /* .audio_inputs= 1, */ |
1365 | .svhs = 2, | 1301 | .svhs = 2, |
1366 | .gpiomask = 0xf03f, | 1302 | .gpiomask = 0xf03f, |
1367 | .muxsel = { 2, 3, 1, 0 }, | 1303 | .muxsel = { 2, 3, 1, 0 }, |
@@ -1370,7 +1306,6 @@ struct tvcard bttv_tvcards[] = { | |||
1370 | .pll = PLL_28, | 1306 | .pll = PLL_28, |
1371 | .tuner_type = TUNER_TEMIC_4006FN5_MULTI_PAL, | 1307 | .tuner_type = TUNER_TEMIC_4006FN5_MULTI_PAL, |
1372 | .tuner_addr = ADDR_UNSET, | 1308 | .tuner_addr = ADDR_UNSET, |
1373 | .radio_addr = ADDR_UNSET, | ||
1374 | }, | 1309 | }, |
1375 | 1310 | ||
1376 | /* ---- card 0x40 ---------------------------------- */ | 1311 | /* ---- card 0x40 ---------------------------------- */ |
@@ -1378,8 +1313,8 @@ struct tvcard bttv_tvcards[] = { | |||
1378 | /* Lukas Gebauer <geby@volny.cz> */ | 1313 | /* Lukas Gebauer <geby@volny.cz> */ |
1379 | .name = "ATI TV-Wonder VE", | 1314 | .name = "ATI TV-Wonder VE", |
1380 | .video_inputs = 2, | 1315 | .video_inputs = 2, |
1381 | .audio_inputs = 1, | 1316 | /* .audio_inputs= 1, */ |
1382 | .svhs = UNSET, | 1317 | .svhs = NO_SVHS, |
1383 | .gpiomask = 1, | 1318 | .gpiomask = 1, |
1384 | .muxsel = { 2, 3, 0, 1 }, | 1319 | .muxsel = { 2, 3, 0, 1 }, |
1385 | .gpiomux = { 0, 0, 1, 0 }, | 1320 | .gpiomux = { 0, 0, 1, 0 }, |
@@ -1387,13 +1322,12 @@ struct tvcard bttv_tvcards[] = { | |||
1387 | .pll = PLL_28, | 1322 | .pll = PLL_28, |
1388 | .tuner_type = TUNER_TEMIC_4006FN5_MULTI_PAL, | 1323 | .tuner_type = TUNER_TEMIC_4006FN5_MULTI_PAL, |
1389 | .tuner_addr = ADDR_UNSET, | 1324 | .tuner_addr = ADDR_UNSET, |
1390 | .radio_addr = ADDR_UNSET, | ||
1391 | }, | 1325 | }, |
1392 | [BTTV_BOARD_FLYVIDEO2000] = { | 1326 | [BTTV_BOARD_FLYVIDEO2000] = { |
1393 | /* DeeJay <deejay@westel900.net (2000S) */ | 1327 | /* DeeJay <deejay@westel900.net (2000S) */ |
1394 | .name = "Lifeview FlyVideo 2000S LR90", | 1328 | .name = "Lifeview FlyVideo 2000S LR90", |
1395 | .video_inputs = 3, | 1329 | .video_inputs = 3, |
1396 | .audio_inputs = 3, | 1330 | /* .audio_inputs= 3, */ |
1397 | .svhs = 2, | 1331 | .svhs = 2, |
1398 | .gpiomask = 0x18e0, | 1332 | .gpiomask = 0x18e0, |
1399 | .muxsel = { 2, 3, 0, 1 }, | 1333 | .muxsel = { 2, 3, 0, 1 }, |
@@ -1409,12 +1343,11 @@ struct tvcard bttv_tvcards[] = { | |||
1409 | .pll = PLL_28, | 1343 | .pll = PLL_28, |
1410 | .tuner_type = TUNER_PHILIPS_PAL, | 1344 | .tuner_type = TUNER_PHILIPS_PAL, |
1411 | .tuner_addr = ADDR_UNSET, | 1345 | .tuner_addr = ADDR_UNSET, |
1412 | .radio_addr = ADDR_UNSET, | ||
1413 | }, | 1346 | }, |
1414 | [BTTV_BOARD_TERRATVALUER] = { | 1347 | [BTTV_BOARD_TERRATVALUER] = { |
1415 | .name = "Terratec TValueRadio", | 1348 | .name = "Terratec TValueRadio", |
1416 | .video_inputs = 3, | 1349 | .video_inputs = 3, |
1417 | .audio_inputs = 1, | 1350 | /* .audio_inputs= 1, */ |
1418 | .svhs = 2, | 1351 | .svhs = 2, |
1419 | .gpiomask = 0xffff00, | 1352 | .gpiomask = 0xffff00, |
1420 | .muxsel = { 2, 3, 1, 1 }, | 1353 | .muxsel = { 2, 3, 1, 1 }, |
@@ -1424,14 +1357,13 @@ struct tvcard bttv_tvcards[] = { | |||
1424 | .pll = PLL_28, | 1357 | .pll = PLL_28, |
1425 | .tuner_type = TUNER_PHILIPS_PAL, | 1358 | .tuner_type = TUNER_PHILIPS_PAL, |
1426 | .tuner_addr = ADDR_UNSET, | 1359 | .tuner_addr = ADDR_UNSET, |
1427 | .radio_addr = ADDR_UNSET, | ||
1428 | .has_radio = 1, | 1360 | .has_radio = 1, |
1429 | }, | 1361 | }, |
1430 | [BTTV_BOARD_GVBCTV4PCI] = { | 1362 | [BTTV_BOARD_GVBCTV4PCI] = { |
1431 | /* TANAKA Kei <peg00625@nifty.com> */ | 1363 | /* TANAKA Kei <peg00625@nifty.com> */ |
1432 | .name = "IODATA GV-BCTV4/PCI", | 1364 | .name = "IODATA GV-BCTV4/PCI", |
1433 | .video_inputs = 3, | 1365 | .video_inputs = 3, |
1434 | .audio_inputs = 1, | 1366 | /* .audio_inputs= 1, */ |
1435 | .svhs = 2, | 1367 | .svhs = 2, |
1436 | .gpiomask = 0x010f00, | 1368 | .gpiomask = 0x010f00, |
1437 | .muxsel = {2, 3, 0, 0 }, | 1369 | .muxsel = {2, 3, 0, 0 }, |
@@ -1440,7 +1372,6 @@ struct tvcard bttv_tvcards[] = { | |||
1440 | .pll = PLL_28, | 1372 | .pll = PLL_28, |
1441 | .tuner_type = TUNER_SHARP_2U5JF5540_NTSC, | 1373 | .tuner_type = TUNER_SHARP_2U5JF5540_NTSC, |
1442 | .tuner_addr = ADDR_UNSET, | 1374 | .tuner_addr = ADDR_UNSET, |
1443 | .radio_addr = ADDR_UNSET, | ||
1444 | .audio_mode_gpio= gvbctv3pci_audio, | 1375 | .audio_mode_gpio= gvbctv3pci_audio, |
1445 | }, | 1376 | }, |
1446 | 1377 | ||
@@ -1450,8 +1381,8 @@ struct tvcard bttv_tvcards[] = { | |||
1450 | /* try "insmod msp3400 simple=0" if you have | 1381 | /* try "insmod msp3400 simple=0" if you have |
1451 | * sound problems with this card. */ | 1382 | * sound problems with this card. */ |
1452 | .video_inputs = 4, | 1383 | .video_inputs = 4, |
1453 | .audio_inputs = 1, | 1384 | /* .audio_inputs= 1, */ |
1454 | .svhs = UNSET, | 1385 | .svhs = NO_SVHS, |
1455 | .gpiomask = 0x4f8a00, | 1386 | .gpiomask = 0x4f8a00, |
1456 | /* 0x100000: 1=MSP enabled (0=disable again) | 1387 | /* 0x100000: 1=MSP enabled (0=disable again) |
1457 | * 0x010000: Connected to "S0" on tda9880 (0=Pal/BG, 1=NTSC) */ | 1388 | * 0x010000: Connected to "S0" on tda9880 (0=Pal/BG, 1=NTSC) */ |
@@ -1462,7 +1393,6 @@ struct tvcard bttv_tvcards[] = { | |||
1462 | .muxsel = { 2, 3 ,0 ,1 }, | 1393 | .muxsel = { 2, 3 ,0 ,1 }, |
1463 | .tuner_type = TUNER_MT2032, | 1394 | .tuner_type = TUNER_MT2032, |
1464 | .tuner_addr = ADDR_UNSET, | 1395 | .tuner_addr = ADDR_UNSET, |
1465 | .radio_addr = ADDR_UNSET, | ||
1466 | .pll = PLL_28, | 1396 | .pll = PLL_28, |
1467 | .has_radio = 1, | 1397 | .has_radio = 1, |
1468 | }, | 1398 | }, |
@@ -1471,8 +1401,8 @@ struct tvcard bttv_tvcards[] = { | |||
1471 | /* try "insmod msp3400 simple=0" if you have | 1401 | /* try "insmod msp3400 simple=0" if you have |
1472 | * sound problems with this card. */ | 1402 | * sound problems with this card. */ |
1473 | .video_inputs = 4, | 1403 | .video_inputs = 4, |
1474 | .audio_inputs = 1, | 1404 | /* .audio_inputs= 1, */ |
1475 | .svhs = UNSET, | 1405 | .svhs = NO_SVHS, |
1476 | .gpiomask = 0x4f8a00, | 1406 | .gpiomask = 0x4f8a00, |
1477 | /* 0x100000: 1=MSP enabled (0=disable again) | 1407 | /* 0x100000: 1=MSP enabled (0=disable again) |
1478 | * 0x010000: Connected to "S0" on tda9880 (0=Pal/BG, 1=NTSC) */ | 1408 | * 0x010000: Connected to "S0" on tda9880 (0=Pal/BG, 1=NTSC) */ |
@@ -1483,7 +1413,6 @@ struct tvcard bttv_tvcards[] = { | |||
1483 | .muxsel = { 2, 3 ,0 ,1 }, | 1413 | .muxsel = { 2, 3 ,0 ,1 }, |
1484 | .tuner_type = TUNER_MT2032, | 1414 | .tuner_type = TUNER_MT2032, |
1485 | .tuner_addr = ADDR_UNSET, | 1415 | .tuner_addr = ADDR_UNSET, |
1486 | .radio_addr = ADDR_UNSET, | ||
1487 | .pll = PLL_28, | 1416 | .pll = PLL_28, |
1488 | .has_radio = 1, | 1417 | .has_radio = 1, |
1489 | }, | 1418 | }, |
@@ -1491,10 +1420,9 @@ struct tvcard bttv_tvcards[] = { | |||
1491 | /* Philip Blundell <pb@nexus.co.uk> */ | 1420 | /* Philip Blundell <pb@nexus.co.uk> */ |
1492 | .name = "Active Imaging AIMMS", | 1421 | .name = "Active Imaging AIMMS", |
1493 | .video_inputs = 1, | 1422 | .video_inputs = 1, |
1494 | .audio_inputs = 0, | 1423 | /* .audio_inputs= 0, */ |
1495 | .tuner_type = TUNER_ABSENT, | 1424 | .tuner_type = TUNER_ABSENT, |
1496 | .tuner_addr = ADDR_UNSET, | 1425 | .tuner_addr = ADDR_UNSET, |
1497 | .radio_addr = ADDR_UNSET, | ||
1498 | .pll = PLL_28, | 1426 | .pll = PLL_28, |
1499 | .muxsel = { 2 }, | 1427 | .muxsel = { 2 }, |
1500 | .gpiomask = 0 | 1428 | .gpiomask = 0 |
@@ -1503,7 +1431,7 @@ struct tvcard bttv_tvcards[] = { | |||
1503 | /* Tomasz Pyra <hellfire@sedez.iq.pl> */ | 1431 | /* Tomasz Pyra <hellfire@sedez.iq.pl> */ |
1504 | .name = "Prolink Pixelview PV-BT878P+ (Rev.4C,8E)", | 1432 | .name = "Prolink Pixelview PV-BT878P+ (Rev.4C,8E)", |
1505 | .video_inputs = 3, | 1433 | .video_inputs = 3, |
1506 | .audio_inputs = 4, | 1434 | /* .audio_inputs= 4, */ |
1507 | .svhs = 2, | 1435 | .svhs = 2, |
1508 | .gpiomask = 15, | 1436 | .gpiomask = 15, |
1509 | .muxsel = { 2, 3, 1, 1 }, | 1437 | .muxsel = { 2, 3, 1, 1 }, |
@@ -1513,7 +1441,6 @@ struct tvcard bttv_tvcards[] = { | |||
1513 | .pll = PLL_28, | 1441 | .pll = PLL_28, |
1514 | .tuner_type = TUNER_LG_PAL_I_FM, | 1442 | .tuner_type = TUNER_LG_PAL_I_FM, |
1515 | .tuner_addr = ADDR_UNSET, | 1443 | .tuner_addr = ADDR_UNSET, |
1516 | .radio_addr = ADDR_UNSET, | ||
1517 | .has_remote = 1, | 1444 | .has_remote = 1, |
1518 | /* GPIO wiring: | 1445 | /* GPIO wiring: |
1519 | GPIO0: U4.A0 (hef4052bt) | 1446 | GPIO0: U4.A0 (hef4052bt) |
@@ -1526,14 +1453,13 @@ struct tvcard bttv_tvcards[] = { | |||
1526 | [BTTV_BOARD_FLYVIDEO98EZ] = { | 1453 | [BTTV_BOARD_FLYVIDEO98EZ] = { |
1527 | .name = "Lifeview FlyVideo 98EZ (capture only) LR51", | 1454 | .name = "Lifeview FlyVideo 98EZ (capture only) LR51", |
1528 | .video_inputs = 4, | 1455 | .video_inputs = 4, |
1529 | .audio_inputs = 0, | 1456 | /* .audio_inputs= 0, */ |
1530 | .svhs = 2, | 1457 | .svhs = 2, |
1531 | .muxsel = { 2, 3, 1, 1 }, /* AV1, AV2, SVHS, CVid adapter on SVHS */ | 1458 | .muxsel = { 2, 3, 1, 1 }, /* AV1, AV2, SVHS, CVid adapter on SVHS */ |
1532 | .pll = PLL_28, | 1459 | .pll = PLL_28, |
1533 | .no_msp34xx = 1, | 1460 | .no_msp34xx = 1, |
1534 | .tuner_type = TUNER_ABSENT, | 1461 | .tuner_type = TUNER_ABSENT, |
1535 | .tuner_addr = ADDR_UNSET, | 1462 | .tuner_addr = ADDR_UNSET, |
1536 | .radio_addr = ADDR_UNSET, | ||
1537 | }, | 1463 | }, |
1538 | 1464 | ||
1539 | /* ---- card 0x48 ---------------------------------- */ | 1465 | /* ---- card 0x48 ---------------------------------- */ |
@@ -1541,7 +1467,7 @@ struct tvcard bttv_tvcards[] = { | |||
1541 | /* Dariusz Kowalewski <darekk@automex.pl> */ | 1467 | /* Dariusz Kowalewski <darekk@automex.pl> */ |
1542 | .name = "Prolink Pixelview PV-BT878P+9B (PlayTV Pro rev.9B FM+NICAM)", | 1468 | .name = "Prolink Pixelview PV-BT878P+9B (PlayTV Pro rev.9B FM+NICAM)", |
1543 | .video_inputs = 4, | 1469 | .video_inputs = 4, |
1544 | .audio_inputs = 1, | 1470 | /* .audio_inputs= 1, */ |
1545 | .svhs = 2, | 1471 | .svhs = 2, |
1546 | .gpiomask = 0x3f, | 1472 | .gpiomask = 0x3f, |
1547 | .muxsel = { 2, 3, 1, 1 }, | 1473 | .muxsel = { 2, 3, 1, 1 }, |
@@ -1553,7 +1479,6 @@ struct tvcard bttv_tvcards[] = { | |||
1553 | .pll = PLL_28, | 1479 | .pll = PLL_28, |
1554 | .tuner_type = TUNER_PHILIPS_PAL, | 1480 | .tuner_type = TUNER_PHILIPS_PAL, |
1555 | .tuner_addr = ADDR_UNSET, | 1481 | .tuner_addr = ADDR_UNSET, |
1556 | .radio_addr = ADDR_UNSET, | ||
1557 | .audio_mode_gpio= pvbt878p9b_audio, /* Note: not all cards have stereo */ | 1482 | .audio_mode_gpio= pvbt878p9b_audio, /* Note: not all cards have stereo */ |
1558 | .has_radio = 1, /* Note: not all cards have radio */ | 1483 | .has_radio = 1, /* Note: not all cards have radio */ |
1559 | .has_remote = 1, | 1484 | .has_remote = 1, |
@@ -1570,7 +1495,7 @@ struct tvcard bttv_tvcards[] = { | |||
1570 | /* you must jumper JP5 for the card to work */ | 1495 | /* you must jumper JP5 for the card to work */ |
1571 | .name = "Sensoray 311", | 1496 | .name = "Sensoray 311", |
1572 | .video_inputs = 5, | 1497 | .video_inputs = 5, |
1573 | .audio_inputs = 0, | 1498 | /* .audio_inputs= 0, */ |
1574 | .svhs = 4, | 1499 | .svhs = 4, |
1575 | .gpiomask = 0, | 1500 | .gpiomask = 0, |
1576 | .muxsel = { 2, 3, 1, 0, 0 }, | 1501 | .muxsel = { 2, 3, 1, 0, 0 }, |
@@ -1578,14 +1503,13 @@ struct tvcard bttv_tvcards[] = { | |||
1578 | .needs_tvaudio = 0, | 1503 | .needs_tvaudio = 0, |
1579 | .tuner_type = TUNER_ABSENT, | 1504 | .tuner_type = TUNER_ABSENT, |
1580 | .tuner_addr = ADDR_UNSET, | 1505 | .tuner_addr = ADDR_UNSET, |
1581 | .radio_addr = ADDR_UNSET, | ||
1582 | }, | 1506 | }, |
1583 | [BTTV_BOARD_RV605] = { | 1507 | [BTTV_BOARD_RV605] = { |
1584 | /* Miguel Freitas <miguel@cetuc.puc-rio.br> */ | 1508 | /* Miguel Freitas <miguel@cetuc.puc-rio.br> */ |
1585 | .name = "RemoteVision MX (RV605)", | 1509 | .name = "RemoteVision MX (RV605)", |
1586 | .video_inputs = 16, | 1510 | .video_inputs = 16, |
1587 | .audio_inputs = 0, | 1511 | /* .audio_inputs= 0, */ |
1588 | .svhs = UNSET, | 1512 | .svhs = NO_SVHS, |
1589 | .gpiomask = 0x00, | 1513 | .gpiomask = 0x00, |
1590 | .gpiomask2 = 0x07ff, | 1514 | .gpiomask2 = 0x07ff, |
1591 | .muxsel = { 0x33, 0x13, 0x23, 0x43, 0xf3, 0x73, 0xe3, 0x03, | 1515 | .muxsel = { 0x33, 0x13, 0x23, 0x43, 0xf3, 0x73, 0xe3, 0x03, |
@@ -1594,13 +1518,12 @@ struct tvcard bttv_tvcards[] = { | |||
1594 | .no_tda9875 = 1, | 1518 | .no_tda9875 = 1, |
1595 | .tuner_type = TUNER_ABSENT, | 1519 | .tuner_type = TUNER_ABSENT, |
1596 | .tuner_addr = ADDR_UNSET, | 1520 | .tuner_addr = ADDR_UNSET, |
1597 | .radio_addr = ADDR_UNSET, | ||
1598 | .muxsel_hook = rv605_muxsel, | 1521 | .muxsel_hook = rv605_muxsel, |
1599 | }, | 1522 | }, |
1600 | [BTTV_BOARD_POWERCLR_MTV878] = { | 1523 | [BTTV_BOARD_POWERCLR_MTV878] = { |
1601 | .name = "Powercolor MTV878/ MTV878R/ MTV878F", | 1524 | .name = "Powercolor MTV878/ MTV878R/ MTV878F", |
1602 | .video_inputs = 3, | 1525 | .video_inputs = 3, |
1603 | .audio_inputs = 2, | 1526 | /* .audio_inputs= 2, */ |
1604 | .svhs = 2, | 1527 | .svhs = 2, |
1605 | .gpiomask = 0x1C800F, /* Bit0-2: Audio select, 8-12:remote control 14:remote valid 15:remote reset */ | 1528 | .gpiomask = 0x1C800F, /* Bit0-2: Audio select, 8-12:remote control 14:remote valid 15:remote reset */ |
1606 | .muxsel = { 2, 1, 1, }, | 1529 | .muxsel = { 2, 1, 1, }, |
@@ -1609,7 +1532,6 @@ struct tvcard bttv_tvcards[] = { | |||
1609 | .needs_tvaudio = 0, | 1532 | .needs_tvaudio = 0, |
1610 | .tuner_type = TUNER_PHILIPS_PAL, | 1533 | .tuner_type = TUNER_PHILIPS_PAL, |
1611 | .tuner_addr = ADDR_UNSET, | 1534 | .tuner_addr = ADDR_UNSET, |
1612 | .radio_addr = ADDR_UNSET, | ||
1613 | .pll = PLL_28, | 1535 | .pll = PLL_28, |
1614 | .has_radio = 1, | 1536 | .has_radio = 1, |
1615 | }, | 1537 | }, |
@@ -1619,7 +1541,7 @@ struct tvcard bttv_tvcards[] = { | |||
1619 | /* Masaki Suzuki <masaki@btree.org> */ | 1541 | /* Masaki Suzuki <masaki@btree.org> */ |
1620 | .name = "Canopus WinDVR PCI (COMPAQ Presario 3524JP, 5112JP)", | 1542 | .name = "Canopus WinDVR PCI (COMPAQ Presario 3524JP, 5112JP)", |
1621 | .video_inputs = 3, | 1543 | .video_inputs = 3, |
1622 | .audio_inputs = 1, | 1544 | /* .audio_inputs= 1, */ |
1623 | .svhs = 2, | 1545 | .svhs = 2, |
1624 | .gpiomask = 0x140007, | 1546 | .gpiomask = 0x140007, |
1625 | .muxsel = { 2, 3, 1, 1 }, | 1547 | .muxsel = { 2, 3, 1, 1 }, |
@@ -1627,14 +1549,13 @@ struct tvcard bttv_tvcards[] = { | |||
1627 | .gpiomute = 4, | 1549 | .gpiomute = 4, |
1628 | .tuner_type = TUNER_PHILIPS_NTSC, | 1550 | .tuner_type = TUNER_PHILIPS_NTSC, |
1629 | .tuner_addr = ADDR_UNSET, | 1551 | .tuner_addr = ADDR_UNSET, |
1630 | .radio_addr = ADDR_UNSET, | ||
1631 | .audio_mode_gpio= windvr_audio, | 1552 | .audio_mode_gpio= windvr_audio, |
1632 | }, | 1553 | }, |
1633 | [BTTV_BOARD_GRANDTEC_MULTI] = { | 1554 | [BTTV_BOARD_GRANDTEC_MULTI] = { |
1634 | .name = "GrandTec Multi Capture Card (Bt878)", | 1555 | .name = "GrandTec Multi Capture Card (Bt878)", |
1635 | .video_inputs = 4, | 1556 | .video_inputs = 4, |
1636 | .audio_inputs = 0, | 1557 | /* .audio_inputs= 0, */ |
1637 | .svhs = UNSET, | 1558 | .svhs = NO_SVHS, |
1638 | .gpiomask = 0, | 1559 | .gpiomask = 0, |
1639 | .muxsel = { 2, 3, 1, 0 }, | 1560 | .muxsel = { 2, 3, 1, 0 }, |
1640 | .gpiomux = { 0 }, | 1561 | .gpiomux = { 0 }, |
@@ -1643,12 +1564,11 @@ struct tvcard bttv_tvcards[] = { | |||
1643 | .pll = PLL_28, | 1564 | .pll = PLL_28, |
1644 | .tuner_type = TUNER_ABSENT, | 1565 | .tuner_type = TUNER_ABSENT, |
1645 | .tuner_addr = ADDR_UNSET, | 1566 | .tuner_addr = ADDR_UNSET, |
1646 | .radio_addr = ADDR_UNSET, | ||
1647 | }, | 1567 | }, |
1648 | [BTTV_BOARD_KWORLD] = { | 1568 | [BTTV_BOARD_KWORLD] = { |
1649 | .name = "Jetway TV/Capture JW-TV878-FBK, Kworld KW-TV878RF", | 1569 | .name = "Jetway TV/Capture JW-TV878-FBK, Kworld KW-TV878RF", |
1650 | .video_inputs = 4, | 1570 | .video_inputs = 4, |
1651 | .audio_inputs = 3, | 1571 | /* .audio_inputs= 3, */ |
1652 | .svhs = 2, | 1572 | .svhs = 2, |
1653 | .gpiomask = 7, | 1573 | .gpiomask = 7, |
1654 | .muxsel = { 2, 3, 1, 1 }, /* Tuner, SVid, SVHS, SVid to SVHS connector */ | 1574 | .muxsel = { 2, 3, 1, 1 }, /* Tuner, SVid, SVHS, SVid to SVHS connector */ |
@@ -1665,7 +1585,6 @@ struct tvcard bttv_tvcards[] = { | |||
1665 | .pll = PLL_28, | 1585 | .pll = PLL_28, |
1666 | .tuner_type = TUNER_PHILIPS_PAL, | 1586 | .tuner_type = TUNER_PHILIPS_PAL, |
1667 | .tuner_addr = ADDR_UNSET, | 1587 | .tuner_addr = ADDR_UNSET, |
1668 | .radio_addr = ADDR_UNSET, | ||
1669 | /* Samsung TCPA9095PC27A (BG+DK), philips compatible, w/FM, stereo and | 1588 | /* Samsung TCPA9095PC27A (BG+DK), philips compatible, w/FM, stereo and |
1670 | radio signal strength indicators work fine. */ | 1589 | radio signal strength indicators work fine. */ |
1671 | .has_radio = 1, | 1590 | .has_radio = 1, |
@@ -1683,26 +1602,24 @@ struct tvcard bttv_tvcards[] = { | |||
1683 | /* Arthur Tetzlaff-Deas, DSP Design Ltd <software@dspdesign.com> */ | 1602 | /* Arthur Tetzlaff-Deas, DSP Design Ltd <software@dspdesign.com> */ |
1684 | .name = "DSP Design TCVIDEO", | 1603 | .name = "DSP Design TCVIDEO", |
1685 | .video_inputs = 4, | 1604 | .video_inputs = 4, |
1686 | .svhs = UNSET, | 1605 | .svhs = NO_SVHS, |
1687 | .muxsel = { 2, 3, 1, 0 }, | 1606 | .muxsel = { 2, 3, 1, 0 }, |
1688 | .pll = PLL_28, | 1607 | .pll = PLL_28, |
1689 | .tuner_type = UNSET, | 1608 | .tuner_type = UNSET, |
1690 | .tuner_addr = ADDR_UNSET, | 1609 | .tuner_addr = ADDR_UNSET, |
1691 | .radio_addr = ADDR_UNSET, | ||
1692 | }, | 1610 | }, |
1693 | 1611 | ||
1694 | /* ---- card 0x50 ---------------------------------- */ | 1612 | /* ---- card 0x50 ---------------------------------- */ |
1695 | [BTTV_BOARD_HAUPPAUGEPVR] = { | 1613 | [BTTV_BOARD_HAUPPAUGEPVR] = { |
1696 | .name = "Hauppauge WinTV PVR", | 1614 | .name = "Hauppauge WinTV PVR", |
1697 | .video_inputs = 4, | 1615 | .video_inputs = 4, |
1698 | .audio_inputs = 1, | 1616 | /* .audio_inputs= 1, */ |
1699 | .svhs = 2, | 1617 | .svhs = 2, |
1700 | .muxsel = { 2, 0, 1, 1 }, | 1618 | .muxsel = { 2, 0, 1, 1 }, |
1701 | .needs_tvaudio = 1, | 1619 | .needs_tvaudio = 1, |
1702 | .pll = PLL_28, | 1620 | .pll = PLL_28, |
1703 | .tuner_type = UNSET, | 1621 | .tuner_type = UNSET, |
1704 | .tuner_addr = ADDR_UNSET, | 1622 | .tuner_addr = ADDR_UNSET, |
1705 | .radio_addr = ADDR_UNSET, | ||
1706 | 1623 | ||
1707 | .gpiomask = 7, | 1624 | .gpiomask = 7, |
1708 | .gpiomux = {7}, | 1625 | .gpiomux = {7}, |
@@ -1710,7 +1627,7 @@ struct tvcard bttv_tvcards[] = { | |||
1710 | [BTTV_BOARD_GVBCTV5PCI] = { | 1627 | [BTTV_BOARD_GVBCTV5PCI] = { |
1711 | .name = "IODATA GV-BCTV5/PCI", | 1628 | .name = "IODATA GV-BCTV5/PCI", |
1712 | .video_inputs = 3, | 1629 | .video_inputs = 3, |
1713 | .audio_inputs = 1, | 1630 | /* .audio_inputs= 1, */ |
1714 | .svhs = 2, | 1631 | .svhs = 2, |
1715 | .gpiomask = 0x0f0f80, | 1632 | .gpiomask = 0x0f0f80, |
1716 | .muxsel = {2, 3, 1, 0 }, | 1633 | .muxsel = {2, 3, 1, 0 }, |
@@ -1720,20 +1637,18 @@ struct tvcard bttv_tvcards[] = { | |||
1720 | .pll = PLL_28, | 1637 | .pll = PLL_28, |
1721 | .tuner_type = TUNER_PHILIPS_NTSC_M, | 1638 | .tuner_type = TUNER_PHILIPS_NTSC_M, |
1722 | .tuner_addr = ADDR_UNSET, | 1639 | .tuner_addr = ADDR_UNSET, |
1723 | .radio_addr = ADDR_UNSET, | ||
1724 | .audio_mode_gpio= gvbctv5pci_audio, | 1640 | .audio_mode_gpio= gvbctv5pci_audio, |
1725 | .has_radio = 1, | 1641 | .has_radio = 1, |
1726 | }, | 1642 | }, |
1727 | [BTTV_BOARD_OSPREY1x0] = { | 1643 | [BTTV_BOARD_OSPREY1x0] = { |
1728 | .name = "Osprey 100/150 (878)", /* 0x1(2|3)-45C6-C1 */ | 1644 | .name = "Osprey 100/150 (878)", /* 0x1(2|3)-45C6-C1 */ |
1729 | .video_inputs = 4, /* id-inputs-clock */ | 1645 | .video_inputs = 4, /* id-inputs-clock */ |
1730 | .audio_inputs = 0, | 1646 | /* .audio_inputs= 0, */ |
1731 | .svhs = 3, | 1647 | .svhs = 3, |
1732 | .muxsel = { 3, 2, 0, 1 }, | 1648 | .muxsel = { 3, 2, 0, 1 }, |
1733 | .pll = PLL_28, | 1649 | .pll = PLL_28, |
1734 | .tuner_type = TUNER_ABSENT, | 1650 | .tuner_type = TUNER_ABSENT, |
1735 | .tuner_addr = ADDR_UNSET, | 1651 | .tuner_addr = ADDR_UNSET, |
1736 | .radio_addr = ADDR_UNSET, | ||
1737 | .no_msp34xx = 1, | 1652 | .no_msp34xx = 1, |
1738 | .no_tda9875 = 1, | 1653 | .no_tda9875 = 1, |
1739 | .no_tda7432 = 1, | 1654 | .no_tda7432 = 1, |
@@ -1741,13 +1656,12 @@ struct tvcard bttv_tvcards[] = { | |||
1741 | [BTTV_BOARD_OSPREY1x0_848] = { | 1656 | [BTTV_BOARD_OSPREY1x0_848] = { |
1742 | .name = "Osprey 100/150 (848)", /* 0x04-54C0-C1 & older boards */ | 1657 | .name = "Osprey 100/150 (848)", /* 0x04-54C0-C1 & older boards */ |
1743 | .video_inputs = 3, | 1658 | .video_inputs = 3, |
1744 | .audio_inputs = 0, | 1659 | /* .audio_inputs= 0, */ |
1745 | .svhs = 2, | 1660 | .svhs = 2, |
1746 | .muxsel = { 2, 3, 1 }, | 1661 | .muxsel = { 2, 3, 1 }, |
1747 | .pll = PLL_28, | 1662 | .pll = PLL_28, |
1748 | .tuner_type = TUNER_ABSENT, | 1663 | .tuner_type = TUNER_ABSENT, |
1749 | .tuner_addr = ADDR_UNSET, | 1664 | .tuner_addr = ADDR_UNSET, |
1750 | .radio_addr = ADDR_UNSET, | ||
1751 | .no_msp34xx = 1, | 1665 | .no_msp34xx = 1, |
1752 | .no_tda9875 = 1, | 1666 | .no_tda9875 = 1, |
1753 | .no_tda7432 = 1, | 1667 | .no_tda7432 = 1, |
@@ -1757,13 +1671,12 @@ struct tvcard bttv_tvcards[] = { | |||
1757 | [BTTV_BOARD_OSPREY101_848] = { | 1671 | [BTTV_BOARD_OSPREY101_848] = { |
1758 | .name = "Osprey 101 (848)", /* 0x05-40C0-C1 */ | 1672 | .name = "Osprey 101 (848)", /* 0x05-40C0-C1 */ |
1759 | .video_inputs = 2, | 1673 | .video_inputs = 2, |
1760 | .audio_inputs = 0, | 1674 | /* .audio_inputs= 0, */ |
1761 | .svhs = 1, | 1675 | .svhs = 1, |
1762 | .muxsel = { 3, 1 }, | 1676 | .muxsel = { 3, 1 }, |
1763 | .pll = PLL_28, | 1677 | .pll = PLL_28, |
1764 | .tuner_type = TUNER_ABSENT, | 1678 | .tuner_type = TUNER_ABSENT, |
1765 | .tuner_addr = ADDR_UNSET, | 1679 | .tuner_addr = ADDR_UNSET, |
1766 | .radio_addr = ADDR_UNSET, | ||
1767 | .no_msp34xx = 1, | 1680 | .no_msp34xx = 1, |
1768 | .no_tda9875 = 1, | 1681 | .no_tda9875 = 1, |
1769 | .no_tda7432 = 1, | 1682 | .no_tda7432 = 1, |
@@ -1771,13 +1684,12 @@ struct tvcard bttv_tvcards[] = { | |||
1771 | [BTTV_BOARD_OSPREY1x1] = { | 1684 | [BTTV_BOARD_OSPREY1x1] = { |
1772 | .name = "Osprey 101/151", /* 0x1(4|5)-0004-C4 */ | 1685 | .name = "Osprey 101/151", /* 0x1(4|5)-0004-C4 */ |
1773 | .video_inputs = 1, | 1686 | .video_inputs = 1, |
1774 | .audio_inputs = 0, | 1687 | /* .audio_inputs= 0, */ |
1775 | .svhs = UNSET, | 1688 | .svhs = NO_SVHS, |
1776 | .muxsel = { 0 }, | 1689 | .muxsel = { 0 }, |
1777 | .pll = PLL_28, | 1690 | .pll = PLL_28, |
1778 | .tuner_type = TUNER_ABSENT, | 1691 | .tuner_type = TUNER_ABSENT, |
1779 | .tuner_addr = ADDR_UNSET, | 1692 | .tuner_addr = ADDR_UNSET, |
1780 | .radio_addr = ADDR_UNSET, | ||
1781 | .no_msp34xx = 1, | 1693 | .no_msp34xx = 1, |
1782 | .no_tda9875 = 1, | 1694 | .no_tda9875 = 1, |
1783 | .no_tda7432 = 1, | 1695 | .no_tda7432 = 1, |
@@ -1785,13 +1697,12 @@ struct tvcard bttv_tvcards[] = { | |||
1785 | [BTTV_BOARD_OSPREY1x1_SVID] = { | 1697 | [BTTV_BOARD_OSPREY1x1_SVID] = { |
1786 | .name = "Osprey 101/151 w/ svid", /* 0x(16|17|20)-00C4-C1 */ | 1698 | .name = "Osprey 101/151 w/ svid", /* 0x(16|17|20)-00C4-C1 */ |
1787 | .video_inputs = 2, | 1699 | .video_inputs = 2, |
1788 | .audio_inputs = 0, | 1700 | /* .audio_inputs= 0, */ |
1789 | .svhs = 1, | 1701 | .svhs = 1, |
1790 | .muxsel = { 0, 1 }, | 1702 | .muxsel = { 0, 1 }, |
1791 | .pll = PLL_28, | 1703 | .pll = PLL_28, |
1792 | .tuner_type = TUNER_ABSENT, | 1704 | .tuner_type = TUNER_ABSENT, |
1793 | .tuner_addr = ADDR_UNSET, | 1705 | .tuner_addr = ADDR_UNSET, |
1794 | .radio_addr = ADDR_UNSET, | ||
1795 | .no_msp34xx = 1, | 1706 | .no_msp34xx = 1, |
1796 | .no_tda9875 = 1, | 1707 | .no_tda9875 = 1, |
1797 | .no_tda7432 = 1, | 1708 | .no_tda7432 = 1, |
@@ -1799,13 +1710,12 @@ struct tvcard bttv_tvcards[] = { | |||
1799 | [BTTV_BOARD_OSPREY2xx] = { | 1710 | [BTTV_BOARD_OSPREY2xx] = { |
1800 | .name = "Osprey 200/201/250/251", /* 0x1(8|9|E|F)-0004-C4 */ | 1711 | .name = "Osprey 200/201/250/251", /* 0x1(8|9|E|F)-0004-C4 */ |
1801 | .video_inputs = 1, | 1712 | .video_inputs = 1, |
1802 | .audio_inputs = 1, | 1713 | /* .audio_inputs= 1, */ |
1803 | .svhs = UNSET, | 1714 | .svhs = NO_SVHS, |
1804 | .muxsel = { 0 }, | 1715 | .muxsel = { 0 }, |
1805 | .pll = PLL_28, | 1716 | .pll = PLL_28, |
1806 | .tuner_type = TUNER_ABSENT, | 1717 | .tuner_type = TUNER_ABSENT, |
1807 | .tuner_addr = ADDR_UNSET, | 1718 | .tuner_addr = ADDR_UNSET, |
1808 | .radio_addr = ADDR_UNSET, | ||
1809 | .no_msp34xx = 1, | 1719 | .no_msp34xx = 1, |
1810 | .no_tda9875 = 1, | 1720 | .no_tda9875 = 1, |
1811 | .no_tda7432 = 1, | 1721 | .no_tda7432 = 1, |
@@ -1815,13 +1725,12 @@ struct tvcard bttv_tvcards[] = { | |||
1815 | [BTTV_BOARD_OSPREY2x0_SVID] = { | 1725 | [BTTV_BOARD_OSPREY2x0_SVID] = { |
1816 | .name = "Osprey 200/250", /* 0x1(A|B)-00C4-C1 */ | 1726 | .name = "Osprey 200/250", /* 0x1(A|B)-00C4-C1 */ |
1817 | .video_inputs = 2, | 1727 | .video_inputs = 2, |
1818 | .audio_inputs = 1, | 1728 | /* .audio_inputs= 1, */ |
1819 | .svhs = 1, | 1729 | .svhs = 1, |
1820 | .muxsel = { 0, 1 }, | 1730 | .muxsel = { 0, 1 }, |
1821 | .pll = PLL_28, | 1731 | .pll = PLL_28, |
1822 | .tuner_type = TUNER_ABSENT, | 1732 | .tuner_type = TUNER_ABSENT, |
1823 | .tuner_addr = ADDR_UNSET, | 1733 | .tuner_addr = ADDR_UNSET, |
1824 | .radio_addr = ADDR_UNSET, | ||
1825 | .no_msp34xx = 1, | 1734 | .no_msp34xx = 1, |
1826 | .no_tda9875 = 1, | 1735 | .no_tda9875 = 1, |
1827 | .no_tda7432 = 1, | 1736 | .no_tda7432 = 1, |
@@ -1829,13 +1738,12 @@ struct tvcard bttv_tvcards[] = { | |||
1829 | [BTTV_BOARD_OSPREY2x0] = { | 1738 | [BTTV_BOARD_OSPREY2x0] = { |
1830 | .name = "Osprey 210/220/230", /* 0x1(A|B)-04C0-C1 */ | 1739 | .name = "Osprey 210/220/230", /* 0x1(A|B)-04C0-C1 */ |
1831 | .video_inputs = 2, | 1740 | .video_inputs = 2, |
1832 | .audio_inputs = 1, | 1741 | /* .audio_inputs= 1, */ |
1833 | .svhs = 1, | 1742 | .svhs = 1, |
1834 | .muxsel = { 2, 3 }, | 1743 | .muxsel = { 2, 3 }, |
1835 | .pll = PLL_28, | 1744 | .pll = PLL_28, |
1836 | .tuner_type = TUNER_ABSENT, | 1745 | .tuner_type = TUNER_ABSENT, |
1837 | .tuner_addr = ADDR_UNSET, | 1746 | .tuner_addr = ADDR_UNSET, |
1838 | .radio_addr = ADDR_UNSET, | ||
1839 | .no_msp34xx = 1, | 1747 | .no_msp34xx = 1, |
1840 | .no_tda9875 = 1, | 1748 | .no_tda9875 = 1, |
1841 | .no_tda7432 = 1, | 1749 | .no_tda7432 = 1, |
@@ -1843,13 +1751,12 @@ struct tvcard bttv_tvcards[] = { | |||
1843 | [BTTV_BOARD_OSPREY500] = { | 1751 | [BTTV_BOARD_OSPREY500] = { |
1844 | .name = "Osprey 500", /* 500 */ | 1752 | .name = "Osprey 500", /* 500 */ |
1845 | .video_inputs = 2, | 1753 | .video_inputs = 2, |
1846 | .audio_inputs = 1, | 1754 | /* .audio_inputs= 1, */ |
1847 | .svhs = 1, | 1755 | .svhs = 1, |
1848 | .muxsel = { 2, 3 }, | 1756 | .muxsel = { 2, 3 }, |
1849 | .pll = PLL_28, | 1757 | .pll = PLL_28, |
1850 | .tuner_type = TUNER_ABSENT, | 1758 | .tuner_type = TUNER_ABSENT, |
1851 | .tuner_addr = ADDR_UNSET, | 1759 | .tuner_addr = ADDR_UNSET, |
1852 | .radio_addr = ADDR_UNSET, | ||
1853 | .no_msp34xx = 1, | 1760 | .no_msp34xx = 1, |
1854 | .no_tda9875 = 1, | 1761 | .no_tda9875 = 1, |
1855 | .no_tda7432 = 1, | 1762 | .no_tda7432 = 1, |
@@ -1857,11 +1764,10 @@ struct tvcard bttv_tvcards[] = { | |||
1857 | [BTTV_BOARD_OSPREY540] = { | 1764 | [BTTV_BOARD_OSPREY540] = { |
1858 | .name = "Osprey 540", /* 540 */ | 1765 | .name = "Osprey 540", /* 540 */ |
1859 | .video_inputs = 4, | 1766 | .video_inputs = 4, |
1860 | .audio_inputs = 1, | 1767 | /* .audio_inputs= 1, */ |
1861 | .pll = PLL_28, | 1768 | .pll = PLL_28, |
1862 | .tuner_type = TUNER_ABSENT, | 1769 | .tuner_type = TUNER_ABSENT, |
1863 | .tuner_addr = ADDR_UNSET, | 1770 | .tuner_addr = ADDR_UNSET, |
1864 | .radio_addr = ADDR_UNSET, | ||
1865 | .no_msp34xx = 1, | 1771 | .no_msp34xx = 1, |
1866 | .no_tda9875 = 1, | 1772 | .no_tda9875 = 1, |
1867 | .no_tda7432 = 1, | 1773 | .no_tda7432 = 1, |
@@ -1871,13 +1777,12 @@ struct tvcard bttv_tvcards[] = { | |||
1871 | [BTTV_BOARD_OSPREY2000] = { | 1777 | [BTTV_BOARD_OSPREY2000] = { |
1872 | .name = "Osprey 2000", /* 2000 */ | 1778 | .name = "Osprey 2000", /* 2000 */ |
1873 | .video_inputs = 2, | 1779 | .video_inputs = 2, |
1874 | .audio_inputs = 1, | 1780 | /* .audio_inputs= 1, */ |
1875 | .svhs = 1, | 1781 | .svhs = 1, |
1876 | .muxsel = { 2, 3 }, | 1782 | .muxsel = { 2, 3 }, |
1877 | .pll = PLL_28, | 1783 | .pll = PLL_28, |
1878 | .tuner_type = TUNER_ABSENT, | 1784 | .tuner_type = TUNER_ABSENT, |
1879 | .tuner_addr = ADDR_UNSET, | 1785 | .tuner_addr = ADDR_UNSET, |
1880 | .radio_addr = ADDR_UNSET, | ||
1881 | .no_msp34xx = 1, | 1786 | .no_msp34xx = 1, |
1882 | .no_tda9875 = 1, | 1787 | .no_tda9875 = 1, |
1883 | .no_tda7432 = 1, /* must avoid, conflicts with the bt860 */ | 1788 | .no_tda7432 = 1, /* must avoid, conflicts with the bt860 */ |
@@ -1886,11 +1791,10 @@ struct tvcard bttv_tvcards[] = { | |||
1886 | /* M G Berberich <berberic@forwiss.uni-passau.de> */ | 1791 | /* M G Berberich <berberic@forwiss.uni-passau.de> */ |
1887 | .name = "IDS Eagle", | 1792 | .name = "IDS Eagle", |
1888 | .video_inputs = 4, | 1793 | .video_inputs = 4, |
1889 | .audio_inputs = 0, | 1794 | /* .audio_inputs= 0, */ |
1890 | .tuner_type = TUNER_ABSENT, | 1795 | .tuner_type = TUNER_ABSENT, |
1891 | .tuner_addr = ADDR_UNSET, | 1796 | .tuner_addr = ADDR_UNSET, |
1892 | .radio_addr = ADDR_UNSET, | 1797 | .svhs = NO_SVHS, |
1893 | .svhs = UNSET, | ||
1894 | .gpiomask = 0, | 1798 | .gpiomask = 0, |
1895 | .muxsel = { 0, 1, 2, 3 }, | 1799 | .muxsel = { 0, 1, 2, 3 }, |
1896 | .muxsel_hook = eagle_muxsel, | 1800 | .muxsel_hook = eagle_muxsel, |
@@ -1901,11 +1805,10 @@ struct tvcard bttv_tvcards[] = { | |||
1901 | [BTTV_BOARD_PINNACLESAT] = { | 1805 | [BTTV_BOARD_PINNACLESAT] = { |
1902 | .name = "Pinnacle PCTV Sat", | 1806 | .name = "Pinnacle PCTV Sat", |
1903 | .video_inputs = 2, | 1807 | .video_inputs = 2, |
1904 | .audio_inputs = 0, | 1808 | /* .audio_inputs= 0, */ |
1905 | .svhs = 1, | 1809 | .svhs = 1, |
1906 | .tuner_type = TUNER_ABSENT, | 1810 | .tuner_type = TUNER_ABSENT, |
1907 | .tuner_addr = ADDR_UNSET, | 1811 | .tuner_addr = ADDR_UNSET, |
1908 | .radio_addr = ADDR_UNSET, | ||
1909 | .no_msp34xx = 1, | 1812 | .no_msp34xx = 1, |
1910 | .no_tda9875 = 1, | 1813 | .no_tda9875 = 1, |
1911 | .no_tda7432 = 1, | 1814 | .no_tda7432 = 1, |
@@ -1917,7 +1820,7 @@ struct tvcard bttv_tvcards[] = { | |||
1917 | [BTTV_BOARD_FORMAC_PROTV] = { | 1820 | [BTTV_BOARD_FORMAC_PROTV] = { |
1918 | .name = "Formac ProTV II (bt878)", | 1821 | .name = "Formac ProTV II (bt878)", |
1919 | .video_inputs = 4, | 1822 | .video_inputs = 4, |
1920 | .audio_inputs = 1, | 1823 | /* .audio_inputs= 1, */ |
1921 | .svhs = 3, | 1824 | .svhs = 3, |
1922 | .gpiomask = 2, | 1825 | .gpiomask = 2, |
1923 | /* TV, Comp1, Composite over SVID con, SVID */ | 1826 | /* TV, Comp1, Composite over SVID con, SVID */ |
@@ -1927,7 +1830,6 @@ struct tvcard bttv_tvcards[] = { | |||
1927 | .has_radio = 1, | 1830 | .has_radio = 1, |
1928 | .tuner_type = TUNER_PHILIPS_PAL, | 1831 | .tuner_type = TUNER_PHILIPS_PAL, |
1929 | .tuner_addr = ADDR_UNSET, | 1832 | .tuner_addr = ADDR_UNSET, |
1930 | .radio_addr = ADDR_UNSET, | ||
1931 | /* sound routing: | 1833 | /* sound routing: |
1932 | GPIO=0x00,0x01,0x03: mute (?) | 1834 | GPIO=0x00,0x01,0x03: mute (?) |
1933 | 0x02: both TV and radio (tuner: FM1216/I) | 1835 | 0x02: both TV and radio (tuner: FM1216/I) |
@@ -1941,8 +1843,8 @@ struct tvcard bttv_tvcards[] = { | |||
1941 | [BTTV_BOARD_MACHTV] = { | 1843 | [BTTV_BOARD_MACHTV] = { |
1942 | .name = "MachTV", | 1844 | .name = "MachTV", |
1943 | .video_inputs = 3, | 1845 | .video_inputs = 3, |
1944 | .audio_inputs = 1, | 1846 | /* .audio_inputs= 1, */ |
1945 | .svhs = UNSET, | 1847 | .svhs = NO_SVHS, |
1946 | .gpiomask = 7, | 1848 | .gpiomask = 7, |
1947 | .muxsel = { 2, 3, 1, 1}, | 1849 | .muxsel = { 2, 3, 1, 1}, |
1948 | .gpiomux = { 0, 1, 2, 3}, | 1850 | .gpiomux = { 0, 1, 2, 3}, |
@@ -1950,13 +1852,12 @@ struct tvcard bttv_tvcards[] = { | |||
1950 | .needs_tvaudio = 1, | 1852 | .needs_tvaudio = 1, |
1951 | .tuner_type = TUNER_PHILIPS_PAL, | 1853 | .tuner_type = TUNER_PHILIPS_PAL, |
1952 | .tuner_addr = ADDR_UNSET, | 1854 | .tuner_addr = ADDR_UNSET, |
1953 | .radio_addr = ADDR_UNSET, | ||
1954 | .pll = PLL_28, | 1855 | .pll = PLL_28, |
1955 | }, | 1856 | }, |
1956 | [BTTV_BOARD_EURESYS_PICOLO] = { | 1857 | [BTTV_BOARD_EURESYS_PICOLO] = { |
1957 | .name = "Euresys Picolo", | 1858 | .name = "Euresys Picolo", |
1958 | .video_inputs = 3, | 1859 | .video_inputs = 3, |
1959 | .audio_inputs = 0, | 1860 | /* .audio_inputs= 0, */ |
1960 | .svhs = 2, | 1861 | .svhs = 2, |
1961 | .gpiomask = 0, | 1862 | .gpiomask = 0, |
1962 | .no_msp34xx = 1, | 1863 | .no_msp34xx = 1, |
@@ -1966,14 +1867,13 @@ struct tvcard bttv_tvcards[] = { | |||
1966 | .pll = PLL_28, | 1867 | .pll = PLL_28, |
1967 | .tuner_type = TUNER_ABSENT, | 1868 | .tuner_type = TUNER_ABSENT, |
1968 | .tuner_addr = ADDR_UNSET, | 1869 | .tuner_addr = ADDR_UNSET, |
1969 | .radio_addr = ADDR_UNSET, | ||
1970 | }, | 1870 | }, |
1971 | [BTTV_BOARD_PV150] = { | 1871 | [BTTV_BOARD_PV150] = { |
1972 | /* Luc Van Hoeylandt <luc@e-magic.be> */ | 1872 | /* Luc Van Hoeylandt <luc@e-magic.be> */ |
1973 | .name = "ProVideo PV150", /* 0x4f */ | 1873 | .name = "ProVideo PV150", /* 0x4f */ |
1974 | .video_inputs = 2, | 1874 | .video_inputs = 2, |
1975 | .audio_inputs = 0, | 1875 | /* .audio_inputs= 0, */ |
1976 | .svhs = UNSET, | 1876 | .svhs = NO_SVHS, |
1977 | .gpiomask = 0, | 1877 | .gpiomask = 0, |
1978 | .muxsel = { 2, 3 }, | 1878 | .muxsel = { 2, 3 }, |
1979 | .gpiomux = { 0 }, | 1879 | .gpiomux = { 0 }, |
@@ -1982,14 +1882,13 @@ struct tvcard bttv_tvcards[] = { | |||
1982 | .pll = PLL_28, | 1882 | .pll = PLL_28, |
1983 | .tuner_type = TUNER_ABSENT, | 1883 | .tuner_type = TUNER_ABSENT, |
1984 | .tuner_addr = ADDR_UNSET, | 1884 | .tuner_addr = ADDR_UNSET, |
1985 | .radio_addr = ADDR_UNSET, | ||
1986 | }, | 1885 | }, |
1987 | [BTTV_BOARD_AD_TVK503] = { | 1886 | [BTTV_BOARD_AD_TVK503] = { |
1988 | /* Hiroshi Takekawa <sian@big.or.jp> */ | 1887 | /* Hiroshi Takekawa <sian@big.or.jp> */ |
1989 | /* This card lacks subsystem ID */ | 1888 | /* This card lacks subsystem ID */ |
1990 | .name = "AD-TVK503", /* 0x63 */ | 1889 | .name = "AD-TVK503", /* 0x63 */ |
1991 | .video_inputs = 4, | 1890 | .video_inputs = 4, |
1992 | .audio_inputs = 1, | 1891 | /* .audio_inputs= 1, */ |
1993 | .svhs = 2, | 1892 | .svhs = 2, |
1994 | .gpiomask = 0x001e8007, | 1893 | .gpiomask = 0x001e8007, |
1995 | .muxsel = { 2, 3, 1, 0 }, | 1894 | .muxsel = { 2, 3, 1, 0 }, |
@@ -2001,7 +1900,6 @@ struct tvcard bttv_tvcards[] = { | |||
2001 | .pll = PLL_28, | 1900 | .pll = PLL_28, |
2002 | .tuner_type = TUNER_PHILIPS_NTSC, | 1901 | .tuner_type = TUNER_PHILIPS_NTSC, |
2003 | .tuner_addr = ADDR_UNSET, | 1902 | .tuner_addr = ADDR_UNSET, |
2004 | .radio_addr = ADDR_UNSET, | ||
2005 | .audio_mode_gpio= adtvk503_audio, | 1903 | .audio_mode_gpio= adtvk503_audio, |
2006 | }, | 1904 | }, |
2007 | 1905 | ||
@@ -2009,7 +1907,7 @@ struct tvcard bttv_tvcards[] = { | |||
2009 | [BTTV_BOARD_HERCULES_SM_TV] = { | 1907 | [BTTV_BOARD_HERCULES_SM_TV] = { |
2010 | .name = "Hercules Smart TV Stereo", | 1908 | .name = "Hercules Smart TV Stereo", |
2011 | .video_inputs = 4, | 1909 | .video_inputs = 4, |
2012 | .audio_inputs = 1, | 1910 | /* .audio_inputs= 1, */ |
2013 | .svhs = 2, | 1911 | .svhs = 2, |
2014 | .gpiomask = 0x00, | 1912 | .gpiomask = 0x00, |
2015 | .muxsel = { 2, 3, 1, 1 }, | 1913 | .muxsel = { 2, 3, 1, 1 }, |
@@ -2018,7 +1916,6 @@ struct tvcard bttv_tvcards[] = { | |||
2018 | .pll = PLL_28, | 1916 | .pll = PLL_28, |
2019 | .tuner_type = TUNER_PHILIPS_PAL, | 1917 | .tuner_type = TUNER_PHILIPS_PAL, |
2020 | .tuner_addr = ADDR_UNSET, | 1918 | .tuner_addr = ADDR_UNSET, |
2021 | .radio_addr = ADDR_UNSET, | ||
2022 | /* Notes: | 1919 | /* Notes: |
2023 | - card lacks subsystem ID | 1920 | - card lacks subsystem ID |
2024 | - stereo variant w/ daughter board with tda9874a @0xb0 | 1921 | - stereo variant w/ daughter board with tda9874a @0xb0 |
@@ -2032,7 +1929,7 @@ struct tvcard bttv_tvcards[] = { | |||
2032 | [BTTV_BOARD_PACETV] = { | 1929 | [BTTV_BOARD_PACETV] = { |
2033 | .name = "Pace TV & Radio Card", | 1930 | .name = "Pace TV & Radio Card", |
2034 | .video_inputs = 4, | 1931 | .video_inputs = 4, |
2035 | .audio_inputs = 1, | 1932 | /* .audio_inputs= 1, */ |
2036 | .svhs = 2, | 1933 | .svhs = 2, |
2037 | .muxsel = { 2, 3, 1, 1 }, /* Tuner, CVid, SVid, CVid over SVid connector */ | 1934 | .muxsel = { 2, 3, 1, 1 }, /* Tuner, CVid, SVid, CVid over SVid connector */ |
2038 | .gpiomask = 0, | 1935 | .gpiomask = 0, |
@@ -2040,7 +1937,6 @@ struct tvcard bttv_tvcards[] = { | |||
2040 | .no_tda7432 = 1, | 1937 | .no_tda7432 = 1, |
2041 | .tuner_type = TUNER_PHILIPS_PAL_I, | 1938 | .tuner_type = TUNER_PHILIPS_PAL_I, |
2042 | .tuner_addr = ADDR_UNSET, | 1939 | .tuner_addr = ADDR_UNSET, |
2043 | .radio_addr = ADDR_UNSET, | ||
2044 | .has_radio = 1, | 1940 | .has_radio = 1, |
2045 | .pll = PLL_28, | 1941 | .pll = PLL_28, |
2046 | /* Bt878, Bt832, FI1246 tuner; no pci subsystem id | 1942 | /* Bt878, Bt832, FI1246 tuner; no pci subsystem id |
@@ -2054,11 +1950,10 @@ struct tvcard bttv_tvcards[] = { | |||
2054 | /* Chris Willing <chris@vislab.usyd.edu.au> */ | 1950 | /* Chris Willing <chris@vislab.usyd.edu.au> */ |
2055 | .name = "IVC-200", | 1951 | .name = "IVC-200", |
2056 | .video_inputs = 1, | 1952 | .video_inputs = 1, |
2057 | .audio_inputs = 0, | 1953 | /* .audio_inputs= 0, */ |
2058 | .tuner_type = TUNER_ABSENT, | 1954 | .tuner_type = TUNER_ABSENT, |
2059 | .tuner_addr = ADDR_UNSET, | 1955 | .tuner_addr = ADDR_UNSET, |
2060 | .radio_addr = ADDR_UNSET, | 1956 | .svhs = NO_SVHS, |
2061 | .svhs = UNSET, | ||
2062 | .gpiomask = 0xdf, | 1957 | .gpiomask = 0xdf, |
2063 | .muxsel = { 2 }, | 1958 | .muxsel = { 2 }, |
2064 | .pll = PLL_28, | 1959 | .pll = PLL_28, |
@@ -2066,11 +1961,10 @@ struct tvcard bttv_tvcards[] = { | |||
2066 | [BTTV_BOARD_IVCE8784] = { | 1961 | [BTTV_BOARD_IVCE8784] = { |
2067 | .name = "IVCE-8784", | 1962 | .name = "IVCE-8784", |
2068 | .video_inputs = 1, | 1963 | .video_inputs = 1, |
2069 | .audio_inputs = 0, | 1964 | /* .audio_inputs= 0, */ |
2070 | .tuner_type = TUNER_ABSENT, | 1965 | .tuner_type = TUNER_ABSENT, |
2071 | .tuner_addr = ADDR_UNSET, | 1966 | .tuner_addr = ADDR_UNSET, |
2072 | .radio_addr = ADDR_UNSET, | 1967 | .svhs = NO_SVHS, |
2073 | .svhs = UNSET, | ||
2074 | .gpiomask = 0xdf, | 1968 | .gpiomask = 0xdf, |
2075 | .muxsel = { 2 }, | 1969 | .muxsel = { 2 }, |
2076 | .pll = PLL_28, | 1970 | .pll = PLL_28, |
@@ -2078,11 +1972,10 @@ struct tvcard bttv_tvcards[] = { | |||
2078 | [BTTV_BOARD_XGUARD] = { | 1972 | [BTTV_BOARD_XGUARD] = { |
2079 | .name = "Grand X-Guard / Trust 814PCI", | 1973 | .name = "Grand X-Guard / Trust 814PCI", |
2080 | .video_inputs = 16, | 1974 | .video_inputs = 16, |
2081 | .audio_inputs = 0, | 1975 | /* .audio_inputs= 0, */ |
2082 | .svhs = UNSET, | 1976 | .svhs = NO_SVHS, |
2083 | .tuner_type = TUNER_ABSENT, | 1977 | .tuner_type = TUNER_ABSENT, |
2084 | .tuner_addr = ADDR_UNSET, | 1978 | .tuner_addr = ADDR_UNSET, |
2085 | .radio_addr = ADDR_UNSET, | ||
2086 | .gpiomask2 = 0xff, | 1979 | .gpiomask2 = 0xff, |
2087 | .muxsel = { 2,2,2,2, 3,3,3,3, 1,1,1,1, 0,0,0,0 }, | 1980 | .muxsel = { 2,2,2,2, 3,3,3,3, 1,1,1,1, 0,0,0,0 }, |
2088 | .muxsel_hook = xguard_muxsel, | 1981 | .muxsel_hook = xguard_muxsel, |
@@ -2096,7 +1989,7 @@ struct tvcard bttv_tvcards[] = { | |||
2096 | [BTTV_BOARD_NEBULA_DIGITV] = { | 1989 | [BTTV_BOARD_NEBULA_DIGITV] = { |
2097 | .name = "Nebula Electronics DigiTV", | 1990 | .name = "Nebula Electronics DigiTV", |
2098 | .video_inputs = 1, | 1991 | .video_inputs = 1, |
2099 | .svhs = UNSET, | 1992 | .svhs = NO_SVHS, |
2100 | .muxsel = { 2, 3, 1, 0 }, | 1993 | .muxsel = { 2, 3, 1, 0 }, |
2101 | .no_msp34xx = 1, | 1994 | .no_msp34xx = 1, |
2102 | .no_tda9875 = 1, | 1995 | .no_tda9875 = 1, |
@@ -2104,7 +1997,6 @@ struct tvcard bttv_tvcards[] = { | |||
2104 | .pll = PLL_28, | 1997 | .pll = PLL_28, |
2105 | .tuner_type = TUNER_ABSENT, | 1998 | .tuner_type = TUNER_ABSENT, |
2106 | .tuner_addr = ADDR_UNSET, | 1999 | .tuner_addr = ADDR_UNSET, |
2107 | .radio_addr = ADDR_UNSET, | ||
2108 | .has_dvb = 1, | 2000 | .has_dvb = 1, |
2109 | .has_remote = 1, | 2001 | .has_remote = 1, |
2110 | .gpiomask = 0x1b, | 2002 | .gpiomask = 0x1b, |
@@ -2114,8 +2006,8 @@ struct tvcard bttv_tvcards[] = { | |||
2114 | /* Jorge Boncompte - DTI2 <jorge@dti2.net> */ | 2006 | /* Jorge Boncompte - DTI2 <jorge@dti2.net> */ |
2115 | .name = "ProVideo PV143", | 2007 | .name = "ProVideo PV143", |
2116 | .video_inputs = 4, | 2008 | .video_inputs = 4, |
2117 | .audio_inputs = 0, | 2009 | /* .audio_inputs= 0, */ |
2118 | .svhs = UNSET, | 2010 | .svhs = NO_SVHS, |
2119 | .gpiomask = 0, | 2011 | .gpiomask = 0, |
2120 | .muxsel = { 2, 3, 1, 0 }, | 2012 | .muxsel = { 2, 3, 1, 0 }, |
2121 | .gpiomux = { 0 }, | 2013 | .gpiomux = { 0 }, |
@@ -2124,13 +2016,12 @@ struct tvcard bttv_tvcards[] = { | |||
2124 | .pll = PLL_28, | 2016 | .pll = PLL_28, |
2125 | .tuner_type = TUNER_ABSENT, | 2017 | .tuner_type = TUNER_ABSENT, |
2126 | .tuner_addr = ADDR_UNSET, | 2018 | .tuner_addr = ADDR_UNSET, |
2127 | .radio_addr = ADDR_UNSET, | ||
2128 | }, | 2019 | }, |
2129 | [BTTV_BOARD_VD009X1_VD011_MINIDIN] = { | 2020 | [BTTV_BOARD_VD009X1_VD011_MINIDIN] = { |
2130 | /* M.Klahr@phytec.de */ | 2021 | /* M.Klahr@phytec.de */ |
2131 | .name = "PHYTEC VD-009-X1 VD-011 MiniDIN (bt878)", | 2022 | .name = "PHYTEC VD-009-X1 VD-011 MiniDIN (bt878)", |
2132 | .video_inputs = 4, | 2023 | .video_inputs = 4, |
2133 | .audio_inputs = 0, | 2024 | /* .audio_inputs= 0, */ |
2134 | .svhs = 3, | 2025 | .svhs = 3, |
2135 | .gpiomask = 0x00, | 2026 | .gpiomask = 0x00, |
2136 | .muxsel = { 2, 3, 1, 0 }, | 2027 | .muxsel = { 2, 3, 1, 0 }, |
@@ -2139,12 +2030,11 @@ struct tvcard bttv_tvcards[] = { | |||
2139 | .pll = PLL_28, | 2030 | .pll = PLL_28, |
2140 | .tuner_type = TUNER_ABSENT, | 2031 | .tuner_type = TUNER_ABSENT, |
2141 | .tuner_addr = ADDR_UNSET, | 2032 | .tuner_addr = ADDR_UNSET, |
2142 | .radio_addr = ADDR_UNSET, | ||
2143 | }, | 2033 | }, |
2144 | [BTTV_BOARD_VD009X1_VD011_COMBI] = { | 2034 | [BTTV_BOARD_VD009X1_VD011_COMBI] = { |
2145 | .name = "PHYTEC VD-009-X1 VD-011 Combi (bt878)", | 2035 | .name = "PHYTEC VD-009-X1 VD-011 Combi (bt878)", |
2146 | .video_inputs = 4, | 2036 | .video_inputs = 4, |
2147 | .audio_inputs = 0, | 2037 | /* .audio_inputs= 0, */ |
2148 | .svhs = 3, | 2038 | .svhs = 3, |
2149 | .gpiomask = 0x00, | 2039 | .gpiomask = 0x00, |
2150 | .muxsel = { 2, 3, 1, 1 }, | 2040 | .muxsel = { 2, 3, 1, 1 }, |
@@ -2153,14 +2043,13 @@ struct tvcard bttv_tvcards[] = { | |||
2153 | .pll = PLL_28, | 2043 | .pll = PLL_28, |
2154 | .tuner_type = TUNER_ABSENT, | 2044 | .tuner_type = TUNER_ABSENT, |
2155 | .tuner_addr = ADDR_UNSET, | 2045 | .tuner_addr = ADDR_UNSET, |
2156 | .radio_addr = ADDR_UNSET, | ||
2157 | }, | 2046 | }, |
2158 | 2047 | ||
2159 | /* ---- card 0x6c ---------------------------------- */ | 2048 | /* ---- card 0x6c ---------------------------------- */ |
2160 | [BTTV_BOARD_VD009_MINIDIN] = { | 2049 | [BTTV_BOARD_VD009_MINIDIN] = { |
2161 | .name = "PHYTEC VD-009 MiniDIN (bt878)", | 2050 | .name = "PHYTEC VD-009 MiniDIN (bt878)", |
2162 | .video_inputs = 10, | 2051 | .video_inputs = 10, |
2163 | .audio_inputs = 0, | 2052 | /* .audio_inputs= 0, */ |
2164 | .svhs = 9, | 2053 | .svhs = 9, |
2165 | .gpiomask = 0x00, | 2054 | .gpiomask = 0x00, |
2166 | .gpiomask2 = 0x03, /* gpiomask2 defines the bits used to switch audio | 2055 | .gpiomask2 = 0x03, /* gpiomask2 defines the bits used to switch audio |
@@ -2172,12 +2061,11 @@ struct tvcard bttv_tvcards[] = { | |||
2172 | .pll = PLL_28, | 2061 | .pll = PLL_28, |
2173 | .tuner_type = TUNER_ABSENT, | 2062 | .tuner_type = TUNER_ABSENT, |
2174 | .tuner_addr = ADDR_UNSET, | 2063 | .tuner_addr = ADDR_UNSET, |
2175 | .radio_addr = ADDR_UNSET, | ||
2176 | }, | 2064 | }, |
2177 | [BTTV_BOARD_VD009_COMBI] = { | 2065 | [BTTV_BOARD_VD009_COMBI] = { |
2178 | .name = "PHYTEC VD-009 Combi (bt878)", | 2066 | .name = "PHYTEC VD-009 Combi (bt878)", |
2179 | .video_inputs = 10, | 2067 | .video_inputs = 10, |
2180 | .audio_inputs = 0, | 2068 | /* .audio_inputs= 0, */ |
2181 | .svhs = 9, | 2069 | .svhs = 9, |
2182 | .gpiomask = 0x00, | 2070 | .gpiomask = 0x00, |
2183 | .gpiomask2 = 0x03, /* gpiomask2 defines the bits used to switch audio | 2071 | .gpiomask2 = 0x03, /* gpiomask2 defines the bits used to switch audio |
@@ -2189,16 +2077,14 @@ struct tvcard bttv_tvcards[] = { | |||
2189 | .pll = PLL_28, | 2077 | .pll = PLL_28, |
2190 | .tuner_type = TUNER_ABSENT, | 2078 | .tuner_type = TUNER_ABSENT, |
2191 | .tuner_addr = ADDR_UNSET, | 2079 | .tuner_addr = ADDR_UNSET, |
2192 | .radio_addr = ADDR_UNSET, | ||
2193 | }, | 2080 | }, |
2194 | [BTTV_BOARD_IVC100] = { | 2081 | [BTTV_BOARD_IVC100] = { |
2195 | .name = "IVC-100", | 2082 | .name = "IVC-100", |
2196 | .video_inputs = 4, | 2083 | .video_inputs = 4, |
2197 | .audio_inputs = 0, | 2084 | /* .audio_inputs= 0, */ |
2198 | .tuner_type = TUNER_ABSENT, | 2085 | .tuner_type = TUNER_ABSENT, |
2199 | .tuner_addr = ADDR_UNSET, | 2086 | .tuner_addr = ADDR_UNSET, |
2200 | .radio_addr = ADDR_UNSET, | 2087 | .svhs = NO_SVHS, |
2201 | .svhs = UNSET, | ||
2202 | .gpiomask = 0xdf, | 2088 | .gpiomask = 0xdf, |
2203 | .muxsel = { 2, 3, 1, 0 }, | 2089 | .muxsel = { 2, 3, 1, 0 }, |
2204 | .pll = PLL_28, | 2090 | .pll = PLL_28, |
@@ -2207,11 +2093,10 @@ struct tvcard bttv_tvcards[] = { | |||
2207 | /* IVC-120G - Alan Garfield <alan@fromorbit.com> */ | 2093 | /* IVC-120G - Alan Garfield <alan@fromorbit.com> */ |
2208 | .name = "IVC-120G", | 2094 | .name = "IVC-120G", |
2209 | .video_inputs = 16, | 2095 | .video_inputs = 16, |
2210 | .audio_inputs = 0, /* card has no audio */ | 2096 | /* .audio_inputs= 0, */ |
2211 | .tuner_type = TUNER_ABSENT, | 2097 | .tuner_type = TUNER_ABSENT, |
2212 | .tuner_addr = ADDR_UNSET, | 2098 | .tuner_addr = ADDR_UNSET, |
2213 | .radio_addr = ADDR_UNSET, | 2099 | .svhs = NO_SVHS, /* card has no svhs */ |
2214 | .svhs = UNSET, /* card has no svhs */ | ||
2215 | .needs_tvaudio = 0, | 2100 | .needs_tvaudio = 0, |
2216 | .no_msp34xx = 1, | 2101 | .no_msp34xx = 1, |
2217 | .no_tda9875 = 1, | 2102 | .no_tda9875 = 1, |
@@ -2227,12 +2112,11 @@ struct tvcard bttv_tvcards[] = { | |||
2227 | [BTTV_BOARD_PC_HDTV] = { | 2112 | [BTTV_BOARD_PC_HDTV] = { |
2228 | .name = "pcHDTV HD-2000 TV", | 2113 | .name = "pcHDTV HD-2000 TV", |
2229 | .video_inputs = 4, | 2114 | .video_inputs = 4, |
2230 | .audio_inputs = 1, | 2115 | /* .audio_inputs= 1, */ |
2231 | .svhs = 2, | 2116 | .svhs = 2, |
2232 | .muxsel = { 2, 3, 1, 0 }, | 2117 | .muxsel = { 2, 3, 1, 0 }, |
2233 | .tuner_type = TUNER_PHILIPS_FCV1236D, | 2118 | .tuner_type = TUNER_PHILIPS_FCV1236D, |
2234 | .tuner_addr = ADDR_UNSET, | 2119 | .tuner_addr = ADDR_UNSET, |
2235 | .radio_addr = ADDR_UNSET, | ||
2236 | .has_dvb = 1, | 2120 | .has_dvb = 1, |
2237 | }, | 2121 | }, |
2238 | [BTTV_BOARD_TWINHAN_DST] = { | 2122 | [BTTV_BOARD_TWINHAN_DST] = { |
@@ -2242,14 +2126,13 @@ struct tvcard bttv_tvcards[] = { | |||
2242 | .no_tda7432 = 1, | 2126 | .no_tda7432 = 1, |
2243 | .tuner_type = TUNER_ABSENT, | 2127 | .tuner_type = TUNER_ABSENT, |
2244 | .tuner_addr = ADDR_UNSET, | 2128 | .tuner_addr = ADDR_UNSET, |
2245 | .radio_addr = ADDR_UNSET, | ||
2246 | .no_video = 1, | 2129 | .no_video = 1, |
2247 | .has_dvb = 1, | 2130 | .has_dvb = 1, |
2248 | }, | 2131 | }, |
2249 | [BTTV_BOARD_WINFASTVC100] = { | 2132 | [BTTV_BOARD_WINFASTVC100] = { |
2250 | .name = "Winfast VC100", | 2133 | .name = "Winfast VC100", |
2251 | .video_inputs = 3, | 2134 | .video_inputs = 3, |
2252 | .audio_inputs = 0, | 2135 | /* .audio_inputs= 0, */ |
2253 | .svhs = 1, | 2136 | .svhs = 1, |
2254 | .muxsel = { 3, 1, 1, 3 }, /* Vid In, SVid In, Vid over SVid in connector */ | 2137 | .muxsel = { 3, 1, 1, 3 }, /* Vid In, SVid In, Vid over SVid in connector */ |
2255 | .no_msp34xx = 1, | 2138 | .no_msp34xx = 1, |
@@ -2257,13 +2140,12 @@ struct tvcard bttv_tvcards[] = { | |||
2257 | .no_tda7432 = 1, | 2140 | .no_tda7432 = 1, |
2258 | .tuner_type = TUNER_ABSENT, | 2141 | .tuner_type = TUNER_ABSENT, |
2259 | .tuner_addr = ADDR_UNSET, | 2142 | .tuner_addr = ADDR_UNSET, |
2260 | .radio_addr = ADDR_UNSET, | ||
2261 | .pll = PLL_28, | 2143 | .pll = PLL_28, |
2262 | }, | 2144 | }, |
2263 | [BTTV_BOARD_TEV560] = { | 2145 | [BTTV_BOARD_TEV560] = { |
2264 | .name = "Teppro TEV-560/InterVision IV-560", | 2146 | .name = "Teppro TEV-560/InterVision IV-560", |
2265 | .video_inputs = 3, | 2147 | .video_inputs = 3, |
2266 | .audio_inputs = 1, | 2148 | /* .audio_inputs= 1, */ |
2267 | .svhs = 2, | 2149 | .svhs = 2, |
2268 | .gpiomask = 3, | 2150 | .gpiomask = 3, |
2269 | .muxsel = { 2, 3, 1, 1 }, | 2151 | .muxsel = { 2, 3, 1, 1 }, |
@@ -2271,7 +2153,6 @@ struct tvcard bttv_tvcards[] = { | |||
2271 | .needs_tvaudio = 1, | 2153 | .needs_tvaudio = 1, |
2272 | .tuner_type = TUNER_PHILIPS_PAL, | 2154 | .tuner_type = TUNER_PHILIPS_PAL, |
2273 | .tuner_addr = ADDR_UNSET, | 2155 | .tuner_addr = ADDR_UNSET, |
2274 | .radio_addr = ADDR_UNSET, | ||
2275 | .pll = PLL_35, | 2156 | .pll = PLL_35, |
2276 | }, | 2157 | }, |
2277 | 2158 | ||
@@ -2279,11 +2160,10 @@ struct tvcard bttv_tvcards[] = { | |||
2279 | [BTTV_BOARD_SIMUS_GVC1100] = { | 2160 | [BTTV_BOARD_SIMUS_GVC1100] = { |
2280 | .name = "SIMUS GVC1100", | 2161 | .name = "SIMUS GVC1100", |
2281 | .video_inputs = 4, | 2162 | .video_inputs = 4, |
2282 | .audio_inputs = 0, | 2163 | /* .audio_inputs= 0, */ |
2283 | .svhs = UNSET, | 2164 | .svhs = NO_SVHS, |
2284 | .tuner_type = TUNER_ABSENT, | 2165 | .tuner_type = TUNER_ABSENT, |
2285 | .tuner_addr = ADDR_UNSET, | 2166 | .tuner_addr = ADDR_UNSET, |
2286 | .radio_addr = ADDR_UNSET, | ||
2287 | .pll = PLL_28, | 2167 | .pll = PLL_28, |
2288 | .muxsel = { 2, 2, 2, 2 }, | 2168 | .muxsel = { 2, 2, 2, 2 }, |
2289 | .gpiomask = 0x3F, | 2169 | .gpiomask = 0x3F, |
@@ -2301,15 +2181,14 @@ struct tvcard bttv_tvcards[] = { | |||
2301 | .pll = PLL_28, | 2181 | .pll = PLL_28, |
2302 | .tuner_type = TUNER_PHILIPS_PAL, | 2182 | .tuner_type = TUNER_PHILIPS_PAL, |
2303 | .tuner_addr = ADDR_UNSET, | 2183 | .tuner_addr = ADDR_UNSET, |
2304 | .radio_addr = ADDR_UNSET, | ||
2305 | .has_remote = 1, | 2184 | .has_remote = 1, |
2306 | }, | 2185 | }, |
2307 | [BTTV_BOARD_LMLBT4] = { | 2186 | [BTTV_BOARD_LMLBT4] = { |
2308 | /* http://linuxmedialabs.com */ | 2187 | /* http://linuxmedialabs.com */ |
2309 | .name = "LMLBT4", | 2188 | .name = "LMLBT4", |
2310 | .video_inputs = 4, /* IN1,IN2,IN3,IN4 */ | 2189 | .video_inputs = 4, /* IN1,IN2,IN3,IN4 */ |
2311 | .audio_inputs = 0, | 2190 | /* .audio_inputs= 0, */ |
2312 | .svhs = UNSET, | 2191 | .svhs = NO_SVHS, |
2313 | .muxsel = { 2, 3, 1, 0 }, | 2192 | .muxsel = { 2, 3, 1, 0 }, |
2314 | .no_msp34xx = 1, | 2193 | .no_msp34xx = 1, |
2315 | .no_tda9875 = 1, | 2194 | .no_tda9875 = 1, |
@@ -2317,16 +2196,14 @@ struct tvcard bttv_tvcards[] = { | |||
2317 | .needs_tvaudio = 0, | 2196 | .needs_tvaudio = 0, |
2318 | .tuner_type = TUNER_ABSENT, | 2197 | .tuner_type = TUNER_ABSENT, |
2319 | .tuner_addr = ADDR_UNSET, | 2198 | .tuner_addr = ADDR_UNSET, |
2320 | .radio_addr = ADDR_UNSET, | ||
2321 | }, | 2199 | }, |
2322 | [BTTV_BOARD_TEKRAM_M205] = { | 2200 | [BTTV_BOARD_TEKRAM_M205] = { |
2323 | /* Helmroos Harri <harri.helmroos@pp.inet.fi> */ | 2201 | /* Helmroos Harri <harri.helmroos@pp.inet.fi> */ |
2324 | .name = "Tekram M205 PRO", | 2202 | .name = "Tekram M205 PRO", |
2325 | .video_inputs = 3, | 2203 | .video_inputs = 3, |
2326 | .audio_inputs = 1, | 2204 | /* .audio_inputs= 1, */ |
2327 | .tuner_type = TUNER_PHILIPS_PAL, | 2205 | .tuner_type = TUNER_PHILIPS_PAL, |
2328 | .tuner_addr = ADDR_UNSET, | 2206 | .tuner_addr = ADDR_UNSET, |
2329 | .radio_addr = ADDR_UNSET, | ||
2330 | .svhs = 2, | 2207 | .svhs = 2, |
2331 | .needs_tvaudio = 0, | 2208 | .needs_tvaudio = 0, |
2332 | .gpiomask = 0x68, | 2209 | .gpiomask = 0x68, |
@@ -2341,7 +2218,7 @@ struct tvcard bttv_tvcards[] = { | |||
2341 | /* bt878 TV + FM without subsystem ID */ | 2218 | /* bt878 TV + FM without subsystem ID */ |
2342 | .name = "Conceptronic CONTVFMi", | 2219 | .name = "Conceptronic CONTVFMi", |
2343 | .video_inputs = 3, | 2220 | .video_inputs = 3, |
2344 | .audio_inputs = 1, | 2221 | /* .audio_inputs= 1, */ |
2345 | .svhs = 2, | 2222 | .svhs = 2, |
2346 | .gpiomask = 0x008007, | 2223 | .gpiomask = 0x008007, |
2347 | .muxsel = { 2, 3, 1, 1 }, | 2224 | .muxsel = { 2, 3, 1, 1 }, |
@@ -2351,7 +2228,6 @@ struct tvcard bttv_tvcards[] = { | |||
2351 | .pll = PLL_28, | 2228 | .pll = PLL_28, |
2352 | .tuner_type = TUNER_PHILIPS_PAL, | 2229 | .tuner_type = TUNER_PHILIPS_PAL, |
2353 | .tuner_addr = ADDR_UNSET, | 2230 | .tuner_addr = ADDR_UNSET, |
2354 | .radio_addr = ADDR_UNSET, | ||
2355 | .has_remote = 1, | 2231 | .has_remote = 1, |
2356 | .has_radio = 1, | 2232 | .has_radio = 1, |
2357 | }, | 2233 | }, |
@@ -2362,8 +2238,8 @@ struct tvcard bttv_tvcards[] = { | |||
2362 | /*0x79 in bttv.h*/ | 2238 | /*0x79 in bttv.h*/ |
2363 | .name = "Euresys Picolo Tetra", | 2239 | .name = "Euresys Picolo Tetra", |
2364 | .video_inputs = 4, | 2240 | .video_inputs = 4, |
2365 | .audio_inputs = 0, | 2241 | /* .audio_inputs= 0, */ |
2366 | .svhs = UNSET, | 2242 | .svhs = NO_SVHS, |
2367 | .gpiomask = 0, | 2243 | .gpiomask = 0, |
2368 | .gpiomask2 = 0x3C<<16,/*Set the GPIO[18]->GPIO[21] as output pin.==> drive the video inputs through analog multiplexers*/ | 2244 | .gpiomask2 = 0x3C<<16,/*Set the GPIO[18]->GPIO[21] as output pin.==> drive the video inputs through analog multiplexers*/ |
2369 | .no_msp34xx = 1, | 2245 | .no_msp34xx = 1, |
@@ -2376,21 +2252,19 @@ struct tvcard bttv_tvcards[] = { | |||
2376 | .muxsel_hook = picolo_tetra_muxsel,/*Required as it doesn't follow the classic input selection policy*/ | 2252 | .muxsel_hook = picolo_tetra_muxsel,/*Required as it doesn't follow the classic input selection policy*/ |
2377 | .tuner_type = TUNER_ABSENT, | 2253 | .tuner_type = TUNER_ABSENT, |
2378 | .tuner_addr = ADDR_UNSET, | 2254 | .tuner_addr = ADDR_UNSET, |
2379 | .radio_addr = ADDR_UNSET, | ||
2380 | }, | 2255 | }, |
2381 | [BTTV_BOARD_SPIRIT_TV] = { | 2256 | [BTTV_BOARD_SPIRIT_TV] = { |
2382 | /* Spirit TV Tuner from http://spiritmodems.com.au */ | 2257 | /* Spirit TV Tuner from http://spiritmodems.com.au */ |
2383 | /* Stafford Goodsell <surge@goliath.homeunix.org> */ | 2258 | /* Stafford Goodsell <surge@goliath.homeunix.org> */ |
2384 | .name = "Spirit TV Tuner", | 2259 | .name = "Spirit TV Tuner", |
2385 | .video_inputs = 3, | 2260 | .video_inputs = 3, |
2386 | .audio_inputs = 1, | 2261 | /* .audio_inputs= 1, */ |
2387 | .svhs = 2, | 2262 | .svhs = 2, |
2388 | .gpiomask = 0x0000000f, | 2263 | .gpiomask = 0x0000000f, |
2389 | .muxsel = { 2, 1, 1 }, | 2264 | .muxsel = { 2, 1, 1 }, |
2390 | .gpiomux = { 0x02, 0x00, 0x00, 0x00 }, | 2265 | .gpiomux = { 0x02, 0x00, 0x00, 0x00 }, |
2391 | .tuner_type = TUNER_TEMIC_PAL, | 2266 | .tuner_type = TUNER_TEMIC_PAL, |
2392 | .tuner_addr = ADDR_UNSET, | 2267 | .tuner_addr = ADDR_UNSET, |
2393 | .radio_addr = ADDR_UNSET, | ||
2394 | .no_msp34xx = 1, | 2268 | .no_msp34xx = 1, |
2395 | .no_tda9875 = 1, | 2269 | .no_tda9875 = 1, |
2396 | }, | 2270 | }, |
@@ -2401,7 +2275,6 @@ struct tvcard bttv_tvcards[] = { | |||
2401 | .svhs = 1, | 2275 | .svhs = 1, |
2402 | .tuner_type = TUNER_ABSENT, | 2276 | .tuner_type = TUNER_ABSENT, |
2403 | .tuner_addr = ADDR_UNSET, | 2277 | .tuner_addr = ADDR_UNSET, |
2404 | .radio_addr = ADDR_UNSET, | ||
2405 | .muxsel = { 3 , 3 }, | 2278 | .muxsel = { 3 , 3 }, |
2406 | .no_msp34xx = 1, | 2279 | .no_msp34xx = 1, |
2407 | .no_tda9875 = 1, | 2280 | .no_tda9875 = 1, |
@@ -2425,43 +2298,40 @@ struct tvcard bttv_tvcards[] = { | |||
2425 | .pll = PLL_28, | 2298 | .pll = PLL_28, |
2426 | .tuner_type = TUNER_ABSENT, | 2299 | .tuner_type = TUNER_ABSENT, |
2427 | .tuner_addr = ADDR_UNSET, | 2300 | .tuner_addr = ADDR_UNSET, |
2428 | .radio_addr = ADDR_UNSET, | ||
2429 | .has_dvb = 1, | 2301 | .has_dvb = 1, |
2430 | .no_gpioirq = 1, | 2302 | .no_gpioirq = 1, |
2431 | .has_remote = 1, | 2303 | .has_remote = 1, |
2432 | }, | 2304 | }, |
2433 | [BTTV_BOARD_MATRIX_VISIONSQ] = { | 2305 | [BTTV_BOARD_MATRIX_VISIONSQ] = { |
2434 | /* andre.schwarz@matrix-vision.de */ | 2306 | /* andre.schwarz@matrix-vision.de */ |
2435 | .name = "MATRIX Vision Sigma-SQ", | 2307 | .name = "MATRIX Vision Sigma-SQ", |
2436 | .video_inputs = 16, | 2308 | .video_inputs = 16, |
2437 | .audio_inputs = 0, | 2309 | /* .audio_inputs= 0, */ |
2438 | .svhs = UNSET, | 2310 | .svhs = NO_SVHS, |
2439 | .gpiomask = 0x0, | 2311 | .gpiomask = 0x0, |
2440 | .muxsel = { 2, 2, 2, 2, 2, 2, 2, 2, | 2312 | .muxsel = { 2, 2, 2, 2, 2, 2, 2, 2, |
2441 | 3, 3, 3, 3, 3, 3, 3, 3 }, | 2313 | 3, 3, 3, 3, 3, 3, 3, 3 }, |
2442 | .muxsel_hook = sigmaSQ_muxsel, | 2314 | .muxsel_hook = sigmaSQ_muxsel, |
2443 | .gpiomux = { 0 }, | 2315 | .gpiomux = { 0 }, |
2444 | .no_msp34xx = 1, | 2316 | .no_msp34xx = 1, |
2445 | .pll = PLL_28, | 2317 | .pll = PLL_28, |
2446 | .tuner_type = TUNER_ABSENT, | 2318 | .tuner_type = TUNER_ABSENT, |
2447 | .tuner_addr = ADDR_UNSET, | 2319 | .tuner_addr = ADDR_UNSET, |
2448 | .radio_addr = ADDR_UNSET, | ||
2449 | }, | 2320 | }, |
2450 | [BTTV_BOARD_MATRIX_VISIONSLC] = { | 2321 | [BTTV_BOARD_MATRIX_VISIONSLC] = { |
2451 | /* andre.schwarz@matrix-vision.de */ | 2322 | /* andre.schwarz@matrix-vision.de */ |
2452 | .name = "MATRIX Vision Sigma-SLC", | 2323 | .name = "MATRIX Vision Sigma-SLC", |
2453 | .video_inputs = 4, | 2324 | .video_inputs = 4, |
2454 | .audio_inputs = 0, | 2325 | /* .audio_inputs= 0, */ |
2455 | .svhs = UNSET, | 2326 | .svhs = NO_SVHS, |
2456 | .gpiomask = 0x0, | 2327 | .gpiomask = 0x0, |
2457 | .muxsel = { 2, 2, 2, 2 }, | 2328 | .muxsel = { 2, 2, 2, 2 }, |
2458 | .muxsel_hook = sigmaSLC_muxsel, | 2329 | .muxsel_hook = sigmaSLC_muxsel, |
2459 | .gpiomux = { 0 }, | 2330 | .gpiomux = { 0 }, |
2460 | .no_msp34xx = 1, | 2331 | .no_msp34xx = 1, |
2461 | .pll = PLL_28, | 2332 | .pll = PLL_28, |
2462 | .tuner_type = TUNER_ABSENT, | 2333 | .tuner_type = TUNER_ABSENT, |
2463 | .tuner_addr = ADDR_UNSET, | 2334 | .tuner_addr = ADDR_UNSET, |
2464 | .radio_addr = ADDR_UNSET, | ||
2465 | }, | 2335 | }, |
2466 | /* BTTV_BOARD_APAC_VIEWCOMP */ | 2336 | /* BTTV_BOARD_APAC_VIEWCOMP */ |
2467 | [BTTV_BOARD_APAC_VIEWCOMP] = { | 2337 | [BTTV_BOARD_APAC_VIEWCOMP] = { |
@@ -2469,8 +2339,8 @@ struct tvcard bttv_tvcards[] = { | |||
2469 | /* bt878 TV + FM 0x00000000 subsystem ID */ | 2339 | /* bt878 TV + FM 0x00000000 subsystem ID */ |
2470 | .name = "APAC Viewcomp 878(AMAX)", | 2340 | .name = "APAC Viewcomp 878(AMAX)", |
2471 | .video_inputs = 2, | 2341 | .video_inputs = 2, |
2472 | .audio_inputs = 1, | 2342 | /* .audio_inputs= 1, */ |
2473 | .svhs = UNSET, | 2343 | .svhs = NO_SVHS, |
2474 | .gpiomask = 0xFF, | 2344 | .gpiomask = 0xFF, |
2475 | .muxsel = { 2, 3, 1, 1 }, | 2345 | .muxsel = { 2, 3, 1, 1 }, |
2476 | .gpiomux = { 2, 0, 0, 0 }, | 2346 | .gpiomux = { 2, 0, 0, 0 }, |
@@ -2479,7 +2349,6 @@ struct tvcard bttv_tvcards[] = { | |||
2479 | .pll = PLL_28, | 2349 | .pll = PLL_28, |
2480 | .tuner_type = TUNER_PHILIPS_PAL, | 2350 | .tuner_type = TUNER_PHILIPS_PAL, |
2481 | .tuner_addr = ADDR_UNSET, | 2351 | .tuner_addr = ADDR_UNSET, |
2482 | .radio_addr = ADDR_UNSET, | ||
2483 | .has_remote = 1, /* miniremote works, see ir-kbd-gpio.c */ | 2352 | .has_remote = 1, /* miniremote works, see ir-kbd-gpio.c */ |
2484 | .has_radio = 1, /* not every card has radio */ | 2353 | .has_radio = 1, /* not every card has radio */ |
2485 | }, | 2354 | }, |
@@ -2496,13 +2365,12 @@ struct tvcard bttv_tvcards[] = { | |||
2496 | .has_dvb = 1, | 2365 | .has_dvb = 1, |
2497 | .tuner_type = TUNER_ABSENT, | 2366 | .tuner_type = TUNER_ABSENT, |
2498 | .tuner_addr = ADDR_UNSET, | 2367 | .tuner_addr = ADDR_UNSET, |
2499 | .radio_addr = ADDR_UNSET, | ||
2500 | }, | 2368 | }, |
2501 | [BTTV_BOARD_VGEAR_MYVCD] = { | 2369 | [BTTV_BOARD_VGEAR_MYVCD] = { |
2502 | /* Steven <photon38@pchome.com.tw> */ | 2370 | /* Steven <photon38@pchome.com.tw> */ |
2503 | .name = "V-Gear MyVCD", | 2371 | .name = "V-Gear MyVCD", |
2504 | .video_inputs = 3, | 2372 | .video_inputs = 3, |
2505 | .audio_inputs = 1, | 2373 | /* .audio_inputs= 1, */ |
2506 | .svhs = 2, | 2374 | .svhs = 2, |
2507 | .gpiomask = 0x3f, | 2375 | .gpiomask = 0x3f, |
2508 | .muxsel = {2, 3, 1, 0 }, | 2376 | .muxsel = {2, 3, 1, 0 }, |
@@ -2512,19 +2380,17 @@ struct tvcard bttv_tvcards[] = { | |||
2512 | .pll = PLL_28, | 2380 | .pll = PLL_28, |
2513 | .tuner_type = TUNER_PHILIPS_NTSC_M, | 2381 | .tuner_type = TUNER_PHILIPS_NTSC_M, |
2514 | .tuner_addr = ADDR_UNSET, | 2382 | .tuner_addr = ADDR_UNSET, |
2515 | .radio_addr = ADDR_UNSET, | ||
2516 | .has_radio = 0, | 2383 | .has_radio = 0, |
2517 | }, | 2384 | }, |
2518 | [BTTV_BOARD_SUPER_TV] = { | 2385 | [BTTV_BOARD_SUPER_TV] = { |
2519 | /* Rick C <cryptdragoon@gmail.com> */ | 2386 | /* Rick C <cryptdragoon@gmail.com> */ |
2520 | .name = "Super TV Tuner", | 2387 | .name = "Super TV Tuner", |
2521 | .video_inputs = 4, | 2388 | .video_inputs = 4, |
2522 | .audio_inputs = 1, | 2389 | /* .audio_inputs= 1, */ |
2523 | .svhs = 2, | 2390 | .svhs = 2, |
2524 | .muxsel = { 2, 3, 1, 0 }, | 2391 | .muxsel = { 2, 3, 1, 0 }, |
2525 | .tuner_type = TUNER_PHILIPS_NTSC, | 2392 | .tuner_type = TUNER_PHILIPS_NTSC, |
2526 | .tuner_addr = ADDR_UNSET, | 2393 | .tuner_addr = ADDR_UNSET, |
2527 | .radio_addr = ADDR_UNSET, | ||
2528 | .gpiomask = 0x008007, | 2394 | .gpiomask = 0x008007, |
2529 | .gpiomux = { 0, 0x000001,0,0 }, | 2395 | .gpiomux = { 0, 0x000001,0,0 }, |
2530 | .needs_tvaudio = 1, | 2396 | .needs_tvaudio = 1, |
@@ -2534,8 +2400,8 @@ struct tvcard bttv_tvcards[] = { | |||
2534 | /* Chris Fanning <video4linux@haydon.net> */ | 2400 | /* Chris Fanning <video4linux@haydon.net> */ |
2535 | .name = "Tibet Systems 'Progress DVR' CS16", | 2401 | .name = "Tibet Systems 'Progress DVR' CS16", |
2536 | .video_inputs = 16, | 2402 | .video_inputs = 16, |
2537 | .audio_inputs = 0, | 2403 | /* .audio_inputs= 0, */ |
2538 | .svhs = UNSET, | 2404 | .svhs = NO_SVHS, |
2539 | .muxsel = { 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 }, | 2405 | .muxsel = { 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 }, |
2540 | .pll = PLL_28, | 2406 | .pll = PLL_28, |
2541 | .no_msp34xx = 1, | 2407 | .no_msp34xx = 1, |
@@ -2543,7 +2409,6 @@ struct tvcard bttv_tvcards[] = { | |||
2543 | .no_tda7432 = 1, | 2409 | .no_tda7432 = 1, |
2544 | .tuner_type = TUNER_ABSENT, | 2410 | .tuner_type = TUNER_ABSENT, |
2545 | .tuner_addr = ADDR_UNSET, | 2411 | .tuner_addr = ADDR_UNSET, |
2546 | .radio_addr = ADDR_UNSET, | ||
2547 | .muxsel_hook = tibetCS16_muxsel, | 2412 | .muxsel_hook = tibetCS16_muxsel, |
2548 | }, | 2413 | }, |
2549 | [BTTV_BOARD_KODICOM_4400R] = { | 2414 | [BTTV_BOARD_KODICOM_4400R] = { |
@@ -2560,11 +2425,10 @@ struct tvcard bttv_tvcards[] = { | |||
2560 | */ | 2425 | */ |
2561 | .name = "Kodicom 4400R (master)", | 2426 | .name = "Kodicom 4400R (master)", |
2562 | .video_inputs = 16, | 2427 | .video_inputs = 16, |
2563 | .audio_inputs = 0, | 2428 | /* .audio_inputs= 0, */ |
2564 | .tuner_type = TUNER_ABSENT, | 2429 | .tuner_type = TUNER_ABSENT, |
2565 | .tuner_addr = ADDR_UNSET, | 2430 | .tuner_addr = ADDR_UNSET, |
2566 | .radio_addr = ADDR_UNSET, | 2431 | .svhs = NO_SVHS, |
2567 | .svhs = UNSET, | ||
2568 | /* GPIO bits 0-9 used for analog switch: | 2432 | /* GPIO bits 0-9 used for analog switch: |
2569 | * 00 - 03: camera selector | 2433 | * 00 - 03: camera selector |
2570 | * 04 - 06: channel (controller) selector | 2434 | * 04 - 06: channel (controller) selector |
@@ -2591,11 +2455,10 @@ struct tvcard bttv_tvcards[] = { | |||
2591 | */ | 2455 | */ |
2592 | .name = "Kodicom 4400R (slave)", | 2456 | .name = "Kodicom 4400R (slave)", |
2593 | .video_inputs = 16, | 2457 | .video_inputs = 16, |
2594 | .audio_inputs = 0, | 2458 | /* .audio_inputs= 0, */ |
2595 | .tuner_type = TUNER_ABSENT, | 2459 | .tuner_type = TUNER_ABSENT, |
2596 | .tuner_addr = ADDR_UNSET, | 2460 | .tuner_addr = ADDR_UNSET, |
2597 | .radio_addr = ADDR_UNSET, | 2461 | .svhs = NO_SVHS, |
2598 | .svhs = UNSET, | ||
2599 | .gpiomask = 0x010000, | 2462 | .gpiomask = 0x010000, |
2600 | .no_gpioirq = 1, | 2463 | .no_gpioirq = 1, |
2601 | .muxsel = { 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 }, | 2464 | .muxsel = { 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 }, |
@@ -2611,12 +2474,11 @@ struct tvcard bttv_tvcards[] = { | |||
2611 | /* Adlink RTV24 with special unlock codes */ | 2474 | /* Adlink RTV24 with special unlock codes */ |
2612 | .name = "Adlink RTV24", | 2475 | .name = "Adlink RTV24", |
2613 | .video_inputs = 4, | 2476 | .video_inputs = 4, |
2614 | .audio_inputs = 1, | 2477 | /* .audio_inputs= 1, */ |
2615 | .svhs = 2, | 2478 | .svhs = 2, |
2616 | .muxsel = { 2, 3, 1, 0 }, | 2479 | .muxsel = { 2, 3, 1, 0 }, |
2617 | .tuner_type = UNSET, | 2480 | .tuner_type = UNSET, |
2618 | .tuner_addr = ADDR_UNSET, | 2481 | .tuner_addr = ADDR_UNSET, |
2619 | .radio_addr = ADDR_UNSET, | ||
2620 | .pll = PLL_28, | 2482 | .pll = PLL_28, |
2621 | }, | 2483 | }, |
2622 | /* ---- card 0x87---------------------------------- */ | 2484 | /* ---- card 0x87---------------------------------- */ |
@@ -2625,9 +2487,8 @@ struct tvcard bttv_tvcards[] = { | |||
2625 | .name = "DViCO FusionHDTV 5 Lite", | 2487 | .name = "DViCO FusionHDTV 5 Lite", |
2626 | .tuner_type = TUNER_LG_TDVS_H06XF, /* TDVS-H064F */ | 2488 | .tuner_type = TUNER_LG_TDVS_H06XF, /* TDVS-H064F */ |
2627 | .tuner_addr = ADDR_UNSET, | 2489 | .tuner_addr = ADDR_UNSET, |
2628 | .radio_addr = ADDR_UNSET, | ||
2629 | .video_inputs = 3, | 2490 | .video_inputs = 3, |
2630 | .audio_inputs = 1, | 2491 | /* .audio_inputs= 1, */ |
2631 | .svhs = 2, | 2492 | .svhs = 2, |
2632 | .muxsel = { 2, 3, 1 }, | 2493 | .muxsel = { 2, 3, 1 }, |
2633 | .gpiomask = 0x00e00007, | 2494 | .gpiomask = 0x00e00007, |
@@ -2643,7 +2504,7 @@ struct tvcard bttv_tvcards[] = { | |||
2643 | /* Mauro Carvalho Chehab <mchehab@infradead.org> */ | 2504 | /* Mauro Carvalho Chehab <mchehab@infradead.org> */ |
2644 | .name = "Acorp Y878F", | 2505 | .name = "Acorp Y878F", |
2645 | .video_inputs = 3, | 2506 | .video_inputs = 3, |
2646 | .audio_inputs = 1, | 2507 | /* .audio_inputs= 1, */ |
2647 | .svhs = 2, | 2508 | .svhs = 2, |
2648 | .gpiomask = 0x01fe00, | 2509 | .gpiomask = 0x01fe00, |
2649 | .muxsel = { 2, 3, 1, 1 }, | 2510 | .muxsel = { 2, 3, 1, 1 }, |
@@ -2653,14 +2514,13 @@ struct tvcard bttv_tvcards[] = { | |||
2653 | .pll = PLL_28, | 2514 | .pll = PLL_28, |
2654 | .tuner_type = TUNER_YMEC_TVF66T5_B_DFF, | 2515 | .tuner_type = TUNER_YMEC_TVF66T5_B_DFF, |
2655 | .tuner_addr = 0xc1 >>1, | 2516 | .tuner_addr = 0xc1 >>1, |
2656 | .radio_addr = 0xc1 >>1, | ||
2657 | .has_radio = 1, | 2517 | .has_radio = 1, |
2658 | }, | 2518 | }, |
2659 | /* ---- card 0x89 ---------------------------------- */ | 2519 | /* ---- card 0x89 ---------------------------------- */ |
2660 | [BTTV_BOARD_CONCEPTRONIC_CTVFMI2] = { | 2520 | [BTTV_BOARD_CONCEPTRONIC_CTVFMI2] = { |
2661 | .name = "Conceptronic CTVFMi v2", | 2521 | .name = "Conceptronic CTVFMi v2", |
2662 | .video_inputs = 3, | 2522 | .video_inputs = 3, |
2663 | .audio_inputs = 1, | 2523 | /* .audio_inputs= 1, */ |
2664 | .svhs = 2, | 2524 | .svhs = 2, |
2665 | .gpiomask = 0x001c0007, | 2525 | .gpiomask = 0x001c0007, |
2666 | .muxsel = { 2, 3, 1, 1 }, | 2526 | .muxsel = { 2, 3, 1, 1 }, |
@@ -2670,34 +2530,32 @@ struct tvcard bttv_tvcards[] = { | |||
2670 | .pll = PLL_28, | 2530 | .pll = PLL_28, |
2671 | .tuner_type = TUNER_TENA_9533_DI, | 2531 | .tuner_type = TUNER_TENA_9533_DI, |
2672 | .tuner_addr = ADDR_UNSET, | 2532 | .tuner_addr = ADDR_UNSET, |
2673 | .radio_addr = ADDR_UNSET, | ||
2674 | .has_remote = 1, | 2533 | .has_remote = 1, |
2675 | .has_radio = 1, | 2534 | .has_radio = 1, |
2676 | }, | 2535 | }, |
2677 | /* ---- card 0x8a ---------------------------------- */ | 2536 | /* ---- card 0x8a ---------------------------------- */ |
2678 | [BTTV_BOARD_PV_BT878P_2E] = { | 2537 | [BTTV_BOARD_PV_BT878P_2E] = { |
2679 | .name = "Prolink Pixelview PV-BT878P+ (Rev.2E)", | 2538 | .name = "Prolink Pixelview PV-BT878P+ (Rev.2E)", |
2680 | .video_inputs = 5, | 2539 | .video_inputs = 5, |
2681 | .audio_inputs = 1, | 2540 | /* .audio_inputs= 1, */ |
2682 | .svhs = 3, | 2541 | .svhs = 3, |
2683 | .gpiomask = 0x01fe00, | 2542 | .gpiomask = 0x01fe00, |
2684 | .muxsel = { 2,3,1,1,-1 }, | 2543 | .muxsel = { 2, 3, 1, 1, -1 }, |
2685 | .digital_mode = DIGITAL_MODE_CAMERA, | 2544 | /* .digital_mode= DIGITAL_MODE_CAMERA, */ |
2686 | .gpiomux = { 0x00400, 0x10400, 0x04400, 0x80000 }, | 2545 | .gpiomux = { 0x00400, 0x10400, 0x04400, 0x80000 }, |
2687 | .gpiomute = 0x12400, | 2546 | .gpiomute = 0x12400, |
2688 | .no_msp34xx = 1, | 2547 | .no_msp34xx = 1, |
2689 | .pll = PLL_28, | 2548 | .pll = PLL_28, |
2690 | .tuner_type = TUNER_LG_PAL_FM, | 2549 | .tuner_type = TUNER_LG_PAL_FM, |
2691 | .tuner_addr = ADDR_UNSET, | 2550 | .tuner_addr = ADDR_UNSET, |
2692 | .radio_addr = ADDR_UNSET, | 2551 | .has_remote = 1, |
2693 | .has_remote = 1, | ||
2694 | }, | 2552 | }, |
2695 | /* ---- card 0x8b ---------------------------------- */ | 2553 | /* ---- card 0x8b ---------------------------------- */ |
2696 | [BTTV_BOARD_PV_M4900] = { | 2554 | [BTTV_BOARD_PV_M4900] = { |
2697 | /* Sérgio Fortier <sergiofortier@yahoo.com.br> */ | 2555 | /* Sérgio Fortier <sergiofortier@yahoo.com.br> */ |
2698 | .name = "Prolink PixelView PlayTV MPEG2 PV-M4900", | 2556 | .name = "Prolink PixelView PlayTV MPEG2 PV-M4900", |
2699 | .video_inputs = 3, | 2557 | .video_inputs = 3, |
2700 | .audio_inputs = 1, | 2558 | /* .audio_inputs= 1, */ |
2701 | .svhs = 2, | 2559 | .svhs = 2, |
2702 | .gpiomask = 0x3f, | 2560 | .gpiomask = 0x3f, |
2703 | .muxsel = { 2, 3, 1, 1 }, | 2561 | .muxsel = { 2, 3, 1, 1 }, |
@@ -2707,7 +2565,6 @@ struct tvcard bttv_tvcards[] = { | |||
2707 | .pll = PLL_28, | 2565 | .pll = PLL_28, |
2708 | .tuner_type = TUNER_YMEC_TVF_5533MF, | 2566 | .tuner_type = TUNER_YMEC_TVF_5533MF, |
2709 | .tuner_addr = ADDR_UNSET, | 2567 | .tuner_addr = ADDR_UNSET, |
2710 | .radio_addr = ADDR_UNSET, | ||
2711 | .has_radio = 1, | 2568 | .has_radio = 1, |
2712 | .has_remote = 1, | 2569 | .has_remote = 1, |
2713 | }, | 2570 | }, |
@@ -2727,8 +2584,8 @@ struct tvcard bttv_tvcards[] = { | |||
2727 | [BTTV_BOARD_OSPREY440] = { | 2584 | [BTTV_BOARD_OSPREY440] = { |
2728 | .name = "Osprey 440", | 2585 | .name = "Osprey 440", |
2729 | .video_inputs = 4, | 2586 | .video_inputs = 4, |
2730 | .audio_inputs = 2, /* this is meaningless */ | 2587 | /* .audio_inputs= 2, */ |
2731 | .svhs = UNSET, | 2588 | .svhs = NO_SVHS, |
2732 | .muxsel = { 2, 3, 0, 1 }, /* 3,0,1 are guesses */ | 2589 | .muxsel = { 2, 3, 0, 1 }, /* 3,0,1 are guesses */ |
2733 | .gpiomask = 0x303, | 2590 | .gpiomask = 0x303, |
2734 | .gpiomute = 0x000, /* int + 32kHz */ | 2591 | .gpiomute = 0x000, /* int + 32kHz */ |
@@ -2736,7 +2593,6 @@ struct tvcard bttv_tvcards[] = { | |||
2736 | .pll = PLL_28, | 2593 | .pll = PLL_28, |
2737 | .tuner_type = TUNER_ABSENT, | 2594 | .tuner_type = TUNER_ABSENT, |
2738 | .tuner_addr = ADDR_UNSET, | 2595 | .tuner_addr = ADDR_UNSET, |
2739 | .radio_addr = ADDR_UNSET, | ||
2740 | .no_msp34xx = 1, | 2596 | .no_msp34xx = 1, |
2741 | .no_tda9875 = 1, | 2597 | .no_tda9875 = 1, |
2742 | .no_tda7432 = 1, | 2598 | .no_tda7432 = 1, |
@@ -2745,7 +2601,7 @@ struct tvcard bttv_tvcards[] = { | |||
2745 | [BTTV_BOARD_ASOUND_SKYEYE] = { | 2601 | [BTTV_BOARD_ASOUND_SKYEYE] = { |
2746 | .name = "Asound Skyeye PCTV", | 2602 | .name = "Asound Skyeye PCTV", |
2747 | .video_inputs = 3, | 2603 | .video_inputs = 3, |
2748 | .audio_inputs = 1, | 2604 | /* .audio_inputs= 1, */ |
2749 | .svhs = 2, | 2605 | .svhs = 2, |
2750 | .gpiomask = 15, | 2606 | .gpiomask = 15, |
2751 | .muxsel = { 2, 3, 1, 1 }, | 2607 | .muxsel = { 2, 3, 1, 1 }, |
@@ -2755,13 +2611,12 @@ struct tvcard bttv_tvcards[] = { | |||
2755 | .pll = PLL_28, | 2611 | .pll = PLL_28, |
2756 | .tuner_type = TUNER_PHILIPS_NTSC, | 2612 | .tuner_type = TUNER_PHILIPS_NTSC, |
2757 | .tuner_addr = ADDR_UNSET, | 2613 | .tuner_addr = ADDR_UNSET, |
2758 | .radio_addr = ADDR_UNSET, | ||
2759 | }, | 2614 | }, |
2760 | /* ---- card 0x8e ---------------------------------- */ | 2615 | /* ---- card 0x8e ---------------------------------- */ |
2761 | [BTTV_BOARD_SABRENT_TVFM] = { | 2616 | [BTTV_BOARD_SABRENT_TVFM] = { |
2762 | .name = "Sabrent TV-FM (bttv version)", | 2617 | .name = "Sabrent TV-FM (bttv version)", |
2763 | .video_inputs = 3, | 2618 | .video_inputs = 3, |
2764 | .audio_inputs = 1, | 2619 | /* .audio_inputs= 1, */ |
2765 | .svhs = 2, | 2620 | .svhs = 2, |
2766 | .gpiomask = 0x108007, | 2621 | .gpiomask = 0x108007, |
2767 | .muxsel = { 2, 3, 1, 1 }, | 2622 | .muxsel = { 2, 3, 1, 1 }, |
@@ -2778,8 +2633,8 @@ struct tvcard bttv_tvcards[] = { | |||
2778 | [BTTV_BOARD_HAUPPAUGE_IMPACTVCB] = { | 2633 | [BTTV_BOARD_HAUPPAUGE_IMPACTVCB] = { |
2779 | .name = "Hauppauge ImpactVCB (bt878)", | 2634 | .name = "Hauppauge ImpactVCB (bt878)", |
2780 | .video_inputs = 4, | 2635 | .video_inputs = 4, |
2781 | .audio_inputs = 0, | 2636 | /* .audio_inputs= 0, */ |
2782 | .svhs = UNSET, | 2637 | .svhs = NO_SVHS, |
2783 | .gpiomask = 0x0f, /* old: 7 */ | 2638 | .gpiomask = 0x0f, /* old: 7 */ |
2784 | .muxsel = { 0, 1, 3, 2 }, /* Composite 0-3 */ | 2639 | .muxsel = { 0, 1, 3, 2 }, /* Composite 0-3 */ |
2785 | .no_msp34xx = 1, | 2640 | .no_msp34xx = 1, |
@@ -2787,7 +2642,6 @@ struct tvcard bttv_tvcards[] = { | |||
2787 | .no_tda7432 = 1, | 2642 | .no_tda7432 = 1, |
2788 | .tuner_type = TUNER_ABSENT, | 2643 | .tuner_type = TUNER_ABSENT, |
2789 | .tuner_addr = ADDR_UNSET, | 2644 | .tuner_addr = ADDR_UNSET, |
2790 | .radio_addr = ADDR_UNSET, | ||
2791 | }, | 2645 | }, |
2792 | [BTTV_BOARD_MACHTV_MAGICTV] = { | 2646 | [BTTV_BOARD_MACHTV_MAGICTV] = { |
2793 | /* Julian Calaby <julian.calaby@gmail.com> | 2647 | /* Julian Calaby <julian.calaby@gmail.com> |
@@ -2799,7 +2653,7 @@ struct tvcard bttv_tvcards[] = { | |||
2799 | 2653 | ||
2800 | .name = "MagicTV", /* rebranded MachTV */ | 2654 | .name = "MagicTV", /* rebranded MachTV */ |
2801 | .video_inputs = 3, | 2655 | .video_inputs = 3, |
2802 | .audio_inputs = 1, | 2656 | /* .audio_inputs= 1, */ |
2803 | .svhs = 2, | 2657 | .svhs = 2, |
2804 | .gpiomask = 7, | 2658 | .gpiomask = 7, |
2805 | .muxsel = { 2, 3, 1, 1 }, | 2659 | .muxsel = { 2, 3, 1, 1 }, |
@@ -2807,7 +2661,6 @@ struct tvcard bttv_tvcards[] = { | |||
2807 | .gpiomute = 4, | 2661 | .gpiomute = 4, |
2808 | .tuner_type = TUNER_TEMIC_4009FR5_PAL, | 2662 | .tuner_type = TUNER_TEMIC_4009FR5_PAL, |
2809 | .tuner_addr = ADDR_UNSET, | 2663 | .tuner_addr = ADDR_UNSET, |
2810 | .radio_addr = ADDR_UNSET, | ||
2811 | .pll = PLL_28, | 2664 | .pll = PLL_28, |
2812 | .has_radio = 1, | 2665 | .has_radio = 1, |
2813 | .has_remote = 1, | 2666 | .has_remote = 1, |
@@ -2815,31 +2668,28 @@ struct tvcard bttv_tvcards[] = { | |||
2815 | [BTTV_BOARD_SSAI_SECURITY] = { | 2668 | [BTTV_BOARD_SSAI_SECURITY] = { |
2816 | .name = "SSAI Security Video Interface", | 2669 | .name = "SSAI Security Video Interface", |
2817 | .video_inputs = 4, | 2670 | .video_inputs = 4, |
2818 | .audio_inputs = 0, | 2671 | /* .audio_inputs= 0, */ |
2819 | .svhs = UNSET, | 2672 | .svhs = NO_SVHS, |
2820 | .muxsel = { 0, 1, 2, 3 }, | 2673 | .muxsel = { 0, 1, 2, 3 }, |
2821 | .tuner_type = TUNER_ABSENT, | 2674 | .tuner_type = TUNER_ABSENT, |
2822 | .tuner_addr = ADDR_UNSET, | 2675 | .tuner_addr = ADDR_UNSET, |
2823 | .radio_addr = ADDR_UNSET, | ||
2824 | }, | 2676 | }, |
2825 | [BTTV_BOARD_SSAI_ULTRASOUND] = { | 2677 | [BTTV_BOARD_SSAI_ULTRASOUND] = { |
2826 | .name = "SSAI Ultrasound Video Interface", | 2678 | .name = "SSAI Ultrasound Video Interface", |
2827 | .video_inputs = 2, | 2679 | .video_inputs = 2, |
2828 | .audio_inputs = 0, | 2680 | /* .audio_inputs= 0, */ |
2829 | .svhs = 1, | 2681 | .svhs = 1, |
2830 | .muxsel = { 2, 0, 1, 3 }, | 2682 | .muxsel = { 2, 0, 1, 3 }, |
2831 | .tuner_type = TUNER_ABSENT, | 2683 | .tuner_type = TUNER_ABSENT, |
2832 | .tuner_addr = ADDR_UNSET, | 2684 | .tuner_addr = ADDR_UNSET, |
2833 | .radio_addr = ADDR_UNSET, | ||
2834 | }, | 2685 | }, |
2835 | /* ---- card 0x94---------------------------------- */ | 2686 | /* ---- card 0x94---------------------------------- */ |
2836 | [BTTV_BOARD_DVICO_FUSIONHDTV_2] = { | 2687 | [BTTV_BOARD_DVICO_FUSIONHDTV_2] = { |
2837 | .name = "DViCO FusionHDTV 2", | 2688 | .name = "DViCO FusionHDTV 2", |
2838 | .tuner_type = TUNER_PHILIPS_FCV1236D, | 2689 | .tuner_type = TUNER_PHILIPS_FCV1236D, |
2839 | .tuner_addr = ADDR_UNSET, | 2690 | .tuner_addr = ADDR_UNSET, |
2840 | .radio_addr = ADDR_UNSET, | ||
2841 | .video_inputs = 3, | 2691 | .video_inputs = 3, |
2842 | .audio_inputs = 1, | 2692 | /* .audio_inputs= 1, */ |
2843 | .svhs = 2, | 2693 | .svhs = 2, |
2844 | .muxsel = { 2, 3, 1 }, | 2694 | .muxsel = { 2, 3, 1 }, |
2845 | .gpiomask = 0x00e00007, | 2695 | .gpiomask = 0x00e00007, |
@@ -2853,7 +2703,7 @@ struct tvcard bttv_tvcards[] = { | |||
2853 | [BTTV_BOARD_TYPHOON_TVTUNERPCI] = { | 2703 | [BTTV_BOARD_TYPHOON_TVTUNERPCI] = { |
2854 | .name = "Typhoon TV-Tuner PCI (50684)", | 2704 | .name = "Typhoon TV-Tuner PCI (50684)", |
2855 | .video_inputs = 3, | 2705 | .video_inputs = 3, |
2856 | .audio_inputs = 1, | 2706 | /* .audio_inputs= 1, */ |
2857 | .svhs = 2, | 2707 | .svhs = 2, |
2858 | .gpiomask = 0x3014f, | 2708 | .gpiomask = 0x3014f, |
2859 | .muxsel = { 2, 3, 1, 1 }, | 2709 | .muxsel = { 2, 3, 1, 1 }, |
@@ -2863,24 +2713,22 @@ struct tvcard bttv_tvcards[] = { | |||
2863 | .pll = PLL_28, | 2713 | .pll = PLL_28, |
2864 | .tuner_type = TUNER_PHILIPS_PAL_I, | 2714 | .tuner_type = TUNER_PHILIPS_PAL_I, |
2865 | .tuner_addr = ADDR_UNSET, | 2715 | .tuner_addr = ADDR_UNSET, |
2866 | .radio_addr = ADDR_UNSET, | ||
2867 | }, | 2716 | }, |
2868 | [BTTV_BOARD_GEOVISION_GV600] = { | 2717 | [BTTV_BOARD_GEOVISION_GV600] = { |
2869 | /* emhn@usb.ve */ | 2718 | /* emhn@usb.ve */ |
2870 | .name = "Geovision GV-600", | 2719 | .name = "Geovision GV-600", |
2871 | .video_inputs = 16, | 2720 | .video_inputs = 16, |
2872 | .audio_inputs = 0, | 2721 | /* .audio_inputs= 0, */ |
2873 | .svhs = UNSET, | 2722 | .svhs = NO_SVHS, |
2874 | .gpiomask = 0x0, | 2723 | .gpiomask = 0x0, |
2875 | .muxsel = { 2, 2, 2, 2, 2, 2, 2, 2, | 2724 | .muxsel = { 2, 2, 2, 2, 2, 2, 2, 2, |
2876 | 2, 2, 2, 2, 2, 2, 2, 2 }, | 2725 | 2, 2, 2, 2, 2, 2, 2, 2 }, |
2877 | .muxsel_hook = geovision_muxsel, | 2726 | .muxsel_hook = geovision_muxsel, |
2878 | .gpiomux = { 0 }, | 2727 | .gpiomux = { 0 }, |
2879 | .no_msp34xx = 1, | 2728 | .no_msp34xx = 1, |
2880 | .pll = PLL_28, | 2729 | .pll = PLL_28, |
2881 | .tuner_type = TUNER_ABSENT, | 2730 | .tuner_type = TUNER_ABSENT, |
2882 | .tuner_addr = ADDR_UNSET, | 2731 | .tuner_addr = ADDR_UNSET, |
2883 | .radio_addr = ADDR_UNSET, | ||
2884 | }, | 2732 | }, |
2885 | [BTTV_BOARD_KOZUMI_KTV_01C] = { | 2733 | [BTTV_BOARD_KOZUMI_KTV_01C] = { |
2886 | /* Mauro Lacy <mauro@lacy.com.ar> | 2734 | /* Mauro Lacy <mauro@lacy.com.ar> |
@@ -2888,7 +2736,7 @@ struct tvcard bttv_tvcards[] = { | |||
2888 | 2736 | ||
2889 | .name = "Kozumi KTV-01C", | 2737 | .name = "Kozumi KTV-01C", |
2890 | .video_inputs = 3, | 2738 | .video_inputs = 3, |
2891 | .audio_inputs = 1, | 2739 | /* .audio_inputs= 1, */ |
2892 | .svhs = 2, | 2740 | .svhs = 2, |
2893 | .gpiomask = 0x008007, | 2741 | .gpiomask = 0x008007, |
2894 | .muxsel = { 2, 3, 1, 1 }, | 2742 | .muxsel = { 2, 3, 1, 1 }, |
@@ -2897,7 +2745,6 @@ struct tvcard bttv_tvcards[] = { | |||
2897 | .needs_tvaudio = 0, | 2745 | .needs_tvaudio = 0, |
2898 | .tuner_type = TUNER_PHILIPS_FM1216ME_MK3, /* TCL MK3 */ | 2746 | .tuner_type = TUNER_PHILIPS_FM1216ME_MK3, /* TCL MK3 */ |
2899 | .tuner_addr = ADDR_UNSET, | 2747 | .tuner_addr = ADDR_UNSET, |
2900 | .radio_addr = ADDR_UNSET, | ||
2901 | .pll = PLL_28, | 2748 | .pll = PLL_28, |
2902 | .has_radio = 1, | 2749 | .has_radio = 1, |
2903 | .has_remote = 1, | 2750 | .has_remote = 1, |
@@ -2907,7 +2754,7 @@ struct tvcard bttv_tvcards[] = { | |||
2907 | Mauro Carvalho Chehab <mchehab@infradead.org */ | 2754 | Mauro Carvalho Chehab <mchehab@infradead.org */ |
2908 | .name = "Encore ENL TV-FM-2", | 2755 | .name = "Encore ENL TV-FM-2", |
2909 | .video_inputs = 3, | 2756 | .video_inputs = 3, |
2910 | .audio_inputs = 1, | 2757 | /* .audio_inputs= 1, */ |
2911 | .svhs = 2, | 2758 | .svhs = 2, |
2912 | /* bit 6 -> IR disabled | 2759 | /* bit 6 -> IR disabled |
2913 | bit 18/17 = 00 -> mute | 2760 | bit 18/17 = 00 -> mute |
@@ -2921,7 +2768,6 @@ struct tvcard bttv_tvcards[] = { | |||
2921 | .gpiomute = 0, | 2768 | .gpiomute = 0, |
2922 | .tuner_type = TUNER_TCL_MF02GIP_5N, | 2769 | .tuner_type = TUNER_TCL_MF02GIP_5N, |
2923 | .tuner_addr = ADDR_UNSET, | 2770 | .tuner_addr = ADDR_UNSET, |
2924 | .radio_addr = ADDR_UNSET, | ||
2925 | .pll = PLL_28, | 2771 | .pll = PLL_28, |
2926 | .has_radio = 1, | 2772 | .has_radio = 1, |
2927 | .has_remote = 1, | 2773 | .has_remote = 1, |
@@ -2930,8 +2776,8 @@ struct tvcard bttv_tvcards[] = { | |||
2930 | /* D.Heer@Phytec.de */ | 2776 | /* D.Heer@Phytec.de */ |
2931 | .name = "PHYTEC VD-012 (bt878)", | 2777 | .name = "PHYTEC VD-012 (bt878)", |
2932 | .video_inputs = 4, | 2778 | .video_inputs = 4, |
2933 | .audio_inputs = 0, | 2779 | /* .audio_inputs= 0, */ |
2934 | .svhs = UNSET, /* card has no s-video */ | 2780 | .svhs = NO_SVHS, |
2935 | .gpiomask = 0x00, | 2781 | .gpiomask = 0x00, |
2936 | .muxsel = { 0, 2, 3, 1 }, | 2782 | .muxsel = { 0, 2, 3, 1 }, |
2937 | .gpiomux = { 0, 0, 0, 0 }, /* card has no audio */ | 2783 | .gpiomux = { 0, 0, 0, 0 }, /* card has no audio */ |
@@ -2939,13 +2785,12 @@ struct tvcard bttv_tvcards[] = { | |||
2939 | .pll = PLL_28, | 2785 | .pll = PLL_28, |
2940 | .tuner_type = TUNER_ABSENT, | 2786 | .tuner_type = TUNER_ABSENT, |
2941 | .tuner_addr = ADDR_UNSET, | 2787 | .tuner_addr = ADDR_UNSET, |
2942 | .radio_addr = ADDR_UNSET, | ||
2943 | }, | 2788 | }, |
2944 | [BTTV_BOARD_VD012_X1] = { | 2789 | [BTTV_BOARD_VD012_X1] = { |
2945 | /* D.Heer@Phytec.de */ | 2790 | /* D.Heer@Phytec.de */ |
2946 | .name = "PHYTEC VD-012-X1 (bt878)", | 2791 | .name = "PHYTEC VD-012-X1 (bt878)", |
2947 | .video_inputs = 4, | 2792 | .video_inputs = 4, |
2948 | .audio_inputs = 0, | 2793 | /* .audio_inputs= 0, */ |
2949 | .svhs = 3, | 2794 | .svhs = 3, |
2950 | .gpiomask = 0x00, | 2795 | .gpiomask = 0x00, |
2951 | .muxsel = { 2, 3, 1 }, | 2796 | .muxsel = { 2, 3, 1 }, |
@@ -2954,13 +2799,12 @@ struct tvcard bttv_tvcards[] = { | |||
2954 | .pll = PLL_28, | 2799 | .pll = PLL_28, |
2955 | .tuner_type = TUNER_ABSENT, | 2800 | .tuner_type = TUNER_ABSENT, |
2956 | .tuner_addr = ADDR_UNSET, | 2801 | .tuner_addr = ADDR_UNSET, |
2957 | .radio_addr = ADDR_UNSET, | ||
2958 | }, | 2802 | }, |
2959 | [BTTV_BOARD_VD012_X2] = { | 2803 | [BTTV_BOARD_VD012_X2] = { |
2960 | /* D.Heer@Phytec.de */ | 2804 | /* D.Heer@Phytec.de */ |
2961 | .name = "PHYTEC VD-012-X2 (bt878)", | 2805 | .name = "PHYTEC VD-012-X2 (bt878)", |
2962 | .video_inputs = 4, | 2806 | .video_inputs = 4, |
2963 | .audio_inputs = 0, | 2807 | /* .audio_inputs= 0, */ |
2964 | .svhs = 3, | 2808 | .svhs = 3, |
2965 | .gpiomask = 0x00, | 2809 | .gpiomask = 0x00, |
2966 | .muxsel = { 3, 2, 1 }, | 2810 | .muxsel = { 3, 2, 1 }, |
@@ -2969,7 +2813,6 @@ struct tvcard bttv_tvcards[] = { | |||
2969 | .pll = PLL_28, | 2813 | .pll = PLL_28, |
2970 | .tuner_type = TUNER_ABSENT, | 2814 | .tuner_type = TUNER_ABSENT, |
2971 | .tuner_addr = ADDR_UNSET, | 2815 | .tuner_addr = ADDR_UNSET, |
2972 | .radio_addr = ADDR_UNSET, | ||
2973 | } | 2816 | } |
2974 | }; | 2817 | }; |
2975 | 2818 | ||
@@ -3574,7 +3417,8 @@ void __devinit bttv_init_card2(struct bttv *btv) | |||
3574 | bttv_call_i2c_clients(btv, TUNER_SET_CONFIG, &tda9887_cfg); | 3417 | bttv_call_i2c_clients(btv, TUNER_SET_CONFIG, &tda9887_cfg); |
3575 | } | 3418 | } |
3576 | 3419 | ||
3577 | btv->svhs = bttv_tvcards[btv->c.type].svhs; | 3420 | btv->svhs = bttv_tvcards[btv->c.type].svhs == NO_SVHS ? |
3421 | UNSET : bttv_tvcards[btv->c.type].svhs; | ||
3578 | if (svhs[btv->c.nr] != UNSET) | 3422 | if (svhs[btv->c.nr] != UNSET) |
3579 | btv->svhs = svhs[btv->c.nr]; | 3423 | btv->svhs = svhs[btv->c.nr]; |
3580 | if (remote[btv->c.nr] != UNSET) | 3424 | if (remote[btv->c.nr] != UNSET) |