summaryrefslogtreecommitdiff
path: root/drivers/media
diff options
context:
space:
mode:
authorMichael Krufky <mkrufky@linuxtv.org>2007-12-24 04:36:14 -0300
committerMauro Carvalho Chehab <mchehab@infradead.org>2008-01-25 19:04:20 -0200
commitc90762799c42df203fc2c9c1a2ac39f154f8faca (patch)
tree3ceeb7cea8cc1ae0e5b94d1ae99c144d985a8006 /drivers/media
parentfe0bf6d783d8057bd3dd0dd69613a390d6986c47 (diff)
V4L/DVB (6908): tda8290: add the option not to probe for tuners passed into tda829x_config
Prevent the tda8290 module from probing for tuners during tda829x_attach, by passing: .probe_tuner = TDA829X_DONT_PROBE, ...in struct tda829x_config Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Diffstat (limited to 'drivers/media')
-rw-r--r--drivers/media/video/tda8290.c9
-rw-r--r--drivers/media/video/tda8290.h4
2 files changed, 12 insertions, 1 deletions
diff --git a/drivers/media/video/tda8290.c b/drivers/media/video/tda8290.c
index 2e1d9b663a91..bb62d5629af2 100644
--- a/drivers/media/video/tda8290.c
+++ b/drivers/media/video/tda8290.c
@@ -688,10 +688,17 @@ struct dvb_frontend *tda829x_attach(struct dvb_frontend *fe,
sizeof(struct analog_demod_ops));
}
- if (tda829x_find_tuner(fe) < 0)
+ if ((!(cfg) || (TDA829X_PROBE_TUNER == cfg->probe_tuner)) &&
+ (tda829x_find_tuner(fe) < 0))
goto fail;
switch (priv->ver) {
+ case TDA8290:
+ name = "tda8290";
+ break;
+ case TDA8295:
+ name = "tda8295";
+ break;
case TDA8290 | TDA8275:
name = "tda8290+75";
break;
diff --git a/drivers/media/video/tda8290.h b/drivers/media/video/tda8290.h
index 7bce03183d08..dc8ef310b7b2 100644
--- a/drivers/media/video/tda8290.h
+++ b/drivers/media/video/tda8290.h
@@ -23,6 +23,10 @@
struct tda829x_config {
unsigned int *lna_cfg;
int (*tuner_callback) (void *dev, int command, int arg);
+
+ unsigned int probe_tuner:1;
+#define TDA829X_PROBE_TUNER 0
+#define TDA829X_DONT_PROBE 1
};
#if defined(CONFIG_TUNER_TDA8290) || (defined(CONFIG_TUNER_TDA8290_MODULE) && defined(MODULE))