summaryrefslogtreecommitdiffstats
path: root/drivers/media/video/cx88/cx88-i2c.c
diff options
context:
space:
mode:
authorSteven Toth2006-01-09 18:25:12 +0100
committerMauro Carvalho Chehab2006-01-09 18:25:12 +0100
commit611900c1858747a87657eb405ebab5b1e72bb57c (patch)
tree661e767af2ee8a655dae18cd8872cfcb897e3ebb /drivers/media/video/cx88/cx88-i2c.c
parentV4L/DVB (3086): vfree(NULL) is legal. (diff)
downloadkernel-qcow2-linux-611900c1858747a87657eb405ebab5b1e72bb57c.tar.gz
kernel-qcow2-linux-611900c1858747a87657eb405ebab5b1e72bb57c.tar.xz
kernel-qcow2-linux-611900c1858747a87657eb405ebab5b1e72bb57c.zip
V4L/DVB (3089): Adding support for the Hauppauge HVR1100 and HVR1100-LP products.
- Add support for the Hauppauge HVR1100 and HVR1100-LP products. - Add i2c_gate_ctrl callback function to dvb_frontend_ops struct. Signed-off-by: Steven Toth <stoth@hauppauge.com> Signed-off-by: Michael Krufky <mkrufky@m1k.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Diffstat (limited to 'drivers/media/video/cx88/cx88-i2c.c')
-rw-r--r--drivers/media/video/cx88/cx88-i2c.c15
1 files changed, 14 insertions, 1 deletions
diff --git a/drivers/media/video/cx88/cx88-i2c.c b/drivers/media/video/cx88/cx88-i2c.c
index 4a8fb161b16a..7363dd6e66e2 100644
--- a/drivers/media/video/cx88/cx88-i2c.c
+++ b/drivers/media/video/cx88/cx88-i2c.c
@@ -135,7 +135,20 @@ void cx88_call_i2c_clients(struct cx88_core *core, unsigned int cmd, void *arg)
{
if (0 != core->i2c_rc)
return;
- i2c_clients_command(&core->i2c_adap, cmd, arg);
+
+ if (core->dvbdev == NULL) {
+ i2c_clients_command(&core->i2c_adap, cmd, arg);
+ } else {
+
+ if (core->dvbdev->dvb.frontend->ops->i2c_gate_ctrl)
+ core->dvbdev->dvb.frontend->ops->i2c_gate_ctrl(core->dvbdev->dvb.frontend, 1);
+
+ i2c_clients_command(&core->i2c_adap, cmd, arg);
+
+ if (core->dvbdev->dvb.frontend->ops->i2c_gate_ctrl)
+ core->dvbdev->dvb.frontend->ops->i2c_gate_ctrl(core->dvbdev->dvb.frontend, 0);
+ }
+
}
static struct i2c_algo_bit_data cx8800_i2c_algo_template = {