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

Amelie DELAUNAY amelie.delaunay at st.com
Fri Nov 13 07:28:38 EST 2020


On 11/13/20 11:09 AM, Lee Jones wrote:
> 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.
> 

Thanks for the review. I agree. Fixed in v2.

Regards,
Amelie



More information about the linux-arm-kernel mailing list