ASoC: Use standard register cache sync for WM8955
authorMark Brown <broonie@opensource.wolfsonmicro.com>
Thu, 29 Dec 2011 21:39:44 +0000 (21:39 +0000)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Fri, 20 Jan 2012 13:58:25 +0000 (13:58 +0000)
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
sound/soc/codecs/wm8955.c

index cc6f6692bf5e1bb189c5898d242b3e32ce7fea83..559c96b656a47ddcbb5018328b2f6da0582e46a5 100644 (file)
@@ -795,18 +795,7 @@ static int wm8955_set_bias_level(struct snd_soc_codec *codec,
                                return ret;
                        }
 
-                       /* Sync back cached values if they're
-                        * different from the hardware default.
-                        */
-                       for (i = 0; i < codec->driver->reg_cache_size; i++) {
-                               if (i == WM8955_RESET)
-                                       continue;
-
-                               if (reg_cache[i] == wm8955_reg[i])
-                                       continue;
-
-                               snd_soc_write(codec, i, reg_cache[i]);
-                       }
+                       snd_soc_cache_sync(codec);
 
                        /* Enable VREF and VMID */
                        snd_soc_update_bits(codec, WM8955_POWER_MANAGEMENT_1,