From: Mark Brown Date: Thu, 27 Sep 2012 17:35:24 +0000 (+0100) Subject: ASoC: wm_hubs: Ensure volume updates are handled during class W startup X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=eb4d5fc1f0ce89e3d5b072c594a1e213a0e05881;p=openwrt%2Fstaging%2Fblogic.git ASoC: wm_hubs: Ensure volume updates are handled during class W startup 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 Cc: stable@vger.kernel.org --- diff --git a/sound/soc/codecs/wm_hubs.c b/sound/soc/codecs/wm_hubs.c index 7a773a835b8e..867ae97ddcec 100644 --- a/sound/soc/codecs/wm_hubs.c +++ b/sound/soc/codecs/wm_hubs.c @@ -681,6 +681,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);