Commit a2a7f84b authored by Michael Krufky's avatar Michael Krufky Committed by Mauro Carvalho Chehab

V4L/DVB (7360): tuner-simple: fix return value of simple_dvb_configure

simple_dvb_configure returns the actual tuned frequency to its caller, so
it must be declared as a u32 rather than an int.  As a result, we will
return 0 to indicate a failure.
Signed-off-by: default avatarMichael Krufky <mkrufky@linuxtv.org>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@infradead.org>
parent 26cd8972
...@@ -788,9 +788,10 @@ static void simple_set_dvb(struct dvb_frontend *fe, u8 *buf, ...@@ -788,9 +788,10 @@ static void simple_set_dvb(struct dvb_frontend *fe, u8 *buf,
} }
} }
static int simple_dvb_configure(struct dvb_frontend *fe, u8 *buf, static u32 simple_dvb_configure(struct dvb_frontend *fe, u8 *buf,
const struct dvb_frontend_parameters *params) const struct dvb_frontend_parameters *params)
{ {
/* This function returns the tuned frequency on success, 0 on error */
struct tuner_simple_priv *priv = fe->tuner_priv; struct tuner_simple_priv *priv = fe->tuner_priv;
struct tunertype *tun = priv->tun; struct tunertype *tun = priv->tun;
static struct tuner_params *t_params; static struct tuner_params *t_params;
...@@ -801,7 +802,7 @@ static int simple_dvb_configure(struct dvb_frontend *fe, u8 *buf, ...@@ -801,7 +802,7 @@ static int simple_dvb_configure(struct dvb_frontend *fe, u8 *buf,
t_params = simple_tuner_params(fe, TUNER_PARAM_TYPE_DIGITAL); t_params = simple_tuner_params(fe, TUNER_PARAM_TYPE_DIGITAL);
ret = simple_config_lookup(fe, t_params, &frequency, &config, &cb); ret = simple_config_lookup(fe, t_params, &frequency, &config, &cb);
if (ret < 0) if (ret < 0)
return ret; return 0; /* failure */
div = ((frequency + t_params->iffreq) * 62500 + offset + div = ((frequency + t_params->iffreq) * 62500 + offset +
tun->stepsize/2) / tun->stepsize; tun->stepsize/2) / tun->stepsize;
...@@ -825,17 +826,14 @@ static int simple_dvb_calc_regs(struct dvb_frontend *fe, ...@@ -825,17 +826,14 @@ static int simple_dvb_calc_regs(struct dvb_frontend *fe,
u8 *buf, int buf_len) u8 *buf, int buf_len)
{ {
struct tuner_simple_priv *priv = fe->tuner_priv; struct tuner_simple_priv *priv = fe->tuner_priv;
int ret;
u32 frequency; u32 frequency;
if (buf_len < 5) if (buf_len < 5)
return -EINVAL; return -EINVAL;
ret = simple_dvb_configure(fe, buf+1, params); frequency = simple_dvb_configure(fe, buf+1, params);
if (ret < 0) if (frequency == 0)
return ret; return -EINVAL;
else
frequency = ret;
buf[0] = priv->i2c_props.addr; buf[0] = priv->i2c_props.addr;
......
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