]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
ASoC: wm_hubs: Ensure volume updates are handled during class W startup
authorMark Brown <broonie@opensource.wolfsonmicro.com>
Thu, 27 Sep 2012 17:35:24 +0000 (18:35 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 12 Oct 2012 20:50:25 +0000 (05:50 +0900)
commit eb4d5fc1f0ce89e3d5b072c594a1e213a0e05881 upstream.

In some circumstances we may need to flush volume updates to the device
after switching to class W mode. Do this unconditionally to ensure that
these situations are handled.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
sound/soc/codecs/wm_hubs.c

index 61baa48823cba20a7b8696824f333cb82bad2a1e..57b27efb54946d42b6b72750b9710803451c273d 100644 (file)
@@ -634,6 +634,11 @@ void wm_hubs_update_class_w(struct snd_soc_codec *codec)
 
        snd_soc_update_bits(codec, WM8993_CLASS_W_0,
                            WM8993_CP_DYN_V | WM8993_CP_DYN_FREQ, enable);
+
+       snd_soc_write(codec, WM8993_LEFT_OUTPUT_VOLUME,
+                     snd_soc_read(codec, WM8993_LEFT_OUTPUT_VOLUME));
+       snd_soc_write(codec, WM8993_RIGHT_OUTPUT_VOLUME,
+                     snd_soc_read(codec, WM8993_RIGHT_OUTPUT_VOLUME));
 }
 EXPORT_SYMBOL_GPL(wm_hubs_update_class_w);