]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - sound/soc/codecs/wm8804.c
ASoC: wm8804: Use devm_regulator_bulk_get()
[karo-tx-linux.git] / sound / soc / codecs / wm8804.c
index ee76f0fb429967c4f563450a111d3ce651540fd0..b4c8d6086737944bee7d214620668aba8728ab8c 100644 (file)
@@ -535,7 +535,6 @@ static int wm8804_remove(struct snd_soc_codec *codec)
        for (i = 0; i < ARRAY_SIZE(wm8804->supplies); ++i)
                regulator_unregister_notifier(wm8804->supplies[i].consumer,
                                              &wm8804->disable_nb[i]);
-       regulator_bulk_free(ARRAY_SIZE(wm8804->supplies), wm8804->supplies);
        return 0;
 }
 
@@ -549,7 +548,7 @@ static int wm8804_probe(struct snd_soc_codec *codec)
        for (i = 0; i < ARRAY_SIZE(wm8804->supplies); i++)
                wm8804->supplies[i].supply = wm8804_supply_names[i];
 
-       ret = regulator_bulk_get(codec->dev, ARRAY_SIZE(wm8804->supplies),
+       ret = devm_regulator_bulk_get(codec->dev, ARRAY_SIZE(wm8804->supplies),
                                 wm8804->supplies);
        if (ret) {
                dev_err(codec->dev, "Failed to request supplies: %d\n", ret);
@@ -574,7 +573,7 @@ static int wm8804_probe(struct snd_soc_codec *codec)
                                    wm8804->supplies);
        if (ret) {
                dev_err(codec->dev, "Failed to enable supplies: %d\n", ret);
-               goto err_reg_get;
+               return ret;
        }
 
        id1 = snd_soc_read(codec, WM8804_RST_DEVID1);
@@ -619,8 +618,6 @@ static int wm8804_probe(struct snd_soc_codec *codec)
 
 err_reg_enable:
        regulator_bulk_disable(ARRAY_SIZE(wm8804->supplies), wm8804->supplies);
-err_reg_get:
-       regulator_bulk_free(ARRAY_SIZE(wm8804->supplies), wm8804->supplies);
        return ret;
 }