[alsa-devel] [PATCH 5/7] ASoC: Use standard cache sync for WM8978

Mark Brown broonie at opensource.wolfsonmicro.com
Thu Dec 29 12:49:13 CET 2011


Saves a bit of code and supports further refactoring.

Signed-off-by: Mark Brown <broonie at opensource.wolfsonmicro.com>
---
 sound/soc/codecs/wm8978.c |    9 +--------
 1 files changed, 1 insertions(+), 8 deletions(-)

diff --git a/sound/soc/codecs/wm8978.c b/sound/soc/codecs/wm8978.c
index 051f5d0..0ab339c 100644
--- a/sound/soc/codecs/wm8978.c
+++ b/sound/soc/codecs/wm8978.c
@@ -891,16 +891,9 @@ static int wm8978_suspend(struct snd_soc_codec *codec)
 static int wm8978_resume(struct snd_soc_codec *codec)
 {
 	struct wm8978_priv *wm8978 = snd_soc_codec_get_drvdata(codec);
-	int i;
-	u16 *cache = codec->reg_cache;
 
 	/* Sync reg_cache with the hardware */
-	for (i = 0; i < ARRAY_SIZE(wm8978_reg); i++) {
-		if (i == WM8978_RESET)
-			continue;
-		if (cache[i] != wm8978_reg[i])
-			snd_soc_write(codec, i, cache[i]);
-	}
+	snd_soc_cache_sync(codec);
 
 	wm8978_set_bias_level(codec, SND_SOC_BIAS_STANDBY);
 
-- 
1.7.7.3



More information about the Alsa-devel mailing list