mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-10 07:10:27 +00:00
[media] cxd2841er: provide signal strength for DVB-C
Currently, there's no stats for DVB-C. Let's at least return signal strength. The scale is different than on DVB-T, so let's use a relative scale, for now. Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
This commit is contained in:
parent
4216be14be
commit
988bd281d3
@ -1750,7 +1750,6 @@ static void cxd2841er_read_signal_strength(struct dvb_frontend *fe)
|
||||
|
||||
dev_dbg(&priv->i2c->dev, "%s()\n", __func__);
|
||||
switch (p->delivery_system) {
|
||||
case SYS_DVBC_ANNEX_A:
|
||||
case SYS_DVBC_ANNEX_B:
|
||||
case SYS_DVBC_ANNEX_C:
|
||||
strength = 65535 - cxd2841er_read_agc_gain_c(
|
||||
@ -1766,6 +1765,12 @@ static void cxd2841er_read_signal_strength(struct dvb_frontend *fe)
|
||||
/* Formula was empirically determinated @ 410 MHz */
|
||||
p->strength.stat[0].uvalue = ((s32)strength) * 366 / 100 - 89520;
|
||||
break; /* Code moved out of the function */
|
||||
case SYS_DVBC_ANNEX_A:
|
||||
strength = cxd2841er_read_agc_gain_t_t2(priv,
|
||||
p->delivery_system);
|
||||
p->strength.stat[0].scale = FE_SCALE_RELATIVE;
|
||||
p->strength.stat[0].uvalue = strength;
|
||||
break;
|
||||
case SYS_ISDBT:
|
||||
strength = 65535 - cxd2841er_read_agc_gain_i(
|
||||
priv, p->delivery_system);
|
||||
|
Loading…
x
Reference in New Issue
Block a user