[media] ddbridge: support STV0367-based cards and modules
authorDaniel Scheller <d.scheller@gmx.net>
Wed, 29 Mar 2017 16:43:13 +0000 (13:43 -0300)
committerMauro Carvalho Chehab <mchehab@s-opensource.com>
Tue, 20 Jun 2017 12:29:43 +0000 (09:29 -0300)
commit05da9437f2258903759b8fc60bcef5ab3d90c29a
tree9832ae5369de6b19fa215e958a2afa606cd36ce1
parent6b1256b7becbf737cf220d011b0f732136ef63a5
[media] ddbridge: support STV0367-based cards and modules

This adds detection and activation for STV0367-based tuner hardware (namely
CineCTv6 bridge cards and older DuoFlex CT addon modules). Utilises the
extended stv0367 demod driver.

TDA18212 i2c_client/regmap-api code was originally implemented by
Antti Palosaari <crope@iki.fi> in a variant to update the ddbridge code
from the vendor dddvb package (formal ack for these parts received).
Original patch at [1].

When boards with STV0367 are cold-started, there might be issues with the
I2C gate, causing the TDA18212 detection/probe to fail. For these demods,
a workaround (tuner_tda18212_ping) is implemented which probes the tuner
twice on this hardware constellation which will resolve the problem and
put all components into a working state. Other demod/port types won't be
retried.

[1] https://patchwork.linuxtv.org/patch/25146/

Signed-off-by: Daniel Scheller <d.scheller@gmx.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
drivers/media/pci/ddbridge/Kconfig
drivers/media/pci/ddbridge/ddbridge-core.c
drivers/media/pci/ddbridge/ddbridge.h