[media] saa7134-dvb: Fix kworld sbtvd I2C gate control
authorManoel Pinheiro <pinusdtv@hotmail.com>
Thu, 19 May 2011 17:16:57 +0000 (14:16 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Tue, 14 Aug 2012 00:14:59 +0000 (21:14 -0300)
The correct place to put i2c_gate_ctrl is before calling tda18271_attach,
because the driver tda18271 will use it to enable or disable the i2c-bus
from the demodulator to the tuner.

And thus eliminate the error message: "Unknown device (255) detected
@ 1-00c0, device not supported" in the driver tda18271.

In the device kworld_sbtvd (hybrid analog and digital TV) the control
of the i2c-bus to tuner is done in the analog demodulator and not in
the digital demodulator.

Signed-off-by: Manoel Pinheiro <pinusdtv@hotmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/video/saa7134/saa7134-dvb.c

index d0f53bb..b209de4 100644 (file)
@@ -1796,10 +1796,10 @@ static int dvb_init(struct saa7134_dev *dev)
                        dvb_attach(tda829x_attach, fe0->dvb.frontend,
                                   &dev->i2c_adap, 0x4b,
                                   &tda829x_no_probe);
+                       fe0->dvb.frontend->ops.i2c_gate_ctrl = kworld_sbtvd_gate_ctrl;
                        dvb_attach(tda18271_attach, fe0->dvb.frontend,
                                   0x60, &dev->i2c_adap,
                                   &kworld_tda18271_config);
-                       fe0->dvb.frontend->ops.i2c_gate_ctrl = kworld_sbtvd_gate_ctrl;
                }
 
                /* mb86a20s need to use the I2C gateway */