Commit 74a6799c authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab

media: m88rs2000: handle the case where tuner doesn't have get_frequency

If the tuner doesn't have get_frequency() callback, the current
code will place a random value as the frequency offset. That
doesn't seem right! The better is to just assume that, on such
case, the tuner was able to set the exact frequency that was
requested.

Fixes a smatch warning:
	drivers/media/dvb-frontends/m88rs2000.c:639 m88rs2000_set_frontend() error: uninitialized symbol 'tuner_freq'.
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
parent e639c869
......@@ -630,13 +630,16 @@ static int m88rs2000_set_frontend(struct dvb_frontend *fe)
if (ret < 0)
return -ENODEV;
if (fe->ops.tuner_ops.get_frequency)
if (fe->ops.tuner_ops.get_frequency) {
ret = fe->ops.tuner_ops.get_frequency(fe, &tuner_freq);
if (ret < 0)
return -ENODEV;
if (ret < 0)
return -ENODEV;
offset = (s16)((s32)tuner_freq - c->frequency);
offset = (s16)((s32)tuner_freq - c->frequency);
} else {
offset = 0;
}
/* default mclk value 96.4285 * 2 * 1000 = 192857 */
if (((c->frequency % 192857) >= (192857 - 3000)) ||
......
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