aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorSaalim Quadri <danascape@gmail.com>2025-03-06 05:34:59 +0530
committerJonathan Cameron <Jonathan.Cameron@huawei.com>2025-03-11 19:09:17 +0000
commitcc26591e7942f1beb04f3fa6309cb6ee3de1e1b1 (patch)
tree9074b6dae2aee497d9076bf552f2f24441893f4f
parentstaging: iio: ad9832: Use devm_regulator_get_enable() (diff)
downloadwireguard-linux-cc26591e7942f1beb04f3fa6309cb6ee3de1e1b1.tar.xz
wireguard-linux-cc26591e7942f1beb04f3fa6309cb6ee3de1e1b1.zip
staging: iio: ad9834: Use devm_regulator_get_enable()
The regulators are only enabled at probe(), hence replace the boilerplate code by making use of devm_regulator_get_enable() helper. Signed-off-by: Saalim Quadri <danascape@gmail.com> Link: https://patch.msgid.link/20250306000459.1554007-1-danascape@gmail.com Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-rw-r--r--drivers/staging/iio/frequency/ad9834.c22
1 files changed, 2 insertions, 20 deletions
diff --git a/drivers/staging/iio/frequency/ad9834.c b/drivers/staging/iio/frequency/ad9834.c
index 6e99e008c5f4..50413da2aa65 100644
--- a/drivers/staging/iio/frequency/ad9834.c
+++ b/drivers/staging/iio/frequency/ad9834.c
@@ -387,33 +387,15 @@ static const struct iio_info ad9833_info = {
.attrs = &ad9833_attribute_group,
};
-static void ad9834_disable_reg(void *data)
-{
- struct regulator *reg = data;
-
- regulator_disable(reg);
-}
-
static int ad9834_probe(struct spi_device *spi)
{
struct ad9834_state *st;
struct iio_dev *indio_dev;
- struct regulator *reg;
int ret;
- reg = devm_regulator_get(&spi->dev, "avdd");
- if (IS_ERR(reg))
- return PTR_ERR(reg);
-
- ret = regulator_enable(reg);
- if (ret) {
- dev_err(&spi->dev, "Failed to enable specified AVDD supply\n");
- return ret;
- }
-
- ret = devm_add_action_or_reset(&spi->dev, ad9834_disable_reg, reg);
+ ret = devm_regulator_get_enable(&spi->dev, "avdd");
if (ret)
- return ret;
+ return dev_err_probe(&spi->dev, ret, "Failed to enable specified AVDD supply\n");
indio_dev = devm_iio_device_alloc(&spi->dev, sizeof(*st));
if (!indio_dev) {