Re: [PATCH v3] extcon: palmas: hide error messages if gpio returns -EPROBE_DEFER

Chanwoo Choi
2020-02-18T11:05:13Z

On 2/17/20 10:58 PM, H. Nikolaus Schaller wrote:
>
>> Am 17.02.2020 um 14:38 schrieb H. Nikolaus Schaller <hns@goldelico.com>:
>>
>> If the gpios are probed after this driver (e.g. if they
>> come from an i2c expander) there is no need to print an
>> error message.
>>
>> Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
>> ---
>> drivers/extcon/extcon-palmas.c | 8 ++++++--
>> 1 file changed, 6 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/extcon/extcon-palmas.c b/drivers/extcon/extcon-palmas.c
>> index edc5016f46f1..cea58d0cb457 100644
>> --- a/drivers/extcon/extcon-palmas.c
>> +++ b/drivers/extcon/extcon-palmas.c
>> @@ -205,14 +205,18 @@ static int palmas_usb_probe(struct platform_device *pdev)
>>
>> palmas_usb->id_gpiod = devm_gpiod_get_optional(&pdev->dev, "id",
>> GPIOD_IN);
>> - if (IS_ERR(palmas_usb->id_gpiod)) {
>> + if (PTR_ERR(palmas_usb->id_gpiod) == -EPROBE_DEFER) {
>> + return -EPROBE_DEFER;
>> + } else if (IS_ERR(palmas_usb->id_gpiod)) {
>
> Hm.
>
> While looking again at that: why do we need the "{" and "} else "?
>
> It should be sufficient to have
>
>> palmas_usb->id_gpiod = devm_gpiod_get_optional(&pdev->dev, "id",
>> GPIOD_IN);
>> + if (PTR_ERR(palmas_usb->id_gpiod) == -EPROBE_DEFER)
>> + return -EPROBE_DEFER;
>> if (IS_ERR(palmas_usb->id_gpiod)) {
>
> What do you think is better coding style here?

I think that my suggestion is better because 'if' and 'else if'
check the error state of same 'palmas_usb->id_gpiod' variable.

If 'if' and 'else if' checks the different variable,
your suggestion is better.

--
Best Regards,
Chanwoo Choi
Samsung Electronics