summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMauro Carvalho Chehab <mchehab@redhat.com>2011-07-11 21:56:30 +0400
committerMauro Carvalho Chehab <mchehab@redhat.com>2011-07-28 00:55:52 +0400
commitfd0b0814a4ac6003d84042964c0c2923435539cd (patch)
treef7762918d185adbec07851b3d4155a37124b694e
parentf165f60d4229ec4f34002f8dcae45a023586c8d7 (diff)
downloadlinux-fd0b0814a4ac6003d84042964c0c2923435539cd.tar.xz
[media] dvb: don't cause missing symbols for drxk/tda18271c2dd
If those demods are unselected, but a bridge driver requires them, produce a runtime message, instead of missing symbols. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r--drivers/media/dvb/frontends/drxk.h12
-rw-r--r--drivers/media/dvb/frontends/tda18271c2dd.h14
2 files changed, 26 insertions, 0 deletions
diff --git a/drivers/media/dvb/frontends/drxk.h b/drivers/media/dvb/frontends/drxk.h
index a756e4562fe2..58baf419560c 100644
--- a/drivers/media/dvb/frontends/drxk.h
+++ b/drivers/media/dvb/frontends/drxk.h
@@ -29,7 +29,19 @@ struct drxk_config {
const char *microcode_name;
};
+#if defined(CONFIG_DVB_DRXK) || (defined(CONFIG_DVB_DRXK_MODULE) \
+ && defined(MODULE))
extern struct dvb_frontend *drxk_attach(const struct drxk_config *config,
struct i2c_adapter *i2c,
struct dvb_frontend **fe_t);
+#else
+static inline struct dvb_frontend *drxk_attach(const struct drxk_config *config,
+ struct i2c_adapter *i2c,
+ struct dvb_frontend **fe_t)
+{
+ printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
+ return NULL;
+}
+#endif
+
#endif
diff --git a/drivers/media/dvb/frontends/tda18271c2dd.h b/drivers/media/dvb/frontends/tda18271c2dd.h
index 492badd50231..5ac2da5fcf19 100644
--- a/drivers/media/dvb/frontends/tda18271c2dd.h
+++ b/drivers/media/dvb/frontends/tda18271c2dd.h
@@ -2,4 +2,18 @@
#define _TDA18271C2DD_H_
struct dvb_frontend *tda18271c2dd_attach(struct dvb_frontend *fe,
struct i2c_adapter *i2c, u8 adr);
+
+#if defined(CONFIG_DVB_TDA18271C2DD) || (defined(CONFIG_DVB_TDA18271C2DD_MODULE) \
+ && defined(MODULE))
+struct dvb_frontend *tda18271c2dd_attach(struct dvb_frontend *fe,
+ struct i2c_adapter *i2c, u8 adr);
+#else
+static inline struct dvb_frontend *tda18271c2dd_attach(struct dvb_frontend *fe,
+ struct i2c_adapter *i2c, u8 adr) {
+{
+ printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
+ return NULL;
+}
+#endif
+
#endif