diff mbox series

[v2] staging: iio: ad9834: Use devm_regulator_get_enable()

Message ID 20250306000459.1554007-1-danascape@gmail.com (mailing list archive)
State Accepted
Headers show
Series [v2] staging: iio: ad9834: Use devm_regulator_get_enable() | expand

Commit Message

Saalim Quadri March 6, 2025, 12:04 a.m. UTC
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>
---
V1 -> V2: Update commit description and return the correct error content

 drivers/staging/iio/frequency/ad9834.c | 22 ++--------------------
 1 file changed, 2 insertions(+), 20 deletions(-)

Comments

Jonathan Cameron March 8, 2025, 2:47 p.m. UTC | #1
On Thu,  6 Mar 2025 05:34:59 +0530
Saalim Quadri <danascape@gmail.com> wrote:

> 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>
rewrapped description and applied.

Thanks,

Jonathan

> ---
> V1 -> V2: Update commit description and return the correct error content
> 
>  drivers/staging/iio/frequency/ad9834.c | 22 ++--------------------
>  1 file 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) {
diff mbox series

Patch

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) {