diff options
author | Axel Lin <axel.lin@gmail.com> | 2011-11-29 06:47:38 -0500 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2011-11-29 06:50:50 -0500 |
commit | 7b282cbbf3c7bbad20505761a9eadd6d9a7280c7 (patch) | |
tree | 7c4f89ea65b9895e62f3dfaa3a27361d56de2b08 | |
parent | 1175f71197140dfdb8ad31767030175d88cbea2b (diff) |
ASoC: cs42l73: Fix clear wrong bits in cs42l73_set_dai_fmt
What we want is to clear BIT[5:4](PCM_MODE_MASK) and BIT[3](PCM_BIT_ORDER) bits,
but current code clears BIT[2:0].
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Brian Austin <brian.austin@cirrus.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
-rw-r--r-- | sound/soc/codecs/cs42l73.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sound/soc/codecs/cs42l73.c b/sound/soc/codecs/cs42l73.c index 9fd5de77cafb..da3125aa55f9 100644 --- a/sound/soc/codecs/cs42l73.c +++ b/sound/soc/codecs/cs42l73.c | |||
@@ -1024,7 +1024,8 @@ static int cs42l73_set_dai_fmt(struct snd_soc_dai *codec_dai, unsigned int fmt) | |||
1024 | } | 1024 | } |
1025 | 1025 | ||
1026 | if (spc & SPDIF_PCM) { | 1026 | if (spc & SPDIF_PCM) { |
1027 | spc &= (31 << 3); /* Clear PCM mode, set MSB->LSB */ | 1027 | /* Clear PCM mode, clear PCM_BIT_ORDER bit for MSB->LSB */ |
1028 | spc &= ~(PCM_MODE_MASK | PCM_BIT_ORDER); | ||
1028 | switch (format) { | 1029 | switch (format) { |
1029 | case SND_SOC_DAIFMT_DSP_B: | 1030 | case SND_SOC_DAIFMT_DSP_B: |
1030 | if (inv == SND_SOC_DAIFMT_IB_IF) | 1031 | if (inv == SND_SOC_DAIFMT_IB_IF) |