diff options
author | Mauro Carvalho Chehab <mchehab@infradead.org> | 2006-12-04 06:31:35 -0500 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@infradead.org> | 2006-12-10 06:05:51 -0500 |
commit | cefccc8011c58b559498396f0ccefa0a0ffa3f53 (patch) | |
tree | ea31f846a74757ea42ec407efcd724eff05b9e38 | |
parent | 3086d6cb0a2ec93f17bc215af3113c54af6080c1 (diff) |
V4L/DVB (4934): Usbvision radio requires GainNormal at e register
Adds an option to select GainNormal at tda9887 and make usbvision
to use it.
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
-rw-r--r-- | drivers/media/video/tda9887.c | 6 | ||||
-rw-r--r-- | drivers/media/video/usbvision/usbvision-core.c | 3 | ||||
-rw-r--r-- | include/media/tuner.h | 1 |
3 files changed, 10 insertions, 0 deletions
diff --git a/drivers/media/video/tda9887.c b/drivers/media/video/tda9887.c index 87ffb0e84a7a..fde576f1101c 100644 --- a/drivers/media/video/tda9887.c +++ b/drivers/media/video/tda9887.c | |||
@@ -482,6 +482,12 @@ static int tda9887_set_config(struct tuner *t, char *buf) | |||
482 | buf[1] &= ~cQSS; | 482 | buf[1] &= ~cQSS; |
483 | if (t->tda9887_config & TDA9887_GATING_18) | 483 | if (t->tda9887_config & TDA9887_GATING_18) |
484 | buf[3] &= ~cGating_36; | 484 | buf[3] &= ~cGating_36; |
485 | |||
486 | if (t->tda9887_config & TDA9887_GAIN_NORMAL) { | ||
487 | radio_stereo.e &= ~cTunerGainLow; | ||
488 | radio_mono.e &= ~cTunerGainLow; | ||
489 | } | ||
490 | |||
485 | return 0; | 491 | return 0; |
486 | } | 492 | } |
487 | 493 | ||
diff --git a/drivers/media/video/usbvision/usbvision-core.c b/drivers/media/video/usbvision/usbvision-core.c index 0365c7f93972..b5aa3185402d 100644 --- a/drivers/media/video/usbvision/usbvision-core.c +++ b/drivers/media/video/usbvision/usbvision-core.c | |||
@@ -2585,12 +2585,15 @@ static int attach_inform(struct i2c_client *client) | |||
2585 | case 0x4b: | 2585 | case 0x4b: |
2586 | { | 2586 | { |
2587 | struct tuner_setup tun_setup; | 2587 | struct tuner_setup tun_setup; |
2588 | unsigned int tda9887_conf = TDA9887_GAIN_NORMAL; | ||
2588 | 2589 | ||
2589 | tun_setup.mode_mask = T_ANALOG_TV | T_RADIO; | 2590 | tun_setup.mode_mask = T_ANALOG_TV | T_RADIO; |
2590 | tun_setup.type = TUNER_TDA9887; | 2591 | tun_setup.type = TUNER_TDA9887; |
2591 | tun_setup.addr = client->addr; | 2592 | tun_setup.addr = client->addr; |
2592 | 2593 | ||
2593 | call_i2c_clients(usbvision, TUNER_SET_TYPE_ADDR, &tun_setup); | 2594 | call_i2c_clients(usbvision, TUNER_SET_TYPE_ADDR, &tun_setup); |
2595 | call_i2c_clients(usbvision,TDA9887_SET_CONFIG, &tda9887_conf); | ||
2596 | |||
2594 | break; | 2597 | break; |
2595 | } | 2598 | } |
2596 | case 0x42: | 2599 | case 0x42: |
diff --git a/include/media/tuner.h b/include/media/tuner.h index 3116e750132f..99acf847365c 100644 --- a/include/media/tuner.h +++ b/include/media/tuner.h | |||
@@ -145,6 +145,7 @@ extern int tuner_debug; | |||
145 | #define TDA9887_DEEMPHASIS_75 (3<<16) | 145 | #define TDA9887_DEEMPHASIS_75 (3<<16) |
146 | #define TDA9887_AUTOMUTE (1<<18) | 146 | #define TDA9887_AUTOMUTE (1<<18) |
147 | #define TDA9887_GATING_18 (1<<19) | 147 | #define TDA9887_GATING_18 (1<<19) |
148 | #define TDA9887_GAIN_NORMAL (1<<20) | ||
148 | 149 | ||
149 | #ifdef __KERNEL__ | 150 | #ifdef __KERNEL__ |
150 | 151 | ||