diff options
author | Guennadi Liakhovetski <g.liakhovetski@gmx.de> | 2010-01-28 10:28:55 -0500 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2010-01-29 09:31:03 -0500 |
commit | 640b796f2ca88113bf2fefd380bc807092ce6fa1 (patch) | |
tree | 5de515ae125378e311a27163aa508db5fc88e863 /sound | |
parent | 9f5b64b767203131a7a3a280859e70d4413c9672 (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.c | 5 |
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) |