diff options
author | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2010-10-21 13:17:56 -0700 |
---|---|---|
committer | Arve Hjønnevåg <arve@android.com> | 2011-11-17 17:51:27 -0800 |
commit | 3a792ecface78611fc79deac94731db4e5547679 (patch) | |
tree | 9ac0676e232cfa993ff8170eda8641a8034ac134 /sound | |
parent | 5a3403701b8c89861ea93886943dbec89e723da7 (diff) | |
download | kernel_samsung_crespo-3a792ecface78611fc79deac94731db4e5547679.zip kernel_samsung_crespo-3a792ecface78611fc79deac94731db4e5547679.tar.gz kernel_samsung_crespo-3a792ecface78611fc79deac94731db4e5547679.tar.bz2 |
ASoC: Don't bring up VMID when resuming WM8994
In normal operation the driver leaves VMID disabled when the CODEC is idle
so do this also when coming out of resume. Maintaining VMID consumes a
small amount of power so this should improve battery life, especially when
waking up to perform background syncs with network services.
This will lead to an additional 50ms delay when bringing up the first audio
stream on the device after resume but since we already take a similar hit
for all audio enables after that this should have negligable effect on user
experience.
We should consider also disabling the LDOs as they only take 5ms to bring
up but we need to measure to ensure that power consumption is actually
meaningfully reduce.d
Change-Id: I825e26e5d4916fa7babac93393b795c9ff52d119
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound')
-rwxr-xr-x | sound/soc/codecs/wm8994_samsung.c | 8 |
1 files changed, 0 insertions, 8 deletions
diff --git a/sound/soc/codecs/wm8994_samsung.c b/sound/soc/codecs/wm8994_samsung.c index e48348d..8f4c55e 100755 --- a/sound/soc/codecs/wm8994_samsung.c +++ b/sound/soc/codecs/wm8994_samsung.c @@ -1522,14 +1522,6 @@ static int wm8994_resume(struct platform_device *pdev) /* Turn on sequence by recommend Wolfson.*/ wm8994_ldo_control(wm8994->pdata, 1); wm8994->universal_clock_control(codec, CODEC_ON); - wm8994->power_state = CODEC_ON; - wm8994_write(codec, WM8994_POWER_MANAGEMENT_1, - 0x3 << WM8994_VMID_SEL_SHIFT | WM8994_BIAS_ENA); - msleep(50); /* Wait VMID up */ - wm8994_write(codec, WM8994_POWER_MANAGEMENT_1, - WM8994_VMID_SEL_NORMAL | WM8994_BIAS_ENA); - - wm8994_write(codec, WM8994_OVERSAMPLING, 0x0000); } return 0; } |