This is an automatic generated email to let you know that the following patch 
were queued:

Subject: media: si2168: Add spectrum inversion property
Author:  Brad Love <b...@nextdimension.cc>
Date:    Wed Jan 17 17:31:58 2018 -0500

Some tuners produce inverted spectrum, but the si2168 is not
currently set up to accept it. This adds an optional parameter
to set the frontend up to receive inverted spectrum.

Parameter is optional and only boards who enable inversion
will utilize this.

Signed-off-by: Brad Love <b...@nextdimension.cc>
Signed-off-by: Mauro Carvalho Chehab <mche...@s-opensource.com>

 drivers/media/dvb-frontends/si2168.c      | 3 +++
 drivers/media/dvb-frontends/si2168.h      | 3 +++
 drivers/media/dvb-frontends/si2168_priv.h | 1 +
 3 files changed, 7 insertions(+)

---

diff --git a/drivers/media/dvb-frontends/si2168.c 
b/drivers/media/dvb-frontends/si2168.c
index c1a638c8565d..282dc92cb102 100644
--- a/drivers/media/dvb-frontends/si2168.c
+++ b/drivers/media/dvb-frontends/si2168.c
@@ -339,6 +339,8 @@ static int si2168_set_frontend(struct dvb_frontend *fe)
 
        memcpy(cmd.args, "\x14\x00\x0a\x10\x00\x00", 6);
        cmd.args[4] = delivery_system | bandwidth;
+       if (dev->spectral_inversion)
+               cmd.args[5] |= 1;
        cmd.wlen = 6;
        cmd.rlen = 4;
        ret = si2168_cmd_execute(client, &cmd);
@@ -798,6 +800,7 @@ static int si2168_probe(struct i2c_client *client,
        dev->ts_mode = config->ts_mode;
        dev->ts_clock_inv = config->ts_clock_inv;
        dev->ts_clock_gapped = config->ts_clock_gapped;
+       dev->spectral_inversion = config->spectral_inversion;
 
        dev_info(&client->dev, "Silicon Labs Si2168-%c%d%d successfully 
identified\n",
                 dev->version >> 24 & 0xff, dev->version >> 16 & 0xff,
diff --git a/drivers/media/dvb-frontends/si2168.h 
b/drivers/media/dvb-frontends/si2168.h
index f48f0fb0ad69..d519edd26c21 100644
--- a/drivers/media/dvb-frontends/si2168.h
+++ b/drivers/media/dvb-frontends/si2168.h
@@ -46,6 +46,9 @@ struct si2168_config {
 
        /* TS clock gapped */
        bool ts_clock_gapped;
+
+       /* Inverted spectrum */
+       bool spectral_inversion;
 };
 
 #endif
diff --git a/drivers/media/dvb-frontends/si2168_priv.h 
b/drivers/media/dvb-frontends/si2168_priv.h
index 3c8746a20038..2d362e162ade 100644
--- a/drivers/media/dvb-frontends/si2168_priv.h
+++ b/drivers/media/dvb-frontends/si2168_priv.h
@@ -48,6 +48,7 @@ struct si2168_dev {
        u8 ts_mode;
        bool ts_clock_inv;
        bool ts_clock_gapped;
+       bool spectral_inversion;
 };
 
 /* firmware command struct */

_______________________________________________
linuxtv-commits mailing list
linuxtv-commits@linuxtv.org
https://www.linuxtv.org/cgi-bin/mailman/listinfo/linuxtv-commits

Reply via email to