diff options
author | Axel Lin <axel.lin@gmail.com> | 2011-10-27 04:38:42 -0400 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2011-10-27 06:00:15 -0400 |
commit | 68e47981437686e58de1edc616d6c3043e01f07e (patch) | |
tree | 8ef1cbd7ea2db51466bd10aeb7a089c487eb1760 /sound | |
parent | b01a3d69f85c0af0934451e0f5457f2f6e7f3e63 (diff) |
ASoC: tlv320aic3x: Clear BIT_CLK_MASTER and WORD_CLK_MASTER bits for for slave mode
According to the datasheet:
Page0 / Register8: Audio Serial Data interface Control Register A
BIT 7: Bit Clock Directional Control
0: Bit clock is an input (slave mode)
1: Bit clock is an output (master mode)
BIT 6: Word Clock Directional Control
0: Word clock is an input (slave mode)
1: Word clock is an output (master mode)
Current code sets BIT_CLK_MASTER and WORD_CLK_MASTER bits for master mode,
but does not clear these bits for slave mode.
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/soc/codecs/tlv320aic3x.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sound/soc/codecs/tlv320aic3x.c b/sound/soc/codecs/tlv320aic3x.c index 7a49390bc30d..87d5ef188e29 100644 --- a/sound/soc/codecs/tlv320aic3x.c +++ b/sound/soc/codecs/tlv320aic3x.c | |||
@@ -1023,6 +1023,7 @@ static int aic3x_set_dai_fmt(struct snd_soc_dai *codec_dai, | |||
1023 | break; | 1023 | break; |
1024 | case SND_SOC_DAIFMT_CBS_CFS: | 1024 | case SND_SOC_DAIFMT_CBS_CFS: |
1025 | aic3x->master = 0; | 1025 | aic3x->master = 0; |
1026 | iface_areg &= ~(BIT_CLK_MASTER | WORD_CLK_MASTER); | ||
1026 | break; | 1027 | break; |
1027 | default: | 1028 | default: |
1028 | return -EINVAL; | 1029 | return -EINVAL; |