Commit fa09cb9a authored by Hans Verkuil's avatar Hans Verkuil Committed by Mauro Carvalho Chehab

[media] au0828: simplify i2c_gate_ctrl

Turn it into a simple function.
Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
Reviewed-by: default avatarDevin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
parent 823beb7e
...@@ -59,6 +59,12 @@ do {\ ...@@ -59,6 +59,12 @@ do {\
} \ } \
} while (0) } while (0)
static inline void i2c_gate_ctrl(struct au0828_dev *dev, int val)
{
if (dev->dvb.frontend && dev->dvb.frontend->ops.analog_ops.i2c_gate_ctrl)
dev->dvb.frontend->ops.analog_ops.i2c_gate_ctrl(dev->dvb.frontend, val);
}
static inline void print_err_status(struct au0828_dev *dev, static inline void print_err_status(struct au0828_dev *dev,
int packet, int status) int packet, int status)
{ {
...@@ -1320,8 +1326,7 @@ static int vidioc_s_std(struct file *file, void *priv, v4l2_std_id norm) ...@@ -1320,8 +1326,7 @@ static int vidioc_s_std(struct file *file, void *priv, v4l2_std_id norm)
struct au0828_fh *fh = priv; struct au0828_fh *fh = priv;
struct au0828_dev *dev = fh->dev; struct au0828_dev *dev = fh->dev;
if (dev->dvb.frontend && dev->dvb.frontend->ops.analog_ops.i2c_gate_ctrl) i2c_gate_ctrl(dev, 1);
dev->dvb.frontend->ops.analog_ops.i2c_gate_ctrl(dev->dvb.frontend, 1);
/* FIXME: when we support something other than NTSC, we are going to /* FIXME: when we support something other than NTSC, we are going to
have to make the au0828 bridge adjust the size of its capture have to make the au0828 bridge adjust the size of its capture
...@@ -1330,8 +1335,7 @@ static int vidioc_s_std(struct file *file, void *priv, v4l2_std_id norm) ...@@ -1330,8 +1335,7 @@ static int vidioc_s_std(struct file *file, void *priv, v4l2_std_id norm)
v4l2_device_call_all(&dev->v4l2_dev, 0, core, s_std, norm); v4l2_device_call_all(&dev->v4l2_dev, 0, core, s_std, norm);
dev->std_set_in_tuner_core = 1; dev->std_set_in_tuner_core = 1;
if (dev->dvb.frontend && dev->dvb.frontend->ops.analog_ops.i2c_gate_ctrl) i2c_gate_ctrl(dev, 0);
dev->dvb.frontend->ops.analog_ops.i2c_gate_ctrl(dev->dvb.frontend, 0);
dev->std = norm; dev->std = norm;
return 0; return 0;
...@@ -1517,13 +1521,11 @@ static int vidioc_s_tuner(struct file *file, void *priv, ...@@ -1517,13 +1521,11 @@ static int vidioc_s_tuner(struct file *file, void *priv,
if (t->index != 0) if (t->index != 0)
return -EINVAL; return -EINVAL;
if (dev->dvb.frontend && dev->dvb.frontend->ops.analog_ops.i2c_gate_ctrl) i2c_gate_ctrl(dev, 1);
dev->dvb.frontend->ops.analog_ops.i2c_gate_ctrl(dev->dvb.frontend, 1);
v4l2_device_call_all(&dev->v4l2_dev, 0, tuner, s_tuner, t); v4l2_device_call_all(&dev->v4l2_dev, 0, tuner, s_tuner, t);
if (dev->dvb.frontend && dev->dvb.frontend->ops.analog_ops.i2c_gate_ctrl) i2c_gate_ctrl(dev, 0);
dev->dvb.frontend->ops.analog_ops.i2c_gate_ctrl(dev->dvb.frontend, 0);
dprintk(1, "VIDIOC_S_TUNER: signal = %x, afc = %x\n", t->signal, dprintk(1, "VIDIOC_S_TUNER: signal = %x, afc = %x\n", t->signal,
t->afc); t->afc);
...@@ -1554,8 +1556,7 @@ static int vidioc_s_frequency(struct file *file, void *priv, ...@@ -1554,8 +1556,7 @@ static int vidioc_s_frequency(struct file *file, void *priv,
if (freq->tuner != 0) if (freq->tuner != 0)
return -EINVAL; return -EINVAL;
if (dev->dvb.frontend && dev->dvb.frontend->ops.analog_ops.i2c_gate_ctrl) i2c_gate_ctrl(dev, 1);
dev->dvb.frontend->ops.analog_ops.i2c_gate_ctrl(dev->dvb.frontend, 1);
if (dev->std_set_in_tuner_core == 0) { if (dev->std_set_in_tuner_core == 0) {
/* If we've never sent the standard in tuner core, do so now. /* If we've never sent the standard in tuner core, do so now.
...@@ -1571,8 +1572,7 @@ static int vidioc_s_frequency(struct file *file, void *priv, ...@@ -1571,8 +1572,7 @@ static int vidioc_s_frequency(struct file *file, void *priv,
v4l2_device_call_all(&dev->v4l2_dev, 0, tuner, g_frequency, &new_freq); v4l2_device_call_all(&dev->v4l2_dev, 0, tuner, g_frequency, &new_freq);
dev->ctrl_freq = new_freq.frequency; dev->ctrl_freq = new_freq.frequency;
if (dev->dvb.frontend && dev->dvb.frontend->ops.analog_ops.i2c_gate_ctrl) i2c_gate_ctrl(dev, 0);
dev->dvb.frontend->ops.analog_ops.i2c_gate_ctrl(dev->dvb.frontend, 0);
au0828_analog_stream_reset(dev); au0828_analog_stream_reset(dev);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment