From: Andreas Kemnade <andreas@kemnade.info>
To: crope@iki.fi, mchehab@kernel.org, linux-media@vger.kernel.org,
linux-kernel@vger.kernel.org
Cc: Andreas Kemnade <andreas@kemnade.info>
Subject: [PATCH 2/3] [media] af9035: init i2c already in it930x_frontend_attach
Date: Wed, 15 Mar 2017 23:22:09 +0100 [thread overview]
Message-ID: <1489616530-4025-3-git-send-email-andreas@kemnade.info> (raw)
In-Reply-To: <1489616530-4025-1-git-send-email-andreas@kemnade.info>
i2c bus is already needed when the frontend is probed,
so init it already in it930x_frontend_attach
That prevents errors like
si2168: probe of 6-0067 failed with error -5
Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
---
drivers/media/usb/dvb-usb-v2/af9035.c | 43 ++++++++++++++++++++++++++++++++++-
1 file changed, 42 insertions(+), 1 deletion(-)
diff --git a/drivers/media/usb/dvb-usb-v2/af9035.c b/drivers/media/usb/dvb-usb-v2/af9035.c
index 4df9486..a95f4b2 100644
--- a/drivers/media/usb/dvb-usb-v2/af9035.c
+++ b/drivers/media/usb/dvb-usb-v2/af9035.c
@@ -1214,8 +1214,49 @@ static int it930x_frontend_attach(struct dvb_usb_adapter *adap)
struct si2168_config si2168_config;
struct i2c_adapter *adapter;
- dev_dbg(&intf->dev, "adap->id=%d\n", adap->id);
+ dev_dbg(&intf->dev, "%s adap->id=%d\n", __func__, adap->id);
+
+ /* I2C master bus 2 clock speed 300k */
+ ret = af9035_wr_reg(d, 0x00f6a7, 0x07);
+ if (ret < 0)
+ goto err;
+
+ /* I2C master bus 1,3 clock speed 300k */
+ ret = af9035_wr_reg(d, 0x00f103, 0x07);
+ if (ret < 0)
+ goto err;
+
+ /* set gpio11 low */
+ ret = af9035_wr_reg_mask(d, 0xd8d4, 0x01, 0x01);
+ if (ret < 0)
+ goto err;
+
+ ret = af9035_wr_reg_mask(d, 0xd8d5, 0x01, 0x01);
+ if (ret < 0)
+ goto err;
+
+ ret = af9035_wr_reg_mask(d, 0xd8d3, 0x01, 0x01);
+ if (ret < 0)
+ goto err;
+ /* Tuner enable using gpiot2_en, gpiot2_on and gpiot2_o (reset) */
+ ret = af9035_wr_reg_mask(d, 0xd8b8, 0x01, 0x01);
+ if (ret < 0)
+ goto err;
+
+ ret = af9035_wr_reg_mask(d, 0xd8b9, 0x01, 0x01);
+ if (ret < 0)
+ goto err;
+
+ ret = af9035_wr_reg_mask(d, 0xd8b7, 0x00, 0x01);
+ if (ret < 0)
+ goto err;
+
+ msleep(200);
+
+ ret = af9035_wr_reg_mask(d, 0xd8b7, 0x01, 0x01);
+ if (ret < 0)
+ goto err;
memset(&si2168_config, 0, sizeof(si2168_config));
si2168_config.i2c_adapter = &adapter;
si2168_config.fe = &adap->fe[0];
--
2.1.4
next prev parent reply other threads:[~2017-03-15 22:23 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-03-15 22:22 [PATCH 0/3] support for Logilink VG0022a DVB-T2 stick Andreas Kemnade
2017-03-15 22:22 ` [PATCH 1/3] [media] si2157: get chip id during probing Andreas Kemnade
2017-04-23 12:19 ` Antti Palosaari
2017-04-23 12:38 ` Andreas Kemnade
2017-05-15 20:28 ` Andreas Kemnade
2017-05-24 8:55 ` Antti Palosaari
2017-05-26 14:32 ` Steven Toth
2017-03-15 22:22 ` Andreas Kemnade [this message]
2017-05-04 20:18 ` [PATCH 2/3] [media] af9035: init i2c already in it930x_frontend_attach Andreas Kemnade
2017-03-15 22:22 ` [PATCH 3/3] [media] af9035: add Logilink vg0022a to device id table Andreas Kemnade
2017-04-10 19:38 ` [PATCH 0/3] support for Logilink VG0022a DVB-T2 stick Andreas Kemnade
2017-10-27 17:07 ` Alois Fertl
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1489616530-4025-3-git-send-email-andreas@kemnade.info \
--to=andreas@kemnade.info \
--cc=crope@iki.fi \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=mchehab@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).