aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/video/cx88/cx88-dvb.c
diff options
context:
space:
mode:
authorAndrew de Quincey <adq_dvb@lidskialf.net>2006-08-08 08:10:09 -0400
committerMauro Carvalho Chehab <mchehab@infradead.org>2006-09-26 10:53:26 -0400
commit1f10c7afa1ac611c32ec4a2114788876a3f5d05e (patch)
tree0021db082b7f7b9c18448bcef9dd3a099cabe1df /drivers/media/video/cx88/cx88-dvb.c
parent102a342bb9672f67a34fd185803aaded4ce8dd0f (diff)
V4L/DVB (4388): Remove frontend selection from cx88/saa7134 drivers
Replaced with dvb_attach() Signed-off-by: Andrew de Quincey <adq_dvb@lidskialf.net> Acked-by: Michael Krufky <mkrufky@linuxtv.org> Acked-by: Trent Piepho <xyzzy@speakeasy.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Diffstat (limited to 'drivers/media/video/cx88/cx88-dvb.c')
-rw-r--r--drivers/media/video/cx88/cx88-dvb.c75
1 files changed, 11 insertions, 64 deletions
diff --git a/drivers/media/video/cx88/cx88-dvb.c b/drivers/media/video/cx88/cx88-dvb.c
index 6afa3fba1f4f..81654954c338 100644
--- a/drivers/media/video/cx88/cx88-dvb.c
+++ b/drivers/media/video/cx88/cx88-dvb.c
@@ -33,32 +33,18 @@
33#include "dvb-pll.h" 33#include "dvb-pll.h"
34#include <media/v4l2-common.h> 34#include <media/v4l2-common.h>
35 35
36#ifdef HAVE_MT352 36#include "mt352.h"
37# include "mt352.h" 37#include "mt352_priv.h"
38# include "mt352_priv.h" 38#ifdef HAVE_VP3054_I2C
39# ifdef HAVE_VP3054_I2C 39# include "cx88-vp3054-i2c.h"
40# include "cx88-vp3054-i2c.h"
41# endif
42#endif
43#ifdef HAVE_ZL10353
44# include "zl10353.h"
45#endif
46#ifdef HAVE_CX22702
47# include "cx22702.h"
48#endif
49#ifdef HAVE_OR51132
50# include "or51132.h"
51#endif
52#ifdef HAVE_LGDT330X
53# include "lgdt330x.h"
54# include "lg_h06xf.h"
55#endif
56#ifdef HAVE_NXT200X
57# include "nxt200x.h"
58#endif
59#ifdef HAVE_CX24123
60# include "cx24123.h"
61#endif 40#endif
41#include "zl10353.h"
42#include "cx22702.h"
43#include "or51132.h"
44#include "lgdt330x.h"
45#include "lg_h06xf.h"
46#include "nxt200x.h"
47#include "cx24123.h"
62#include "isl6421.h" 48#include "isl6421.h"
63 49
64MODULE_DESCRIPTION("driver for cx2388x based DVB cards"); 50MODULE_DESCRIPTION("driver for cx2388x based DVB cards");
@@ -114,8 +100,6 @@ static struct videobuf_queue_ops dvb_qops = {
114}; 100};
115 101
116/* ------------------------------------------------------------------ */ 102/* ------------------------------------------------------------------ */
117
118#ifdef HAVE_MT352
119static int dvico_fusionhdtv_demod_init(struct dvb_frontend* fe) 103static int dvico_fusionhdtv_demod_init(struct dvb_frontend* fe)
120{ 104{
121 static u8 clock_config [] = { CLOCK_CTL, 0x38, 0x39 }; 105 static u8 clock_config [] = { CLOCK_CTL, 0x38, 0x39 };
@@ -283,9 +267,7 @@ static struct mt352_config dntv_live_dvbt_pro_config = {
283 .demod_init = dntv_live_dvbt_pro_demod_init, 267 .demod_init = dntv_live_dvbt_pro_demod_init,
284}; 268};
285#endif 269#endif
286#endif
287 270
288#ifdef HAVE_ZL10353
289static int dvico_hybrid_tuner_set_params(struct dvb_frontend *fe, 271static int dvico_hybrid_tuner_set_params(struct dvb_frontend *fe,
290 struct dvb_frontend_parameters *params) 272 struct dvb_frontend_parameters *params)
291{ 273{
@@ -323,9 +305,7 @@ static struct zl10353_config dvico_fusionhdtv_hybrid = {
323static struct zl10353_config dvico_fusionhdtv_plus_v1_1 = { 305static struct zl10353_config dvico_fusionhdtv_plus_v1_1 = {
324 .demod_address = 0x0F, 306 .demod_address = 0x0F,
325}; 307};
326#endif
327 308
328#ifdef HAVE_CX22702
329static struct cx22702_config connexant_refboard_config = { 309static struct cx22702_config connexant_refboard_config = {
330 .demod_address = 0x43, 310 .demod_address = 0x43,
331 .output_mode = CX22702_SERIAL_OUTPUT, 311 .output_mode = CX22702_SERIAL_OUTPUT,
@@ -339,9 +319,7 @@ static struct cx22702_config hauppauge_hvr1100_config = {
339 .demod_address = 0x63, 319 .demod_address = 0x63,
340 .output_mode = CX22702_SERIAL_OUTPUT, 320 .output_mode = CX22702_SERIAL_OUTPUT,
341}; 321};
342#endif
343 322
344#ifdef HAVE_OR51132
345static int or51132_set_ts_param(struct dvb_frontend* fe, 323static int or51132_set_ts_param(struct dvb_frontend* fe,
346 int is_punctured) 324 int is_punctured)
347{ 325{
@@ -354,9 +332,7 @@ static struct or51132_config pchdtv_hd3000 = {
354 .demod_address = 0x15, 332 .demod_address = 0x15,
355 .set_ts_params = or51132_set_ts_param, 333 .set_ts_params = or51132_set_ts_param,
356}; 334};
357#endif
358 335
359#ifdef HAVE_LGDT330X
360static int lgdt3302_tuner_set_params(struct dvb_frontend* fe, 336static int lgdt3302_tuner_set_params(struct dvb_frontend* fe,
361 struct dvb_frontend_parameters* params) 337 struct dvb_frontend_parameters* params)
362{ 338{
@@ -444,9 +420,7 @@ static struct lgdt330x_config pchdtv_hd5500 = {
444 .serial_mpeg = 0x40, /* TPSERIAL for 3303 in TOP_CONTROL */ 420 .serial_mpeg = 0x40, /* TPSERIAL for 3303 in TOP_CONTROL */
445 .set_ts_params = lgdt330x_set_ts_param, 421 .set_ts_params = lgdt330x_set_ts_param,
446}; 422};
447#endif
448 423
449#ifdef HAVE_NXT200X
450static int nxt200x_set_ts_param(struct dvb_frontend* fe, 424static int nxt200x_set_ts_param(struct dvb_frontend* fe,
451 int is_punctured) 425 int is_punctured)
452{ 426{
@@ -469,9 +443,7 @@ static struct nxt200x_config ati_hdtvwonder = {
469 .set_pll_input = nxt200x_set_pll_input, 443 .set_pll_input = nxt200x_set_pll_input,
470 .set_ts_params = nxt200x_set_ts_param, 444 .set_ts_params = nxt200x_set_ts_param,
471}; 445};
472#endif
473 446
474#ifdef HAVE_CX24123
475static int cx24123_set_ts_param(struct dvb_frontend* fe, 447static int cx24123_set_ts_param(struct dvb_frontend* fe,
476 int is_punctured) 448 int is_punctured)
477{ 449{
@@ -525,7 +497,6 @@ static struct cx24123_config kworld_dvbs_100_config = {
525 .demod_address = 0x15, 497 .demod_address = 0x15,
526 .set_ts_params = cx24123_set_ts_param, 498 .set_ts_params = cx24123_set_ts_param,
527}; 499};
528#endif
529 500
530static int dvb_register(struct cx8802_dev *dev) 501static int dvb_register(struct cx8802_dev *dev)
531{ 502{
@@ -535,7 +506,6 @@ static int dvb_register(struct cx8802_dev *dev)
535 506
536 /* init frontend */ 507 /* init frontend */
537 switch (dev->core->board) { 508 switch (dev->core->board) {
538#ifdef HAVE_CX22702
539 case CX88_BOARD_HAUPPAUGE_DVB_T1: 509 case CX88_BOARD_HAUPPAUGE_DVB_T1:
540 dev->dvb.frontend = dvb_attach(cx22702_attach, &hauppauge_novat_config, 510 dev->dvb.frontend = dvb_attach(cx22702_attach, &hauppauge_novat_config,
541 &dev->core->i2c_adap); 511 &dev->core->i2c_adap);
@@ -568,10 +538,7 @@ static int dvb_register(struct cx8802_dev *dev)
568 &dvb_pll_fmd1216me); 538 &dvb_pll_fmd1216me);
569 } 539 }
570 break; 540 break;
571#endif
572#if defined(HAVE_MT352) || defined(HAVE_ZL10353)
573 case CX88_BOARD_DVICO_FUSIONHDTV_DVB_T_PLUS: 541 case CX88_BOARD_DVICO_FUSIONHDTV_DVB_T_PLUS:
574#ifdef HAVE_MT352
575 dev->dvb.frontend = dvb_attach(mt352_attach, &dvico_fusionhdtv, 542 dev->dvb.frontend = dvb_attach(mt352_attach, &dvico_fusionhdtv,
576 &dev->core->i2c_adap); 543 &dev->core->i2c_adap);
577 if (dev->dvb.frontend != NULL) { 544 if (dev->dvb.frontend != NULL) {
@@ -580,8 +547,6 @@ static int dvb_register(struct cx8802_dev *dev)
580 &dvb_pll_thomson_dtt7579); 547 &dvb_pll_thomson_dtt7579);
581 break; 548 break;
582 } 549 }
583#endif
584#ifdef HAVE_ZL10353
585 /* ZL10353 replaces MT352 on later cards */ 550 /* ZL10353 replaces MT352 on later cards */
586 dev->dvb.frontend = dvb_attach(zl10353_attach, &dvico_fusionhdtv_plus_v1_1, 551 dev->dvb.frontend = dvb_attach(zl10353_attach, &dvico_fusionhdtv_plus_v1_1,
587 &dev->core->i2c_adap); 552 &dev->core->i2c_adap);
@@ -590,10 +555,8 @@ static int dvb_register(struct cx8802_dev *dev)
590 &dev->core->i2c_adap, 555 &dev->core->i2c_adap,
591 &dvb_pll_thomson_dtt7579); 556 &dvb_pll_thomson_dtt7579);
592 } 557 }
593#endif
594 break; 558 break;
595 case CX88_BOARD_DVICO_FUSIONHDTV_DVB_T_DUAL: 559 case CX88_BOARD_DVICO_FUSIONHDTV_DVB_T_DUAL:
596#ifdef HAVE_MT352
597 /* The tin box says DEE1601, but it seems to be DTT7579 560 /* The tin box says DEE1601, but it seems to be DTT7579
598 * compatible, with a slightly different MT352 AGC gain. */ 561 * compatible, with a slightly different MT352 AGC gain. */
599 dev->dvb.frontend = dvb_attach(mt352_attach, &dvico_fusionhdtv_dual, 562 dev->dvb.frontend = dvb_attach(mt352_attach, &dvico_fusionhdtv_dual,
@@ -604,8 +567,6 @@ static int dvb_register(struct cx8802_dev *dev)
604 &dvb_pll_thomson_dtt7579); 567 &dvb_pll_thomson_dtt7579);
605 break; 568 break;
606 } 569 }
607#endif
608#ifdef HAVE_ZL10353
609 /* ZL10353 replaces MT352 on later cards */ 570 /* ZL10353 replaces MT352 on later cards */
610 dev->dvb.frontend = dvb_attach(zl10353_attach, &dvico_fusionhdtv_plus_v1_1, 571 dev->dvb.frontend = dvb_attach(zl10353_attach, &dvico_fusionhdtv_plus_v1_1,
611 &dev->core->i2c_adap); 572 &dev->core->i2c_adap);
@@ -614,10 +575,7 @@ static int dvb_register(struct cx8802_dev *dev)
614 &dev->core->i2c_adap, 575 &dev->core->i2c_adap,
615 &dvb_pll_thomson_dtt7579); 576 &dvb_pll_thomson_dtt7579);
616 } 577 }
617#endif
618 break; 578 break;
619#endif /* HAVE_MT352 || HAVE_ZL10353 */
620#ifdef HAVE_MT352
621 case CX88_BOARD_DVICO_FUSIONHDTV_DVB_T1: 579 case CX88_BOARD_DVICO_FUSIONHDTV_DVB_T1:
622 dev->dvb.frontend = dvb_attach(mt352_attach, &dvico_fusionhdtv, 580 dev->dvb.frontend = dvb_attach(mt352_attach, &dvico_fusionhdtv,
623 &dev->core->i2c_adap); 581 &dev->core->i2c_adap);
@@ -651,8 +609,6 @@ static int dvb_register(struct cx8802_dev *dev)
651 printk("%s: built without vp3054 support\n", dev->core->name); 609 printk("%s: built without vp3054 support\n", dev->core->name);
652#endif 610#endif
653 break; 611 break;
654#endif
655#ifdef HAVE_ZL10353
656 case CX88_BOARD_DVICO_FUSIONHDTV_DVB_T_HYBRID: 612 case CX88_BOARD_DVICO_FUSIONHDTV_DVB_T_HYBRID:
657 dev->core->pll_addr = 0x61; 613 dev->core->pll_addr = 0x61;
658 dev->core->pll_desc = &dvb_pll_thomson_fe6600; 614 dev->core->pll_desc = &dvb_pll_thomson_fe6600;
@@ -662,8 +618,6 @@ static int dvb_register(struct cx8802_dev *dev)
662 dev->dvb.frontend->ops.tuner_ops.set_params = dvico_hybrid_tuner_set_params; 618 dev->dvb.frontend->ops.tuner_ops.set_params = dvico_hybrid_tuner_set_params;
663 } 619 }
664 break; 620 break;
665#endif
666#ifdef HAVE_OR51132
667 case CX88_BOARD_PCHDTV_HD3000: 621 case CX88_BOARD_PCHDTV_HD3000:
668 dev->dvb.frontend = dvb_attach(or51132_attach, &pchdtv_hd3000, 622 dev->dvb.frontend = dvb_attach(or51132_attach, &pchdtv_hd3000,
669 &dev->core->i2c_adap); 623 &dev->core->i2c_adap);
@@ -673,8 +627,6 @@ static int dvb_register(struct cx8802_dev *dev)
673 &dvb_pll_thomson_dtt761x); 627 &dvb_pll_thomson_dtt761x);
674 } 628 }
675 break; 629 break;
676#endif
677#ifdef HAVE_LGDT330X
678 case CX88_BOARD_DVICO_FUSIONHDTV_3_GOLD_Q: 630 case CX88_BOARD_DVICO_FUSIONHDTV_3_GOLD_Q:
679 dev->ts_gen_cntrl = 0x08; 631 dev->ts_gen_cntrl = 0x08;
680 { 632 {
@@ -750,8 +702,6 @@ static int dvb_register(struct cx8802_dev *dev)
750 } 702 }
751 } 703 }
752 break; 704 break;
753#endif
754#ifdef HAVE_NXT200X
755 case CX88_BOARD_ATI_HDTVWONDER: 705 case CX88_BOARD_ATI_HDTVWONDER:
756 dev->dvb.frontend = dvb_attach(nxt200x_attach, &ati_hdtvwonder, 706 dev->dvb.frontend = dvb_attach(nxt200x_attach, &ati_hdtvwonder,
757 &dev->core->i2c_adap); 707 &dev->core->i2c_adap);
@@ -761,8 +711,6 @@ static int dvb_register(struct cx8802_dev *dev)
761 &dvb_pll_tuv1236d); 711 &dvb_pll_tuv1236d);
762 } 712 }
763 break; 713 break;
764#endif
765#ifdef HAVE_CX24123
766 case CX88_BOARD_HAUPPAUGE_NOVASPLUS_S1: 714 case CX88_BOARD_HAUPPAUGE_NOVASPLUS_S1:
767 case CX88_BOARD_HAUPPAUGE_NOVASE2_S1: 715 case CX88_BOARD_HAUPPAUGE_NOVASE2_S1:
768 dev->dvb.frontend = dvb_attach(cx24123_attach, &hauppauge_novas_config, 716 dev->dvb.frontend = dvb_attach(cx24123_attach, &hauppauge_novas_config,
@@ -788,7 +736,6 @@ static int dvb_register(struct cx8802_dev *dev)
788 dev->dvb.frontend->ops.set_voltage = geniatech_dvbs_set_voltage; 736 dev->dvb.frontend->ops.set_voltage = geniatech_dvbs_set_voltage;
789 } 737 }
790 break; 738 break;
791#endif
792 default: 739 default:
793 printk("%s: The frontend of your DVB/ATSC card isn't supported yet\n", 740 printk("%s: The frontend of your DVB/ATSC card isn't supported yet\n",
794 dev->core->name); 741 dev->core->name);