blob: f6fc1bd0f8223b90e29fb3ae052124eb0d4f0b4b [file] [log] [blame]
From 2af8de8c39cf58e5a5e40a9d5d71332da98e6ba7 Mon Sep 17 00:00:00 2001
From: Mark Brown <broonie@opensource.wolfsonmicro.com>
Date: Tue, 1 Nov 2011 13:53:37 +0000
Subject: ASoC: Ensure the WM8962 oscillator and PLLs start up disabled
From: Mark Brown <broonie@opensource.wolfsonmicro.com>
commit 2af8de8c39cf58e5a5e40a9d5d71332da98e6ba7 upstream.
Since there is no current software control for these they would otherwise
be left enabled, consuming power.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
sound/soc/codecs/wm8962.c | 5 +++++
1 file changed, 5 insertions(+)
--- a/sound/soc/codecs/wm8962.c
+++ b/sound/soc/codecs/wm8962.c
@@ -3854,6 +3854,11 @@ static int wm8962_probe(struct snd_soc_c
snd_soc_update_bits(codec, WM8962_CLOCKING2,
WM8962_CLKREG_OVD, WM8962_CLKREG_OVD);
+ /* Ensure that the oscillator and PLLs are disabled */
+ snd_soc_update_bits(codec, WM8962_PLL2,
+ WM8962_OSC_ENA | WM8962_PLL2_ENA | WM8962_PLL3_ENA,
+ 0);
+
regulator_bulk_disable(ARRAY_SIZE(wm8962->supplies), wm8962->supplies);
if (pdata) {