Saves a bit of code and supports further refactoring.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
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);