diff options
author | Evgeny Plehov <EvgenyPlehov@ukr.net> | 2013-04-07 23:56:46 -0300 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2013-04-08 07:13:02 -0300 |
commit | 4a74772e6d2869b34b33f1072420c6891ce865ad (patch) | |
tree | 02c86babbac6c4032482c1b1caa5044fd9650f61 /drivers/media/dvb-frontends/cxd2820r_t2.c | |
parent | 752a62b2ec9c21931dce869f2ae2c921c83a1164 (diff) | |
download | blackbird-op-linux-4a74772e6d2869b34b33f1072420c6891ce865ad.tar.gz blackbird-op-linux-4a74772e6d2869b34b33f1072420c6891ce865ad.zip |
[media] cxd2820r_t2: Multistream support (MultiPLP)
MultiPLP filtering support for CXD2820r.
Signed-off-by: Evgeny Plehov <EvgenyPlehov@ukr.net>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/dvb-frontends/cxd2820r_t2.c')
-rw-r--r-- | drivers/media/dvb-frontends/cxd2820r_t2.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/drivers/media/dvb-frontends/cxd2820r_t2.c b/drivers/media/dvb-frontends/cxd2820r_t2.c index e82d82a7a2eb..c2bfea7551e9 100644 --- a/drivers/media/dvb-frontends/cxd2820r_t2.c +++ b/drivers/media/dvb-frontends/cxd2820r_t2.c @@ -124,6 +124,23 @@ int cxd2820r_set_frontend_t2(struct dvb_frontend *fe) buf[1] = ((if_ctl >> 8) & 0xff); buf[2] = ((if_ctl >> 0) & 0xff); + /* PLP filtering */ + if (c->stream_id < 0 || c->stream_id > 255) { + dev_dbg(&priv->i2c->dev, "%s: Disable PLP filtering\n", __func__); + ret = cxd2820r_wr_reg(priv, 0x023ad , 0); + if (ret) + goto error; + } else { + dev_dbg(&priv->i2c->dev, "%s: Enable PLP filtering = %d\n", __func__, + c->stream_id); + ret = cxd2820r_wr_reg(priv, 0x023af , c->stream_id & 0xFF); + if (ret) + goto error; + ret = cxd2820r_wr_reg(priv, 0x023ad , 1); + if (ret) + goto error; + } + ret = cxd2820r_wr_regs(priv, 0x020b6, buf, 3); if (ret) goto error; |