[PATCH 8/9] i2c: imx-lpi2c: Use dev_err_probe in probe function

Liao, Chang liaochang1 at huawei.com
Sun Jul 30 19:16:38 PDT 2023



在 2023/7/28 13:55, Uwe Kleine-König 写道:
> Hello,
> 
> On Fri, Jul 28, 2023 at 09:31:47AM +0800, Liao Chang wrote:
>> Use the dev_err_probe function instead of dev_err in the probe function
>> so that the printed messge includes the return value and also handles
>> -EPROBE_DEFER nicely.
>>
>> Signed-off-by: Liao Chang <liaochang1 at huawei.com>
>> ---
>>  drivers/i2c/busses/i2c-imx-lpi2c.c | 6 ++----
>>  1 file changed, 2 insertions(+), 4 deletions(-)
>>
>> diff --git a/drivers/i2c/busses/i2c-imx-lpi2c.c b/drivers/i2c/busses/i2c-imx-lpi2c.c
>> index c3287c887c6f..9021b8064ae4 100644
>> --- a/drivers/i2c/busses/i2c-imx-lpi2c.c
>> +++ b/drivers/i2c/busses/i2c-imx-lpi2c.c
>> @@ -569,10 +569,8 @@ static int lpi2c_imx_probe(struct platform_device *pdev)
>>  		sizeof(lpi2c_imx->adapter.name));
>>  
>>  	ret = devm_clk_bulk_get_all(&pdev->dev, &lpi2c_imx->clks);
>> -	if (ret < 0) {
>> -		dev_err(&pdev->dev, "can't get I2C peripheral clock, ret=%d\n", ret);
>> -		return ret;
>> -	}
>> +	if (ret < 0)
>> +		return dev_err_probe(&pdev->dev, ret, "can't get I2C peripheral clock\n");
> 
> The change looks good, however I wonder why you didn't convert the other
> dev_err() called by lpi2c_imx_probe() in the same way.

Sorry, I am in hurry and don't clean it up as much as.

Actually, I am not sure if I should convert all dev_err calls to dev_err_probe, or just
replace the ones that print the 'return value'. I know that dev_err_probe is better
suited for printing return values, but I am nore sure if it's worth the effort to convert
all of the calls, for example, the second dev_err in lpi2c_imx_probe():

ret = devm_request_irq(&pdev->dev, irq, lpi2c_imx_isr, 0, pdev->name, lpi2c_imx);
if (ret)
    dev_err(&pdev->dev, "can't claim rqi %d\n", irq);
    return ret;
}

Thanks.

> 
> Best regards
> Uwe
> 

-- 
BR
Liao, Chang



More information about the linux-arm-kernel mailing list