[PATCH 1/1] mfd: stmfx: fix dev_err_probe call in stmfx_chip_init

Lee Jones lee.jones at linaro.org
Fri Nov 13 05:09:19 EST 2020


On Tue, 10 Nov 2020, Amelie Delaunay wrote:

> ret may be 0 so, dev_err_probe should be called only when ret is an error
> code.
> 
> Fixes: 41c9c06c491a ("mfd: stmfx: Simplify with dev_err_probe()")
> Signed-off-by: Amelie Delaunay <amelie.delaunay at st.com>
> ---
>  drivers/mfd/stmfx.c | 5 ++---
>  1 file changed, 2 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/mfd/stmfx.c b/drivers/mfd/stmfx.c
> index 5e680bfdf5c9..360fb4646688 100644
> --- a/drivers/mfd/stmfx.c
> +++ b/drivers/mfd/stmfx.c
> @@ -329,12 +329,11 @@ static int stmfx_chip_init(struct i2c_client *client)
>  
>  	stmfx->vdd = devm_regulator_get_optional(&client->dev, "vdd");
>  	ret = PTR_ERR_OR_ZERO(stmfx->vdd);
> -	if (ret == -ENODEV) {
> +	if (ret == -ENODEV)
>  		stmfx->vdd = NULL;
> -	} else {
> +	else if (ret)
>  		return dev_err_probe(&client->dev, ret,
>  				     "Failed to get VDD regulator\n");
> -	}

Probably nicer to keep all of the error handing in one area, like:

	if (ret) {
		if (ret == -ENODEV)
			stmfx->vdd = NULL;
		else
			return dev_err_probe(&client->dev, ret,
					     "Failed to get VDD regulator\n");
	}

I'll let you make the call though.

-- 
Lee Jones [李琼斯]
Senior Technical Lead - Developer Services
Linaro.org │ Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog



More information about the linux-arm-kernel mailing list