summaryrefslogtreecommitdiff
path: root/sound
diff options
context:
space:
mode:
authorShengjiu Wang <shengjiu.wang@freescale.com>2015-04-02 09:56:10 +0800
committerJason Liu <r64343@freescale.com>2015-05-08 16:33:47 +0800
commit62d37b6c5a47ec4ecc0639cd1767745edc7e5480 (patch)
treefbaaff8af336c64a9edf367e062d1830d73f5450 /sound
parentb5ba0f42e19c113e506083699e4723e485aa914b (diff)
MLK-10494: ASoC: imx_wm8960: one channel is mute when record 2 channel sound
There is only one channel input in hardware connection. Route it to right channel, then all 2 channel has sound. Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
Diffstat (limited to 'sound')
-rw-r--r--sound/soc/fsl/imx-wm8960.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/sound/soc/fsl/imx-wm8960.c b/sound/soc/fsl/imx-wm8960.c
index e41114222d0c..01517966d1f2 100644
--- a/sound/soc/fsl/imx-wm8960.c
+++ b/sound/soc/fsl/imx-wm8960.c
@@ -106,6 +106,12 @@ static int imx_hifi_hw_params(struct snd_pcm_substream *substream,
snd_soc_update_bits(codec_dai->codec, WM8960_ADDCTL4, 3<<2, 2<<2);
snd_soc_update_bits(codec_dai->codec, WM8960_ADDCTL1, 1, 1);
+ /*
+ * As the hardware only connect the input for left channel, we need
+ * to route it for right channel.
+ */
+ snd_soc_update_bits(codec_dai->codec, WM8960_ADDCTL1, 3<<2, 1<<2);
+
if (!data->is_codec_master) {
ret = snd_soc_dai_set_sysclk(cpu_dai, 0, 0, SND_SOC_CLOCK_OUT);
if (ret) {