ASoC: wm8985: Use standard cache sync implementation

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
This commit is contained in:
Mark Brown 2012-01-21 15:36:30 +00:00
parent eb8f7693df
commit 8b71d441f7

View 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,