diff mbox series

[v2,1/8] iio: dac: ad8801: Make use of the helper function dev_err_probe()

Message ID 20210928013902.1341-1-caihuoqing@baidu.com (mailing list archive)
State New, archived
Headers show
Series [v2,1/8] iio: dac: ad8801: Make use of the helper function dev_err_probe() | expand

Commit Message

Cai,Huoqing Sept. 28, 2021, 1:38 a.m. UTC
When possible use dev_err_probe help to properly deal with the
PROBE_DEFER error, the benefit is that DEFER issue will be logged
in the devices_deferred debugfs file.
Using dev_err_probe() can reduce code size, and the error value
gets printed.

Signed-off-by: Cai Huoqing <caihuoqing@baidu.com>
---
 drivers/iio/dac/ad8801.c | 15 +++++++--------
 1 file changed, 7 insertions(+), 8 deletions(-)

Comments

Jonathan Cameron Oct. 7, 2021, 5:18 p.m. UTC | #1
On Tue, 28 Sep 2021 09:38:54 +0800
Cai Huoqing <caihuoqing@baidu.com> wrote:

> When possible use dev_err_probe help to properly deal with the
> PROBE_DEFER error, the benefit is that DEFER issue will be logged
> in the devices_deferred debugfs file.
> Using dev_err_probe() can reduce code size, and the error value
> gets printed.
> 
> Signed-off-by: Cai Huoqing <caihuoqing@baidu.com>

Hi Cai,

I made a modification to this patch whilst applying as described below.
Please take care to not mix different types of change like you did here
in one patch.

With that change applied to the togreg branch of iio.git and pushed out as testing
for 0-day to work it's magic and see if we missed anything,

Thanks,

Jonathan

> ---
>  drivers/iio/dac/ad8801.c | 15 +++++++--------
>  1 file changed, 7 insertions(+), 8 deletions(-)
> 
> diff --git a/drivers/iio/dac/ad8801.c b/drivers/iio/dac/ad8801.c
> index 6354b7c8f052..8acb9fee273c 100644
> --- a/drivers/iio/dac/ad8801.c
> +++ b/drivers/iio/dac/ad8801.c
> @@ -123,10 +123,9 @@ static int ad8801_probe(struct spi_device *spi)
>  	id = spi_get_device_id(spi);
>  
>  	state->vrefh_reg = devm_regulator_get(&spi->dev, "vrefh");
> -	if (IS_ERR(state->vrefh_reg)) {
> -		dev_err(&spi->dev, "Vrefh regulator not specified\n");
> -		return PTR_ERR(state->vrefh_reg);
> -	}
> +	if (IS_ERR(state->vrefh_reg))
> +		return dev_err_probe(&spi->dev, PTR_ERR(state->vrefh_reg),
> +				     "Vrefh regulator not specified\n");
>  
>  	ret = regulator_enable(state->vrefh_reg);
>  	if (ret) {
> @@ -146,15 +145,15 @@ static int ad8801_probe(struct spi_device *spi)
>  	if (id->driver_data == ID_AD8803) {
>  		state->vrefl_reg = devm_regulator_get(&spi->dev, "vrefl");
>  		if (IS_ERR(state->vrefl_reg)) {
> -			dev_err(&spi->dev, "Vrefl regulator not specified\n");
> -			ret = PTR_ERR(state->vrefl_reg);
> +			ret = dev_err_probe(&spi->dev, PTR_ERR(state->vrefl_reg),
> +					    "Vrefl regulator not specified\n");
>  			goto error_disable_vrefh_reg;
>  		}
>  
>  		ret = regulator_enable(state->vrefl_reg);
>  		if (ret) {
> -			dev_err(&spi->dev, "Failed to enable vrefl regulator: %d\n",
> -					ret);
> +			dev_err(&spi->dev,
> +				"Failed to enable vrefl regulator: %d\n", ret);
This last change is unconnected to the rest of the patch. I've dropped it whilst
applying.

>  			goto error_disable_vrefh_reg;
>  		}
>
diff mbox series

Patch

diff --git a/drivers/iio/dac/ad8801.c b/drivers/iio/dac/ad8801.c
index 6354b7c8f052..8acb9fee273c 100644
--- a/drivers/iio/dac/ad8801.c
+++ b/drivers/iio/dac/ad8801.c
@@ -123,10 +123,9 @@  static int ad8801_probe(struct spi_device *spi)
 	id = spi_get_device_id(spi);
 
 	state->vrefh_reg = devm_regulator_get(&spi->dev, "vrefh");
-	if (IS_ERR(state->vrefh_reg)) {
-		dev_err(&spi->dev, "Vrefh regulator not specified\n");
-		return PTR_ERR(state->vrefh_reg);
-	}
+	if (IS_ERR(state->vrefh_reg))
+		return dev_err_probe(&spi->dev, PTR_ERR(state->vrefh_reg),
+				     "Vrefh regulator not specified\n");
 
 	ret = regulator_enable(state->vrefh_reg);
 	if (ret) {
@@ -146,15 +145,15 @@  static int ad8801_probe(struct spi_device *spi)
 	if (id->driver_data == ID_AD8803) {
 		state->vrefl_reg = devm_regulator_get(&spi->dev, "vrefl");
 		if (IS_ERR(state->vrefl_reg)) {
-			dev_err(&spi->dev, "Vrefl regulator not specified\n");
-			ret = PTR_ERR(state->vrefl_reg);
+			ret = dev_err_probe(&spi->dev, PTR_ERR(state->vrefl_reg),
+					    "Vrefl regulator not specified\n");
 			goto error_disable_vrefh_reg;
 		}
 
 		ret = regulator_enable(state->vrefl_reg);
 		if (ret) {
-			dev_err(&spi->dev, "Failed to enable vrefl regulator: %d\n",
-					ret);
+			dev_err(&spi->dev,
+				"Failed to enable vrefl regulator: %d\n", ret);
 			goto error_disable_vrefh_reg;
 		}