From: "Bjørn Mork" <bjorn@mork.no>
To: Antti Palosaari <crope@iki.fi>
Cc: Steve Kerrison <steve@stevekerrison.com>, linux-media@vger.kernel.org
Subject: Re: [bug-report] unconditionally calling cxd2820r_get_tuner_i2c_adapter() from em28xx-dvb.c creates a hard module dependency
Date: Wed, 01 Jun 2011 12:53:06 +0200 [thread overview]
Message-ID: <87mxi1n7ql.fsf@nemi.mork.no> (raw)
In-Reply-To: <4DE60B36.9040507@iki.fi> (Antti Palosaari's message of "Wed, 01 Jun 2011 12:49:42 +0300")
[-- Attachment #1: Type: text/plain, Size: 238 bytes --]
Another possible solution... This is my last one, I promise :-)
I looked at dvb_attach() and realized that you can ab^H^Hreuse it. This
makes the patch tiny, and allow you to continue hiding
struct cxd2820r_priv.
Bjørn
[-- Attachment #2: 0001-em28xx-dvb-Use-dvb_attach-to-call-cxd2820r_get_tuner.patch --]
[-- Type: text/x-diff, Size: 1461 bytes --]
>From b570bbad12c1d164ed92c6711a1775db29c4c0a7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bj=C3=B8rn=20Mork?= <bjorn@mork.no>
Date: Wed, 1 Jun 2011 12:48:25 +0200
Subject: [PATCH] em28xx-dvb: Use dvb_attach to call cxd2820r_get_tuner_i2c_adapter()
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
This avoids a hard module dependency on cxd2820r. Even though we
don't really attach anything in this call, we can stil reuse
dvb_attach since the called function is expected to return a
pointer.
Signed-off-by: Bjørn Mork <bjorn@mork.no>
---
drivers/media/video/em28xx/em28xx-dvb.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/drivers/media/video/em28xx/em28xx-dvb.c b/drivers/media/video/em28xx/em28xx-dvb.c
index 7904ca4..d994592 100644
--- a/drivers/media/video/em28xx/em28xx-dvb.c
+++ b/drivers/media/video/em28xx/em28xx-dvb.c
@@ -669,7 +669,8 @@ static int dvb_init(struct em28xx *dev)
&em28xx_cxd2820r_config, &dev->i2c_adap, NULL);
if (dvb->fe[0]) {
struct i2c_adapter *i2c_tuner;
- i2c_tuner = cxd2820r_get_tuner_i2c_adapter(dvb->fe[0]);
+ /* we don't really attach i2c_tuner. Just reusing the symbol logic */
+ i2c_tuner = dvb_attach(cxd2820r_get_tuner_i2c_adapter, dvb->fe[0]);
/* FE 0 attach tuner */
if (!dvb_attach(tda18271_attach, dvb->fe[0], 0x60,
i2c_tuner, &em28xx_cxd2820r_tda18271_config)) {
--
1.7.2.5
next prev parent reply other threads:[~2011-06-01 10:53 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-06-01 9:45 [bug-report] unconditionally calling cxd2820r_get_tuner_i2c_adapter() from em28xx-dvb.c creates a hard module dependency Bjørn Mork
2011-06-01 9:49 ` Antti Palosaari
2011-06-01 10:31 ` Bjørn Mork
2011-06-01 10:53 ` Bjørn Mork [this message]
2011-06-01 17:18 ` Bjørn Mork
2011-06-03 12:21 ` Antti Palosaari
2011-06-03 12:50 ` Bjørn Mork
2011-06-03 12:59 ` Antti Palosaari
2011-06-03 13:20 ` Bjørn Mork
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=87mxi1n7ql.fsf@nemi.mork.no \
--to=bjorn@mork.no \
--cc=crope@iki.fi \
--cc=linux-media@vger.kernel.org \
--cc=steve@stevekerrison.com \
/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