ASoC: Do a warm reset after cold when resetting the WM9713
authorMark Brown <broonie@opensource.wolfsonmicro.com>
Tue, 28 Oct 2008 15:04:35 +0000 (15:04 +0000)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Thu, 30 Oct 2008 15:54:10 +0000 (15:54 +0000)
The WM9713 comes out of cold reset in low power mode so always requires
a warm reset to bring up the AC97 link after a cold reset.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
sound/soc/codecs/wm9713.c

index aba402b3c99994a95489bde9e526da23f7d4ea69..3214aa503eadd71a316f7168959b3f0dcbcd0ffb 100644 (file)
@@ -1097,6 +1097,8 @@ int wm9713_reset(struct snd_soc_codec *codec, int try_warm)
        }
 
        soc_ac97_ops.reset(codec->ac97);
+       if (soc_ac97_ops.warm_reset)
+               soc_ac97_ops.warm_reset(codec->ac97);
        if (ac97_read(codec, 0) != wm9713_reg[0])
                return -EIO;
        return 0;