summaryrefslogtreecommitdiff
path: root/sound/soc/codecs/wm_hubs.c
diff options
context:
space:
mode:
authorMark Brown <broonie@opensource.wolfsonmicro.com>2010-01-21 11:33:20 (GMT)
committerMark Brown <broonie@opensource.wolfsonmicro.com>2010-01-21 12:05:39 (GMT)
commit821dd91ec7838e1313d783384ea9ce43510d4013 (patch)
tree020f4733c0bc55ea7e3b3262dd6685f126f2e298 /sound/soc/codecs/wm_hubs.c
parenta96ca3387382498ec8b501db5acef3ed9eb1bd36 (diff)
downloadlinux-fsl-qoriq-821dd91ec7838e1313d783384ea9ce43510d4013.tar.xz
ASoC: Use BIAS_OFF when idle for wm_hubs devices
This provides a small power saving when audio is inactive. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Diffstat (limited to 'sound/soc/codecs/wm_hubs.c')
-rw-r--r--sound/soc/codecs/wm_hubs.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/sound/soc/codecs/wm_hubs.c b/sound/soc/codecs/wm_hubs.c
index d73c305..a67319d 100644
--- a/sound/soc/codecs/wm_hubs.c
+++ b/sound/soc/codecs/wm_hubs.c
@@ -753,6 +753,12 @@ int wm_hubs_handle_analogue_pdata(struct snd_soc_codec *codec,
WM8993_LINEOUT2_MODE,
WM8993_LINEOUT2_MODE);
+ /* If the line outputs are differential then we aren't presenting
+ * VMID as an output and can disable it.
+ */
+ if (lineout1_diff && lineout2_diff)
+ codec->idle_bias_off = 1;
+
if (lineout1fb)
snd_soc_update_bits(codec, WM8993_ADDITIONAL_CONTROL,
WM8993_LINEOUT1_FB, WM8993_LINEOUT1_FB);