From: Brad Love <brad@nextdimension.cc>
To: linux-media@vger.kernel.org, mchehab@kernel.org, sean@mess.org
Cc: Brad Love <brad@nextdimension.cc>
Subject: [PATCH v5 3/4] pvrusb2: Add i2c client demod/tuner support
Date: Fri, 31 May 2019 12:32:23 -0500 [thread overview]
Message-ID: <1559323944-15639-4-git-send-email-brad@nextdimension.cc> (raw)
In-Reply-To: <1559323944-15639-1-git-send-email-brad@nextdimension.cc>
i2c client device is the "new" method to attach to dvb modules, include
support for this functionality. Cleanup code has been added to init in
case of failure, as well as to frontend exit.
Required by Hauppauge HVR-19x5 with si2168/lgdt3306a/si2177
Signed-off-by: Brad Love <brad@nextdimension.cc>
---
Since v4:
- commit message expansion
drivers/media/usb/pvrusb2/pvrusb2-dvb.c | 11 +++++++++++
drivers/media/usb/pvrusb2/pvrusb2-dvb.h | 3 +++
2 files changed, 14 insertions(+)
diff --git a/drivers/media/usb/pvrusb2/pvrusb2-dvb.c b/drivers/media/usb/pvrusb2/pvrusb2-dvb.c
index f302f1e..7f5df5c 100644
--- a/drivers/media/usb/pvrusb2/pvrusb2-dvb.c
+++ b/drivers/media/usb/pvrusb2/pvrusb2-dvb.c
@@ -404,6 +404,9 @@ static int pvr2_dvb_frontend_init(struct pvr2_dvb_adapter *adap)
fail_frontend0:
dvb_frontend_detach(adap->fe[0]);
adap->fe[0] = NULL;
+ dvb_module_release(adap->i2c_client_tuner);
+ dvb_module_release(adap->i2c_client_demod[1]);
+ dvb_module_release(adap->i2c_client_demod[0]);
return ret;
}
@@ -420,6 +423,14 @@ static int pvr2_dvb_frontend_exit(struct pvr2_dvb_adapter *adap)
dvb_frontend_detach(adap->fe[0]);
adap->fe[0] = NULL;
}
+
+ dvb_module_release(adap->i2c_client_tuner);
+ adap->i2c_client_tuner = NULL;
+ dvb_module_release(adap->i2c_client_demod[1]);
+ adap->i2c_client_demod[1] = NULL;
+ dvb_module_release(adap->i2c_client_demod[0]);
+ adap->i2c_client_demod[0] = NULL;
+
return 0;
}
diff --git a/drivers/media/usb/pvrusb2/pvrusb2-dvb.h b/drivers/media/usb/pvrusb2/pvrusb2-dvb.h
index 91bff57..c0b27f5 100644
--- a/drivers/media/usb/pvrusb2/pvrusb2-dvb.h
+++ b/drivers/media/usb/pvrusb2/pvrusb2-dvb.h
@@ -20,6 +20,9 @@ struct pvr2_dvb_adapter {
struct dvb_net dvb_net;
struct dvb_frontend *fe[2];
+ struct i2c_client *i2c_client_demod[2];
+ struct i2c_client *i2c_client_tuner;
+
int feedcount;
int max_feed_count;
--
2.7.4
next prev parent reply other threads:[~2019-05-31 17:33 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-05-31 17:32 [PATCH v5 0/4] Add Hauppauge HVR1955/1975 devices Brad Love
2019-05-31 17:32 ` [PATCH v5 1/4] si2157: add detection of si2177 tuner Brad Love
2019-05-31 17:32 ` [PATCH v5 2/4] pvrusb2: Add multiple dvb frontend support Brad Love
2019-05-31 17:32 ` Brad Love [this message]
2019-05-31 17:32 ` [PATCH v5 4/4] pvrusb2: Add Hauppauge HVR1955/1975 devices Brad Love
2019-06-02 12:36 ` kbuild test robot
2019-06-02 14:34 ` kbuild test robot
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=1559323944-15639-4-git-send-email-brad@nextdimension.cc \
--to=brad@nextdimension.cc \
--cc=linux-media@vger.kernel.org \
--cc=mchehab@kernel.org \
--cc=sean@mess.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