|
@@ -946,7 +946,6 @@ static int wm8985_probe(struct snd_soc_codec *codec)
|
|
|
size_t i;
|
|
|
struct wm8985_priv *wm8985;
|
|
|
int ret;
|
|
|
- u16 *cache;
|
|
|
|
|
|
wm8985 = snd_soc_codec_get_drvdata(codec);
|
|
|
|
|
@@ -979,13 +978,13 @@ static int wm8985_probe(struct snd_soc_codec *codec)
|
|
|
goto err_reg_enable;
|
|
|
}
|
|
|
|
|
|
- cache = codec->reg_cache;
|
|
|
/* latch volume update bits */
|
|
|
for (i = 0; i < ARRAY_SIZE(volume_update_regs); ++i)
|
|
|
- cache[volume_update_regs[i]] |= 0x100;
|
|
|
+ snd_soc_update_bits(codec, volume_update_regs[i],
|
|
|
+ 0x100, 0x100);
|
|
|
/* enable BIASCUT */
|
|
|
- cache[WM8985_BIAS_CTRL] |= WM8985_BIASCUT;
|
|
|
- codec->cache_sync = 1;
|
|
|
+ snd_soc_update_bits(codec, WM8985_BIAS_CTRL, WM8985_BIASCUT,
|
|
|
+ WM8985_BIASCUT);
|
|
|
|
|
|
wm8985_set_bias_level(codec, SND_SOC_BIAS_STANDBY);
|
|
|
return 0;
|