diff options
Diffstat (limited to 'drivers/media/video/cx23885/cx23885-dvb.c')
-rw-r--r-- | drivers/media/video/cx23885/cx23885-dvb.c | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/drivers/media/video/cx23885/cx23885-dvb.c b/drivers/media/video/cx23885/cx23885-dvb.c index 022aa391937a..51dedb182c99 100644 --- a/drivers/media/video/cx23885/cx23885-dvb.c +++ b/drivers/media/video/cx23885/cx23885-dvb.c | |||
@@ -164,12 +164,28 @@ static struct s5h1409_config hauppauge_hvr1500q_config = { | |||
164 | .mpeg_timing = S5H1409_MPEGTIMING_CONTINOUS_NONINVERTING_CLOCK, | 164 | .mpeg_timing = S5H1409_MPEGTIMING_CONTINOUS_NONINVERTING_CLOCK, |
165 | }; | 165 | }; |
166 | 166 | ||
167 | static struct s5h1409_config dvico_s5h1409_config = { | ||
168 | .demod_address = 0x32 >> 1, | ||
169 | .output_mode = S5H1409_SERIAL_OUTPUT, | ||
170 | .gpio = S5H1409_GPIO_ON, | ||
171 | .qam_if = 44000, | ||
172 | .inversion = S5H1409_INVERSION_OFF, | ||
173 | .status_mode = S5H1409_DEMODLOCKING, | ||
174 | .mpeg_timing = S5H1409_MPEGTIMING_CONTINOUS_NONINVERTING_CLOCK, | ||
175 | }; | ||
176 | |||
167 | static struct xc5000_config hauppauge_hvr1500q_tunerconfig = { | 177 | static struct xc5000_config hauppauge_hvr1500q_tunerconfig = { |
168 | .i2c_address = 0x61, | 178 | .i2c_address = 0x61, |
169 | .if_khz = 5380, | 179 | .if_khz = 5380, |
170 | .tuner_callback = cx23885_tuner_callback | 180 | .tuner_callback = cx23885_tuner_callback |
171 | }; | 181 | }; |
172 | 182 | ||
183 | static struct xc5000_config dvico_xc5000_tunerconfig = { | ||
184 | .i2c_address = 0x64, | ||
185 | .if_khz = 5380, | ||
186 | .tuner_callback = cx23885_tuner_callback | ||
187 | }; | ||
188 | |||
173 | static struct tda829x_config tda829x_no_probe = { | 189 | static struct tda829x_config tda829x_no_probe = { |
174 | .probe_tuner = TDA829X_DONT_PROBE, | 190 | .probe_tuner = TDA829X_DONT_PROBE, |
175 | }; | 191 | }; |
@@ -453,6 +469,17 @@ static int dvb_register(struct cx23885_tsport *port) | |||
453 | fe->ops.tuner_ops.set_config(fe, &ctl); | 469 | fe->ops.tuner_ops.set_config(fe, &ctl); |
454 | } | 470 | } |
455 | break; | 471 | break; |
472 | case CX23885_BOARD_DVICO_FUSIONHDTV_7_DUAL_EXP: | ||
473 | i2c_bus = &dev->i2c_bus[port->nr - 1]; | ||
474 | |||
475 | port->dvb.frontend = dvb_attach(s5h1409_attach, | ||
476 | &dvico_s5h1409_config, | ||
477 | &i2c_bus->i2c_adap); | ||
478 | if (port->dvb.frontend != NULL) | ||
479 | dvb_attach(xc5000_attach, port->dvb.frontend, | ||
480 | &i2c_bus->i2c_adap, | ||
481 | &dvico_xc5000_tunerconfig, i2c_bus); | ||
482 | break; | ||
456 | default: | 483 | default: |
457 | printk("%s: The frontend of your DVB/ATSC card isn't supported yet\n", | 484 | printk("%s: The frontend of your DVB/ATSC card isn't supported yet\n", |
458 | dev->name); | 485 | dev->name); |