mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-08-05 16:54:27 +00:00
media: si2165: add DVBv3 wrapper for C/N statistics
Add read_snr function that reads from property cache to support DVBv3. Signed-off-by: Matthias Schwarzott <zzam@gentoo.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
This commit is contained in:
parent
964b372740
commit
2e687a6d3d
1 changed files with 12 additions and 0 deletions
|
@ -794,6 +794,17 @@ static int si2165_read_status(struct dvb_frontend *fe, enum fe_status *status)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int si2165_read_snr(struct dvb_frontend *fe, u16 *snr)
|
||||||
|
{
|
||||||
|
struct dtv_frontend_properties *c = &fe->dtv_property_cache;
|
||||||
|
|
||||||
|
if (c->cnr.stat[0].scale == FE_SCALE_DECIBEL)
|
||||||
|
*snr = div_s64(c->cnr.stat[0].svalue, 100);
|
||||||
|
else
|
||||||
|
*snr = 0;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
static int si2165_set_oversamp(struct si2165_state *state, u32 dvb_rate)
|
static int si2165_set_oversamp(struct si2165_state *state, u32 dvb_rate)
|
||||||
{
|
{
|
||||||
u64 oversamp;
|
u64 oversamp;
|
||||||
|
@ -1111,6 +1122,7 @@ static const struct dvb_frontend_ops si2165_ops = {
|
||||||
|
|
||||||
.set_frontend = si2165_set_frontend,
|
.set_frontend = si2165_set_frontend,
|
||||||
.read_status = si2165_read_status,
|
.read_status = si2165_read_status,
|
||||||
|
.read_snr = si2165_read_snr,
|
||||||
};
|
};
|
||||||
|
|
||||||
static int si2165_probe(struct i2c_client *client,
|
static int si2165_probe(struct i2c_client *client,
|
||||||
|
|
Loading…
Add table
Reference in a new issue