aboutsummaryrefslogtreecommitdiffstats
path: root/sound
diff options
context:
space:
mode:
authorGuennadi Liakhovetski <g.liakhovetski@gmx.de>2010-01-28 10:28:55 -0500
committerMark Brown <broonie@opensource.wolfsonmicro.com>2010-01-29 09:31:03 -0500
commit640b796f2ca88113bf2fefd380bc807092ce6fa1 (patch)
tree5de515ae125378e311a27163aa508db5fc88e863 /sound
parent9f5b64b767203131a7a3a280859e70d4413c9672 (diff)
ASoC: remove bogus SLEEP mode from wm8978 driver
Tests showed, that bit 6 of the WM8978_POWER_MANAGEMENT_2 register of wm8978 affects codec clocks. Being useless for suspend / resume, it cannot be used in bias-level control either. Remove this bit handling. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound')
-rw-r--r--sound/soc/codecs/wm8978.c5
1 files changed, 0 insertions, 5 deletions
diff --git a/sound/soc/codecs/wm8978.c b/sound/soc/codecs/wm8978.c
index d9d4e9dd1adb..8dcebaa8604a 100644
--- a/sound/soc/codecs/wm8978.c
+++ b/sound/soc/codecs/wm8978.c
@@ -873,8 +873,6 @@ static int wm8978_suspend(struct platform_device *pdev, pm_message_t state)
873 wm8978_set_bias_level(codec, SND_SOC_BIAS_OFF); 873 wm8978_set_bias_level(codec, SND_SOC_BIAS_OFF);
874 /* Also switch PLL off */ 874 /* Also switch PLL off */
875 snd_soc_write(codec, WM8978_POWER_MANAGEMENT_1, 0); 875 snd_soc_write(codec, WM8978_POWER_MANAGEMENT_1, 0);
876 /* Put to sleep */
877 snd_soc_write(codec, WM8978_POWER_MANAGEMENT_2, 0x40);
878 876
879 return 0; 877 return 0;
880} 878}
@@ -887,9 +885,6 @@ static int wm8978_resume(struct platform_device *pdev)
887 int i; 885 int i;
888 u16 *cache = codec->reg_cache; 886 u16 *cache = codec->reg_cache;
889 887
890 /* Wake up the codec */
891 snd_soc_write(codec, WM8978_POWER_MANAGEMENT_2, 0);
892
893 /* Sync reg_cache with the hardware */ 888 /* Sync reg_cache with the hardware */
894 for (i = 0; i < ARRAY_SIZE(wm8978_reg); i++) { 889 for (i = 0; i < ARRAY_SIZE(wm8978_reg); i++) {
895 if (i == WM8978_RESET) 890 if (i == WM8978_RESET)