aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitri Belimov <d.belimov@gmail.com>2008-12-23 03:50:09 -0300
committerMauro Carvalho Chehab <mchehab@redhat.com>2009-01-02 17:12:27 -0200
commit899a6f67b90206c330bd93c7c8f3f8bb8b80397a (patch)
tree1a30f92ad5ba9944cd52aef7ce06b8cd40924425
parent91f7c130c277a08ebef92ac23ed60adc62e505e0 (diff)
V4L/DVB (10151): Fix I2C bridge error in zl10353
Fix I2C bridge error in zl10353 if no tunner attached to internal I2C bus of zl10353 chip. When set enable bridge from internal I2C bus to the main I2C bus (saa7134) the main I2C bus stopped very hardly. No any communication. In our next board we solder additional resistors to internal I2C bus. Signed-off-by: Beholder Intl. Ltd. Dmitry Belimov <d.belimov@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r--drivers/media/dvb/frontends/zl10353.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/media/dvb/frontends/zl10353.c b/drivers/media/dvb/frontends/zl10353.c
index 5506f80e180..170720b0281 100644
--- a/drivers/media/dvb/frontends/zl10353.c
+++ b/drivers/media/dvb/frontends/zl10353.c
@@ -587,8 +587,15 @@ static int zl10353_init(struct dvb_frontend *fe)
static int zl10353_i2c_gate_ctrl(struct dvb_frontend* fe, int enable)
{
+ struct zl10353_state *state = fe->demodulator_priv;
u8 val = 0x0a;
+ if (state->config.no_tuner) {
+ /* No tuner attached to the internal I2C bus */
+ /* If set enable I2C bridge, the main I2C bus stopped hardly */
+ return 0;
+ }
+
if (enable)
val |= 0x10;