aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Krufky <mkrufky@kernellabs.com>2012-02-06 23:22:34 -0500
committerMauro Carvalho Chehab <mchehab@redhat.com>2012-02-14 14:20:46 -0500
commitf21cfaf6381e2330c4e2f619d4cedc72146a8cf7 (patch)
treea0b045a8db77c58800673ad065bc359492bea0cf
parentd83988058cba594ac2011a4ca0c50097bd24c2de (diff)
[media] tuner: add support for Xceive XC5000C
Signed-off-by: Michael Krufky <mkrufky@kernellabs.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r--drivers/media/common/tuners/tuner-types.c4
-rw-r--r--drivers/media/video/tuner-core.c15
-rw-r--r--include/media/tuner.h1
3 files changed, 20 insertions, 0 deletions
diff --git a/drivers/media/common/tuners/tuner-types.c b/drivers/media/common/tuners/tuner-types.c
index e13683bab6b3..2da4440c16ee 100644
--- a/drivers/media/common/tuners/tuner-types.c
+++ b/drivers/media/common/tuners/tuner-types.c
@@ -1868,6 +1868,10 @@ struct tunertype tuners[] = {
1868 .params = tuner_tena_tnf_5337_params, 1868 .params = tuner_tena_tnf_5337_params,
1869 .count = ARRAY_SIZE(tuner_tena_tnf_5337_params), 1869 .count = ARRAY_SIZE(tuner_tena_tnf_5337_params),
1870 }, 1870 },
1871 [TUNER_XC5000C] = { /* Xceive 5000C */
1872 .name = "Xceive 5000C tuner",
1873 /* see xc5000.c for details */
1874 },
1871}; 1875};
1872EXPORT_SYMBOL(tuners); 1876EXPORT_SYMBOL(tuners);
1873 1877
diff --git a/drivers/media/video/tuner-core.c b/drivers/media/video/tuner-core.c
index 4059ea178c2d..0628a0ae9da5 100644
--- a/drivers/media/video/tuner-core.c
+++ b/drivers/media/video/tuner-core.c
@@ -380,6 +380,21 @@ static void set_type(struct i2c_client *c, unsigned int type,
380 tune_now = 0; 380 tune_now = 0;
381 break; 381 break;
382 } 382 }
383 case TUNER_XC5000C:
384 {
385 struct xc5000_config xc5000c_cfg = {
386 .i2c_address = t->i2c->addr,
387 /* if_khz will be set at dvb_attach() */
388 .if_khz = 0,
389 .fw = XC5000C_DEFAULT_FIRMWARE,
390 };
391
392 if (!dvb_attach(xc5000_attach,
393 &t->fe, t->i2c->adapter, &xc5000c_cfg))
394 goto attach_failed;
395 tune_now = 0;
396 break;
397 }
383 case TUNER_NXP_TDA18271: 398 case TUNER_NXP_TDA18271:
384 { 399 {
385 struct tda18271_config cfg = { 400 struct tda18271_config cfg = {
diff --git a/include/media/tuner.h b/include/media/tuner.h
index 29e1920e7339..926aff9bdf65 100644
--- a/include/media/tuner.h
+++ b/include/media/tuner.h
@@ -136,6 +136,7 @@
136#define TUNER_TENA_TNF_5337 86 136#define TUNER_TENA_TNF_5337 86
137 137
138#define TUNER_XC4000 87 /* Xceive Silicon Tuner */ 138#define TUNER_XC4000 87 /* Xceive Silicon Tuner */
139#define TUNER_XC5000C 88 /* Xceive Silicon Tuner */
139 140
140/* tv card specific */ 141/* tv card specific */
141#define TDA9887_PRESENT (1<<0) 142#define TDA9887_PRESENT (1<<0)