[PATCH v3 0/4] STV0367/DDB DVBv5 signal statistics

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Daniel Scheller <d.scheller@xxxxxxx>

This series adds DVBv5 statistics support to the new DDB codepath of the
stv0367 demodulator driver.

The changes utilise already existing functionality (in form of register
readouts), but wraps the reads in separate functions so the existing
relative scale reporting can be kept as-is, while adding the v5 stats
in dB scale where appropriate.

The {ter,cab}_read_status() additionally have been enhanced to provide a
more detailed status from the values the logic already provides (at least
for DVB-C, DVB-T isn't as detailed, so all flags are set upon lock
instead).

>From my own testing: Reported values look approx. the same as those
reported by the cxd2841er driver for both -C and -T.

Testing for v3: The enhanced status works good for DVB-C - signal almost
instantly goes to FE_HAS_LOCK with good signal strength with the cabling
plugged in. When antenna is pulled, fe_status goes away, cnr goes to
unavailable and signal strength to the lowest the driver can provide.
Statistics come back after cable is plugged back in. Re DVB-T,
unfortunately I cannot do anymore testing with this, since over here in
germany DVB-T was replaced by DVB-T2, which the demod cannot handle.
Since it worked before and the logic didn't really change, I strongly
assume things are still good.

Mauro, re your patch (thanks again!), I slightly changed the commit title
and description but kept you as the author, added t-b and signoff. Also,
thank you for writing up the DVBv5 statistics document/howto, which was
very helpful in fixing this!

Hope everything's good to go now :-)

Changes from v2 to v3:
 - ucblocks reporting and register read out splitting are already merged,
   thus not part of the series anymore
 - enhanced {ter,cab}_read_status(), thank you Mauro for pointing this
   out and providing the (untested) patch!
 - always read signal strength, read cnr on FE_HAS_CARRIER, and ucblocks
   on FE_HAS_LOCK
 - adjust if-status-logic for ucblock to match the rest

Changes from v1 to v2:
 - INTLOG10X100() macro for QAM SNR calculation removed and replaced by
   directly utilising intlog2 plus a div
 - factored statistics collection into *_read_status()
 - prevent a possible division by zero (though requires ridiculously good
   SNR to trigger)
 - _read_status() doesn't return -EINVAL anymore if no demod state is set,
   prevents falsely reported errors from inquiries of userspace tools

Daniel Scheller (3):
  [media] dvb-frontends/stv0367: SNR DVBv5 statistics for DVB-C and T
  [media] dvb-frontends/stv0367: DVB-C signal strength statistics
  [media] dvb-frontends/stv0367: make UCB readout logic more clear

Mauro Carvalho Chehab (1):
  [media] dvb-frontends/stv0367: Improve DVB-C/T frontend status

 drivers/media/dvb-frontends/stv0367.c | 85 ++++++++++++++++++++++++++++++++---
 1 file changed, 78 insertions(+), 7 deletions(-)

-- 
2.13.0




[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux