ASoC: Writing register default value for the reset register
authorAxel Lin <axel.lin@gmail.com>
Tue, 11 Oct 2011 09:55:00 +0000 (17:55 +0800)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Tue, 11 Oct 2011 13:32:22 +0000 (14:32 +0100)
The WM8983 can be reset by performing a write of any value to
the software reset register.
To avoid writing to the software reset register while resume,
we should write the same value in wm8983_reg_defs to software
reset register in wm8983_probe().
The write to the reset register is suppressed by the cache
restore code when it skips writes of default registers.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
sound/soc/codecs/wm8983.c

index 17f04ec2b940d068f07b21a116f9ca9568a64fff..93ee28439be56f70dbdaec4a4689209df94f3243 100644 (file)
@@ -1007,7 +1007,7 @@ static int wm8983_probe(struct snd_soc_codec *codec)
                return ret;
        }
 
-       ret = snd_soc_write(codec, WM8983_SOFTWARE_RESET, 0x8983);
+       ret = snd_soc_write(codec, WM8983_SOFTWARE_RESET, 0);
        if (ret < 0) {
                dev_err(codec->dev, "Failed to issue reset: %d\n", ret);
                return ret;