summaryrefslogtreecommitdiff
path: root/sound
diff options
context:
space:
mode:
authorRavindra Lokhande <rlokhande@nvidia.com>2011-02-25 23:53:56 +0530
committerVarun Colbert <vcolbert@nvidia.com>2011-03-04 11:41:33 -0800
commit10e51e1dcfb9dd1fb531908571096fbf2788f3ff (patch)
tree26ae9f31508127cf564baabd6f0339a2edc2e377 /sound
parent44fa12845e7d2ead892a69566aafce4745de4ba6 (diff)
[tegra alsa] reset vmid and bias for wm8903
reset vimd and bias registers for wm8903 codec when codec bias level is off. fix for bug 773327 Change-Id: Iad67afef69f8c016b5f732947ad991c400cb7fd4 Reviewed-on: http://git-master/r/20934 Reviewed-by: Ravindra Lokhande <rlokhande@nvidia.com> Tested-by: Ravindra Lokhande <rlokhande@nvidia.com> Reviewed-by: Sumit Bhattacharya <sumitb@nvidia.com> Reviewed-by: Scott Peterson <speterson@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Diffstat (limited to 'sound')
-rw-r--r--sound/soc/codecs/wm8903.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/sound/soc/codecs/wm8903.c b/sound/soc/codecs/wm8903.c
index 88d342ff4101..7acd563d9128 100644
--- a/sound/soc/codecs/wm8903.c
+++ b/sound/soc/codecs/wm8903.c
@@ -988,6 +988,11 @@ static int wm8903_set_bias_level(struct snd_soc_codec *codec,
case SND_SOC_BIAS_OFF:
wm8903_run_sequence(codec, 32);
+
+ snd_soc_write(codec, WM8903_VMID_CONTROL_0, 0x0);
+
+ snd_soc_write(codec, WM8903_BIAS_CONTROL_0, 0x0);
+
reg = snd_soc_read(codec, WM8903_CLOCK_RATES_2);
reg &= ~WM8903_CLK_SYS_ENA;
snd_soc_write(codec, WM8903_CLOCK_RATES_2, reg);