ASoC: wm8985: Use standard cache sync implementation
authorMark Brown <broonie@opensource.wolfsonmicro.com>
Sat, 21 Jan 2012 15:36:30 +0000 (15:36 +0000)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Sat, 21 Jan 2012 21:15:41 +0000 (21:15 +0000)
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
sound/soc/codecs/wm8985.c

index ee3aba3..297119f 100644 (file)
@@ -834,25 +834,6 @@ static int wm8985_set_sysclk(struct snd_soc_dai *dai,
        return 0;
 }
 
-static void wm8985_sync_cache(struct snd_soc_codec *codec)
-{
-       short i;
-       u16 *cache;
-
-       if (!codec->cache_sync)
-               return;
-       codec->cache_only = 0;
-       /* restore cache */
-       cache = codec->reg_cache;
-       for (i = 0; i < codec->driver->reg_cache_size; i++) {
-               if (i == WM8985_SOFTWARE_RESET
-                               || cache[i] == wm8985_reg_defs[i])
-                       continue;
-               snd_soc_write(codec, i, cache[i]);
-       }
-       codec->cache_sync = 0;
-}
-
 static int wm8985_set_bias_level(struct snd_soc_codec *codec,
                                 enum snd_soc_bias_level level)
 {
@@ -879,7 +860,7 @@ static int wm8985_set_bias_level(struct snd_soc_codec *codec,
                                return ret;
                        }
 
-                       wm8985_sync_cache(codec);
+                       snd_soc_cache_sync(codec);
 
                        /* enable anti-pop features */
                        snd_soc_update_bits(codec, WM8985_OUT4_TO_ADC,