Commit 9fcf6ef3 authored by David Lechner's avatar David Lechner Committed by Mark Brown

staging: iio: impedance-analyzer: ad5933: Use devm_regulator_get_enable_read_voltage()

We can reduce boilerplate code by using
devm_regulator_get_enable_read_voltage().
Reviewed-by: default avatarJonathan Cameron <Jonathan.Cameron@huawei.com>
Signed-off-by: default avatarDavid Lechner <dlechner@baylibre.com>
Link: https://lore.kernel.org/r/20240429-regulator-get-enable-get-votlage-v2-6-b1f11ab766c1@baylibre.comSigned-off-by: default avatarMark Brown <broonie@kernel.org>
parent 2f4bb1fa
......@@ -84,7 +84,6 @@
struct ad5933_state {
struct i2c_client *client;
struct regulator *reg;
struct clk *mclk;
struct delayed_work work;
struct mutex lock; /* Protect sensor state */
......@@ -660,13 +659,6 @@ static void ad5933_work(struct work_struct *work)
}
}
static void ad5933_reg_disable(void *data)
{
struct ad5933_state *st = data;
regulator_disable(st->reg);
}
static int ad5933_probe(struct i2c_client *client)
{
const struct i2c_device_id *id = i2c_client_get_device_id(client);
......@@ -685,23 +677,9 @@ static int ad5933_probe(struct i2c_client *client)
mutex_init(&st->lock);
st->reg = devm_regulator_get(&client->dev, "vdd");
if (IS_ERR(st->reg))
return PTR_ERR(st->reg);
ret = regulator_enable(st->reg);
if (ret) {
dev_err(&client->dev, "Failed to enable specified VDD supply\n");
return ret;
}
ret = devm_add_action_or_reset(&client->dev, ad5933_reg_disable, st);
if (ret)
return ret;
ret = regulator_get_voltage(st->reg);
ret = devm_regulator_get_enable_read_voltage(&client->dev, "vdd");
if (ret < 0)
return ret;
return dev_err_probe(&client->dev, ret, "failed to get vdd voltage\n");
st->vref_mv = ret / 1000;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment