summaryrefslogtreecommitdiff
path: root/drivers/media/video/cx23885/cx23885-dvb.c
diff options
context:
space:
mode:
authorAbylay Ospan <aospan@netup.ru>2011-01-02 09:15:00 -0300
committerMauro Carvalho Chehab <mchehab@redhat.com>2011-03-22 04:54:12 -0300
commit4174ebf5ebd7a09589ff8ff3bc3246ea0a9bd356 (patch)
treed06d69ce1ba6c7a4dce99a006859e5e1a112aa9e /drivers/media/video/cx23885/cx23885-dvb.c
parent8af81ddb12cf34e2f6eab7e130f1e55e1911ab8f (diff)
[media] Force xc5000 firmware loading for NetUP Dual DVB-T/C CI RF card
Two xc5000 tuners connected to same i2c bus. Experiments shows that situation when one tuner is not initialized while other is tuned to channel causes TS errors. Signed-off-by: Abylay Ospan <aospan@netup.ru> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/cx23885/cx23885-dvb.c')
-rw-r--r--drivers/media/video/cx23885/cx23885-dvb.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/media/video/cx23885/cx23885-dvb.c b/drivers/media/video/cx23885/cx23885-dvb.c
index c0e665506750..3c315f94cc85 100644
--- a/drivers/media/video/cx23885/cx23885-dvb.c
+++ b/drivers/media/video/cx23885/cx23885-dvb.c
@@ -1071,12 +1071,15 @@ static int dvb_register(struct cx23885_tsport *port)
fe0->dvb.frontend = dvb_attach(stv0367ter_attach,
&netup_stv0367_config[port->nr - 1],
&i2c_bus->i2c_adap);
- if (fe0->dvb.frontend != NULL)
+ if (fe0->dvb.frontend != NULL) {
if (NULL == dvb_attach(xc5000_attach,
fe0->dvb.frontend,
&i2c_bus->i2c_adap,
&netup_xc5000_config[port->nr - 1]))
goto frontend_detach;
+ /* load xc5000 firmware */
+ fe0->dvb.frontend->ops.tuner_ops.init(fe0->dvb.frontend);
+ }
/* MFE frontend 2 */
fe1 = videobuf_dvb_get_frontend(&port->frontends, 2);
if (fe1 == NULL)