diff options
author | Michael Krufky <mkrufky@kernellabs.com> | 2009-09-15 22:04:18 -0400 |
---|---|---|
committer | Michael Krufky <mkrufky@kernellabs.com> | 2009-09-15 22:04:18 -0400 |
commit | b929890a4ee11bb0135de26a8eab873a3e1e5323 (patch) | |
tree | 4ea2a6d3f3cfe1a9a7609bf41b7c899a01d79881 | |
parent | 33b0deb1ca699a4e3d5a90a4a35a2029aba91b0e (diff) | |
download | mediapointer-dvb-s2-b929890a4ee11bb0135de26a8eab873a3e1e5323.tar.gz mediapointer-dvb-s2-b929890a4ee11bb0135de26a8eab873a3e1e5323.tar.bz2 |
tuner-core: add support for NXP TDA18271 without TDA829X demod
From: Michael Krufky <mkrufky@kernellabs.com>
Add support for NXP TDA18271 as a standalone tuner, allowing the use of
analog demodulators other than the Philips/NXP TDA829x.
Priority: normal
Signed-off-by: Michael Krufky <mkrufky@kernellabs.com>
-rw-r--r-- | linux/Documentation/video4linux/CARDLIST.tuner | 1 | ||||
-rw-r--r-- | linux/drivers/media/common/tuners/tuner-types.c | 4 | ||||
-rw-r--r-- | linux/drivers/media/video/tuner-core.c | 12 | ||||
-rw-r--r-- | linux/include/media/tuner.h | 1 |
4 files changed, 18 insertions, 0 deletions
diff --git a/linux/Documentation/video4linux/CARDLIST.tuner b/linux/Documentation/video4linux/CARDLIST.tuner index 3561b09fb..e0d298fe8 100644 --- a/linux/Documentation/video4linux/CARDLIST.tuner +++ b/linux/Documentation/video4linux/CARDLIST.tuner @@ -80,3 +80,4 @@ tuner=79 - Philips PAL/SECAM multi (FM1216 MK5) tuner=80 - Philips FQ1216LME MK3 PAL/SECAM w/active loopthrough tuner=81 - Partsnic (Daewoo) PTI-5NF05 tuner=82 - Philips CU1216L +tuner=83 - NXP TDA18271 diff --git a/linux/drivers/media/common/tuners/tuner-types.c b/linux/drivers/media/common/tuners/tuner-types.c index a5a36fee3..792a763b2 100644 --- a/linux/drivers/media/common/tuners/tuner-types.c +++ b/linux/drivers/media/common/tuners/tuner-types.c @@ -1802,6 +1802,10 @@ struct tunertype tuners[] = { .count = ARRAY_SIZE(tuner_philips_cu1216l_params), .stepsize = 62500, }, + [TUNER_NXP_TDA18271] = { + .name = "NXP TDA18271", + /* see tda18271-fe.c for details */ + }, }; EXPORT_SYMBOL(tuners); diff --git a/linux/drivers/media/video/tuner-core.c b/linux/drivers/media/video/tuner-core.c index a4f6c19b7..507d6c7b0 100644 --- a/linux/drivers/media/video/tuner-core.c +++ b/linux/drivers/media/video/tuner-core.c @@ -30,6 +30,7 @@ #include "tuner-simple.h" #include "tda9887.h" #include "xc5000.h" +#include "tda18271.h" #define UNSET (-1U) @@ -434,6 +435,17 @@ static void set_type(struct i2c_client *c, unsigned int type, goto attach_failed; break; } + case TUNER_NXP_TDA18271: + { + struct tda18271_config cfg = { + .config = t->config, + }; + + if (!dvb_attach(tda18271_attach, &t->fe, t->i2c->addr, + t->i2c->adapter, &cfg)) + goto attach_failed; + break; + } default: if (!dvb_attach(simple_tuner_attach, &t->fe, t->i2c->adapter, t->i2c->addr, t->type)) diff --git a/linux/include/media/tuner.h b/linux/include/media/tuner.h index b1f57e175..4d5b53ff1 100644 --- a/linux/include/media/tuner.h +++ b/linux/include/media/tuner.h @@ -128,6 +128,7 @@ #define TUNER_PHILIPS_FQ1216LME_MK3 80 /* Active loopthrough, no FM */ #define TUNER_PARTSNIC_PTI_5NF05 81 #define TUNER_PHILIPS_CU1216L 82 +#define TUNER_NXP_TDA18271 83 /* tv card specific */ #define TDA9887_PRESENT (1<<0) |