V4L/DVB (9346): Optimization: Enable gate in a symmetric/disciplined way,
authorManu Abraham <abraham.manu@gmail.com>
Mon, 20 Oct 2008 21:14:14 +0000 (18:14 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Tue, 11 Nov 2008 10:11:18 +0000 (08:11 -0200)
rather than implementing different ways leading to confusion.

This allows multiple gate_enable/disable's in the tuner_read/write
functions, thereby lesser number of I/O operations throughout,
eventually leading to better results. As a side effect demods that
detect the STOP bit for auto closing of the gate can be avoided, thereby
a very minimal gain in disabling the auto detect feature as well.
Improves readability on the device control.

Signed-off-by: Manu Abraham <manu@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/dvb/dvb-core/dvb_frontend.c

index 5689d1f1d44477bed202709e676041105b9b10ca..8557bf12cfb46f98893a0ed770e58e8e74ad321d 100644 (file)
@@ -223,6 +223,8 @@ static void dvb_frontend_init(struct dvb_frontend *fe)
        if (fe->ops.init)
                fe->ops.init(fe);
        if (fe->ops.tuner_ops.init) {
+               if (fe->ops.i2c_gate_ctrl)
+                       fe->ops.i2c_gate_ctrl(fe, 1);
                fe->ops.tuner_ops.init(fe);
                if (fe->ops.i2c_gate_ctrl)
                        fe->ops.i2c_gate_ctrl(fe, 0);