diff options
author | Panagiotis Christeas <p_christ@hol.gr> | 2006-01-15 04:01:54 -0500 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@brturbo.com.br> | 2006-01-15 06:03:34 -0500 |
commit | 7d83e8431ae531e907f09c277ab4ab4620092518 (patch) | |
tree | 485a642863053fe2c9021431fa0229a2a03b52a5 /drivers/media | |
parent | a9cff90ed9a23e9f73963fe73b71ef7e5de3e822 (diff) |
V4L/DVB (3378): Fix for lack of analog output on some cx88 boards
- Workaround to fix a known regression at cx88-tvaudio.c
- provide a module parameter workaround to always enable
analog output.
Signed-off-by: Panagiotis Christeas <p_christ@hol.gr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Diffstat (limited to 'drivers/media')
-rw-r--r-- | drivers/media/video/cx88/cx88-tvaudio.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/media/video/cx88/cx88-tvaudio.c b/drivers/media/video/cx88/cx88-tvaudio.c index 24118e43e73a..da8d97ce0c4b 100644 --- a/drivers/media/video/cx88/cx88-tvaudio.c +++ b/drivers/media/video/cx88/cx88-tvaudio.c | |||
@@ -60,6 +60,11 @@ static unsigned int audio_debug = 0; | |||
60 | module_param(audio_debug, int, 0644); | 60 | module_param(audio_debug, int, 0644); |
61 | MODULE_PARM_DESC(audio_debug, "enable debug messages [audio]"); | 61 | MODULE_PARM_DESC(audio_debug, "enable debug messages [audio]"); |
62 | 62 | ||
63 | static unsigned int always_analog = 0; | ||
64 | module_param(always_analog,int,0644); | ||
65 | MODULE_PARM_DESC(always_analog,"force analog audio out"); | ||
66 | |||
67 | |||
63 | #define dprintk(fmt, arg...) if (audio_debug) \ | 68 | #define dprintk(fmt, arg...) if (audio_debug) \ |
64 | printk(KERN_DEBUG "%s/0: " fmt, core->name , ## arg) | 69 | printk(KERN_DEBUG "%s/0: " fmt, core->name , ## arg) |
65 | 70 | ||
@@ -155,7 +160,8 @@ static void set_audio_finish(struct cx88_core *core, u32 ctl) | |||
155 | cx_write(AUD_I2SOUTPUTCNTL, 1); | 160 | cx_write(AUD_I2SOUTPUTCNTL, 1); |
156 | cx_write(AUD_I2SCNTL, 0); | 161 | cx_write(AUD_I2SCNTL, 0); |
157 | /* cx_write(AUD_APB_IN_RATE_ADJ, 0); */ | 162 | /* cx_write(AUD_APB_IN_RATE_ADJ, 0); */ |
158 | } else { | 163 | } |
164 | if ((always_analog) || (!cx88_boards[core->board].blackbird)) { | ||
159 | ctl |= EN_DAC_ENABLE; | 165 | ctl |= EN_DAC_ENABLE; |
160 | cx_write(AUD_CTL, ctl); | 166 | cx_write(AUD_CTL, ctl); |
161 | } | 167 | } |