[PATCH 102/133] [Jaunty SRU] ARM.imx51 Freescale:ENGR00112462 sgtl5000: don't mute adc in digital mute

Brad Figg brad.figg at canonical.com
Thu Jul 9 16:49:32 UTC 2009


From: Alan Tull <r80115 at freescale.com>

sgtl5000_digital_mute() was muting the adc.  This would result
in silence being recorded if record happened too soon after
a playback.

Signed-off-by: Alan Tull <r80115 at freescale.com>
Signed-off-by: Brad Figg <brad.figg at canonical.com>
---
 sound/soc/codecs/sgtl5000.c |    4 +---
 1 files changed, 1 insertions(+), 3 deletions(-)

diff --git a/sound/soc/codecs/sgtl5000.c b/sound/soc/codecs/sgtl5000.c
index 577b701..2618ae5 100644
--- a/sound/soc/codecs/sgtl5000.c
+++ b/sound/soc/codecs/sgtl5000.c
@@ -397,13 +397,11 @@ static int sgtl5000_digital_mute(struct snd_soc_dai *codec_dai, int mute)
 	if (mute) {
 		reg1 |= SGTL5000_LINE_OUT_MUTE;
 		reg1 |= SGTL5000_HP_MUTE;
-		reg1 |= SGTL5000_ADC_MUTE;
 		reg2 |= SGTL5000_DAC_MUTE_LEFT;
 		reg2 |= SGTL5000_DAC_MUTE_RIGHT;
 	} else {
 		reg1 &= ~SGTL5000_LINE_OUT_MUTE;
 		reg1 &= ~SGTL5000_HP_MUTE;
-		reg1 &= ~SGTL5000_ADC_MUTE;
 		reg2 &= ~SGTL5000_DAC_MUTE_LEFT;
 		reg2 &= ~SGTL5000_DAC_MUTE_RIGHT;
 	}
@@ -950,7 +948,7 @@ static int sgtl5000_init(struct snd_soc_device *socdev)
 	    | (0xf << SGTL5000_ADC_VOL_RIGHT_SHIFT);
 	sgtl5000_write(codec, SGTL5000_CHIP_ANA_ADC_CTRL, reg);
 
-	reg = SGTL5000_LINE_OUT_MUTE | SGTL5000_HP_MUTE | SGTL5000_ADC_MUTE;
+	reg = SGTL5000_LINE_OUT_MUTE | SGTL5000_HP_MUTE;
 	sgtl5000_write(codec, SGTL5000_CHIP_ANA_CTRL, reg);
 
 	sgtl5000_write(codec, SGTL5000_CHIP_MIC_CTRL, 0);
-- 
1.6.0.4





More information about the kernel-team mailing list