From: Axel Lin Date: Fri, 28 Oct 2011 07:17:56 +0000 (+0800) Subject: ASoC: Leave input audio data bit length settings untouched in wm8711_set_dai_fmt X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=d558cfc30064a97c2c65dbd2b3a4f5a1dea7ec1b;p=GitHub%2Fexynos8895%2Fandroid_kernel_samsung_universal8895.git ASoC: Leave input audio data bit length settings untouched in wm8711_set_dai_fmt Current implementation in wm8711_set_dai_fmt always clear BIT[3:2] (the Input Audio Data Bit Length Select) of WM8711_IFACE(07h) register. Input Audio Data Bit Length Select bits are set by wm8711_hw_params, we should leave BIT[3:2] untouched in wm8711_set_dai_fmt. Signed-off-by: Axel Lin Signed-off-by: Mark Brown Cc: stable@kernel.org --- diff --git a/sound/soc/codecs/wm8711.c b/sound/soc/codecs/wm8711.c index 8ba49d867ac7..076bdb9930a1 100644 --- a/sound/soc/codecs/wm8711.c +++ b/sound/soc/codecs/wm8711.c @@ -232,7 +232,7 @@ static int wm8711_set_dai_fmt(struct snd_soc_dai *codec_dai, unsigned int fmt) { struct snd_soc_codec *codec = codec_dai->codec; - u16 iface = 0; + u16 iface = snd_soc_read(codec, WM8711_IFACE) & 0x000c; /* set master/slave audio interface */ switch (fmt & SND_SOC_DAIFMT_MASTER_MASK) {