ASoC: tlv320dac33: Use devm_regulator_bulk_get()
authorFabio Estevam <fabio.estevam@freescale.com>
Fri, 25 Apr 2014 01:27:03 +0000 (22:27 -0300)
committerMark Brown <broonie@linaro.org>
Fri, 25 Apr 2014 11:16:03 +0000 (12:16 +0100)
Using devm_regulator_bulk_get() can make the code cleaner and smaller as we
do not need to call regulator_bulk_free() in the error and remove paths.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
sound/soc/codecs/tlv320dac33.c

index 6bfc8a17331b05c887a80199f05fa4fb38baac31..0ef856c8dfeb50f4fd58465d7342aee6d5b896f1 100644 (file)
@@ -1540,7 +1540,7 @@ static int dac33_i2c_probe(struct i2c_client *client,
        for (i = 0; i < ARRAY_SIZE(dac33->supplies); i++)
                dac33->supplies[i].supply = dac33_supply_names[i];
 
-       ret = regulator_bulk_get(&client->dev, ARRAY_SIZE(dac33->supplies),
+       ret = devm_regulator_bulk_get(&client->dev, ARRAY_SIZE(dac33->supplies),
                                 dac33->supplies);
 
        if (ret != 0) {
@@ -1551,11 +1551,9 @@ static int dac33_i2c_probe(struct i2c_client *client,
        ret = snd_soc_register_codec(&client->dev,
                        &soc_codec_dev_tlv320dac33, &dac33_dai, 1);
        if (ret < 0)
-               goto err_register;
+               goto err_get;
 
        return ret;
-err_register:
-       regulator_bulk_free(ARRAY_SIZE(dac33->supplies), dac33->supplies);
 err_get:
        if (dac33->power_gpio >= 0)
                gpio_free(dac33->power_gpio);
@@ -1573,8 +1571,6 @@ static int dac33_i2c_remove(struct i2c_client *client)
        if (dac33->power_gpio >= 0)
                gpio_free(dac33->power_gpio);
 
-       regulator_bulk_free(ARRAY_SIZE(dac33->supplies), dac33->supplies);
-
        snd_soc_unregister_codec(&client->dev);
        return 0;
 }