summaryrefslogtreecommitdiff
path: root/linux
diff options
context:
space:
mode:
authorMauro Carvalho Chehab <devnull@localhost>2005-11-06 03:45:31 +0000
committerMauro Carvalho Chehab <devnull@localhost>2005-11-06 03:45:31 +0000
commit0ca5f95393da32065c0ed630d5e4d4c9c749c5c8 (patch)
treec6d4fa9266af92de5da3bdb0d19893a86d6aa369 /linux
parent8c0e050ae8bb5a2702d47719c9ed2c2d289c654a (diff)
downloadmediapointer-dvb-s2-0ca5f95393da32065c0ed630d5e4d4c9c749c5c8.tar.gz
mediapointer-dvb-s2-0ca5f95393da32065c0ed630d5e4d4c9c749c5c8.tar.bz2
- Improves the audio handling for NICAM on cx88 audio.
Signed-off-by: Torsten Seeboth <Torsten.Seeboth@t-online.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Diffstat (limited to 'linux')
-rw-r--r--linux/drivers/media/video/cx88/cx88-tvaudio.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/linux/drivers/media/video/cx88/cx88-tvaudio.c b/linux/drivers/media/video/cx88/cx88-tvaudio.c
index 8fa9d9bbb..bc40552d4 100644
--- a/linux/drivers/media/video/cx88/cx88-tvaudio.c
+++ b/linux/drivers/media/video/cx88/cx88-tvaudio.c
@@ -1,5 +1,5 @@
/*
- $Id: cx88-tvaudio.c,v 1.47 2005/10/31 12:55:32 mkrufky Exp $
+ $Id: cx88-tvaudio.c,v 1.48 2005/11/06 03:45:31 mchehab Exp $
cx88x-audio.c - Conexant CX23880/23881 audio downstream driver driver
@@ -127,7 +127,9 @@ static void set_audio_start(struct cx88_core *core, u32 mode)
cx_write(AUD_VOL_CTL, (1 << 6));
// start programming
- cx_write(AUD_CTL, 0x0000);
+ cx_write(MO_AUD_DMACNTRL, 0x0000);
+ msleep(100);
+ //cx_write(AUD_CTL, 0x0000);
cx_write(AUD_INIT, mode);
cx_write(AUD_INIT_LD, 0x0001);
cx_write(AUD_SOFT_RESET, 0x0001);
@@ -155,6 +157,7 @@ static void set_audio_finish(struct cx88_core *core, u32 ctl)
/* finish programming */
cx_write(AUD_SOFT_RESET, 0x0000);
+ cx_write(MO_AUD_DMACNTRL, 0x0003);
/* unmute */
volume = cx_sread(SHADOW_AUD_VOL_CTL);
@@ -345,6 +348,7 @@ static void set_audio_standard_NICAM(struct cx88_core *core, u32 mode)
{ /* end of list */ },
};
+ set_audio_start(core,SEL_NICAM);
switch (core->tvaudio) {
case WW_L:
dprintk("%s SECAM-L NICAM (status: devel)\n", __FUNCTION__);
@@ -744,7 +748,7 @@ void cx88_set_tvaudio(struct cx88_core *core)
/* set nicam mode - otherwise
AUD_NICAM_STATUS2 contains wrong values */
- set_audio_standard_NICAM(core, EN_NICAM_FORCE_MONO1);
+ set_audio_standard_NICAM(core, EN_NICAM_AUTO_STEREO);
if (0 == cx88_detect_nicam(core)) {
/* fall back to fm / am mono */
set_audio_standard_A2(core, EN_A2_FORCE_MONO1);