ASoC: wm8962: Replace w->codec snd_soc_dapm_to_codec(w->dapm)
[deliverable/linux.git] / sound / soc / codecs / alc5623.c
index 9d0755aa1d16929e970ef6e51792b2d39efba494..bdf8c5ac8ca460b8e07310674f90109cc6e6965a 100644 (file)
@@ -866,7 +866,6 @@ static int alc5623_suspend(struct snd_soc_codec *codec)
 {
        struct alc5623_priv *alc5623 = snd_soc_codec_get_drvdata(codec);
 
-       alc5623_set_bias_level(codec, SND_SOC_BIAS_OFF);
        regcache_cache_only(alc5623->regmap, true);
 
        return 0;
@@ -887,15 +886,6 @@ static int alc5623_resume(struct snd_soc_codec *codec)
                return ret;
        }
 
-       alc5623_set_bias_level(codec, SND_SOC_BIAS_STANDBY);
-
-       /* charge alc5623 caps */
-       if (codec->dapm.suspend_bias_level == SND_SOC_BIAS_ON) {
-               alc5623_set_bias_level(codec, SND_SOC_BIAS_STANDBY);
-               codec->dapm.bias_level = SND_SOC_BIAS_ON;
-               alc5623_set_bias_level(codec, codec->dapm.bias_level);
-       }
-
        return 0;
 }
 
@@ -906,9 +896,6 @@ static int alc5623_probe(struct snd_soc_codec *codec)
 
        alc5623_reset(codec);
 
-       /* power on device */
-       alc5623_set_bias_level(codec, SND_SOC_BIAS_STANDBY);
-
        if (alc5623->add_ctrl) {
                snd_soc_write(codec, ALC5623_ADD_CTRL_REG,
                                alc5623->add_ctrl);
@@ -964,19 +951,12 @@ static int alc5623_probe(struct snd_soc_codec *codec)
        return 0;
 }
 
-/* power down chip */
-static int alc5623_remove(struct snd_soc_codec *codec)
-{
-       alc5623_set_bias_level(codec, SND_SOC_BIAS_OFF);
-       return 0;
-}
-
 static struct snd_soc_codec_driver soc_codec_device_alc5623 = {
        .probe = alc5623_probe,
-       .remove = alc5623_remove,
        .suspend = alc5623_suspend,
        .resume = alc5623_resume,
        .set_bias_level = alc5623_set_bias_level,
+       .suspend_bias_off = true,
 };
 
 static const struct regmap_config alc5623_regmap = {
This page took 0.041798 seconds and 5 git commands to generate.