ASoC: wm8940: Fix setting PLL Output clock division ratio
authorAxel Lin <axel.lin@gmail.com>
Mon, 24 Oct 2011 03:32:41 +0000 (11:32 +0800)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Mon, 24 Oct 2011 12:09:42 +0000 (14:09 +0200)
According to the datasheet:
The PLL Output clock division ratio is controlled by BIT[5:4] of
WM8940_GPIO register(08h).
Current code read/write the WM8940_ADDCNTRL(07h) register which is wrong.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Liam Girdwood <lrg@ti.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
sound/soc/codecs/wm8940.c

index a4abfdfb217bfb646f0ce261dcfddf022509156a..3cc3bce61316a52f20b5b897e11518d30d4a9b92 100644 (file)
@@ -627,8 +627,8 @@ static int wm8940_set_dai_clkdiv(struct snd_soc_dai *codec_dai,
                ret = snd_soc_write(codec, WM8940_CLOCK, reg | (div << 5));
                break;
        case WM8940_OPCLKDIV:
-               reg = snd_soc_read(codec, WM8940_ADDCNTRL) & 0xFFCF;
-               ret = snd_soc_write(codec, WM8940_ADDCNTRL, reg | (div << 4));
+               reg = snd_soc_read(codec, WM8940_GPIO) & 0xFFCF;
+               ret = snd_soc_write(codec, WM8940_GPIO, reg | (div << 4));
                break;
        }
        return ret;