diff mbox series

[-next] misc: microchip: pci1xxxx: fix return value in pci1xxxx_otp_eeprom_probe()

Message ID 20230808081024.2339862-1-yangyingliang@huawei.com
State New
Headers show
Series [-next] misc: microchip: pci1xxxx: fix return value in pci1xxxx_otp_eeprom_probe() | expand

Commit Message

Yang Yingliang Aug. 8, 2023, 8:10 a.m. UTC
devm_nvmem_register() never returns NULL pointer, it will return
ERR_PTR() when it fails, so replace the check with IS_ERR() and
use PTR_ERR() as return code.

Fixes: 9ab5465349c0 ("misc: microchip: pci1xxxx: Add support to read and write into PCI1XXXX EEPROM via NVMEM sysfs")
Fixes: 0969001569e4 ("misc: microchip: pci1xxxx: Add support to read and write into PCI1XXXX OTP via NVMEM sysfs")
Signed-off-by: Yang Yingliang <yangyingliang@huawei.com>
---
 drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_otpe2p.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

Comments

Kumaravel Thiagarajan Aug. 8, 2023, 11:27 a.m. UTC | #1
> -----Original Message-----
> From: Yang Yingliang <yangyingliang@huawei.com>
> Sent: Tuesday, August 8, 2023 1:40 PM
> To: linux-gpio@vger.kernel.org
> 
> devm_nvmem_register() never returns NULL pointer, it will return
> ERR_PTR() when it fails, so replace the check with IS_ERR() and use PTR_ERR()
> as return code.
Is it even better to use PTR_ERR_OR_ZERO like below?
priv->nvmem_eeprom = devm_nvmem_register(&aux_dev->dev,
                                                         &priv->nvmem_config_eeprom);
return PTR_ERR_OR_ZERO(priv->nvmem_eeprom);

> Fixes: 9ab5465349c0 ("misc: microchip: pci1xxxx: Add support to read and
> write into PCI1XXXX EEPROM via NVMEM sysfs")
> Fixes: 0969001569e4 ("misc: microchip: pci1xxxx: Add support to read and
> write into PCI1XXXX OTP via NVMEM sysfs")
> Signed-off-by: Yang Yingliang <yangyingliang@huawei.com>
> ---
>  drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_otpe2p.c | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_otpe2p.c
> b/drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_otpe2p.c
> index 3d3d1578119a..16695cb5e69c 100644
> --- a/drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_otpe2p.c
> +++ b/drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_otpe2p.c
> @@ -379,8 +379,8 @@ static int pci1xxxx_otp_eeprom_probe(struct
> auxiliary_device *aux_dev,
> 
>                 priv->nvmem_eeprom = devm_nvmem_register(&aux_dev->dev,
>                                                          &priv->nvmem_config_eeprom);
> -               if (!priv->nvmem_eeprom)
> -                       return -ENOMEM;
> +               if (IS_ERR(priv->nvmem_eeprom))
> +                       return PTR_ERR(priv->nvmem_eeprom);
>         }
> 
>         release_sys_lock(priv);
> @@ -398,8 +398,8 @@ static int pci1xxxx_otp_eeprom_probe(struct
> auxiliary_device *aux_dev,
> 
>         priv->nvmem_otp = devm_nvmem_register(&aux_dev->dev,
>                                               &priv->nvmem_config_otp);
> -       if (!priv->nvmem_otp)
> -               return -ENOMEM;
> +       if (IS_ERR(priv->nvmem_otp))
> +               return PTR_ERR(priv->nvmem_otp);
> 
>         return ret;
>  }
> --
> 2.25.1

Thank You.

Regards,
Kumar
Yang Yingliang Aug. 8, 2023, 12:12 p.m. UTC | #2
Hi,

On 2023/8/8 19:27, Kumaravel.Thiagarajan@microchip.com wrote:
>> -----Original Message-----
>> From: Yang Yingliang <yangyingliang@huawei.com>
>> Sent: Tuesday, August 8, 2023 1:40 PM
>> To: linux-gpio@vger.kernel.org
>>
>> devm_nvmem_register() never returns NULL pointer, it will return
>> ERR_PTR() when it fails, so replace the check with IS_ERR() and use PTR_ERR()
>> as return code.
> Is it even better to use PTR_ERR_OR_ZERO like below?
> priv->nvmem_eeprom = devm_nvmem_register(&aux_dev->dev,
>                                                           &priv->nvmem_config_eeprom);
> return PTR_ERR_OR_ZERO(priv->nvmem_eeprom);
It can not return directly here, there is another code after this 
calling in the probe function.
But the check after 'priv->nvmem_otp = devm_nvmem_register()' is at end 
of the probe function.
It can be simplify like this way. I will send a v2.

Thanks,
Yang
>
>> Fixes: 9ab5465349c0 ("misc: microchip: pci1xxxx: Add support to read and
>> write into PCI1XXXX EEPROM via NVMEM sysfs")
>> Fixes: 0969001569e4 ("misc: microchip: pci1xxxx: Add support to read and
>> write into PCI1XXXX OTP via NVMEM sysfs")
>> Signed-off-by: Yang Yingliang <yangyingliang@huawei.com>
>> ---
>>   drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_otpe2p.c | 8 ++++----
>>   1 file changed, 4 insertions(+), 4 deletions(-)
>>
>> diff --git a/drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_otpe2p.c
>> b/drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_otpe2p.c
>> index 3d3d1578119a..16695cb5e69c 100644
>> --- a/drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_otpe2p.c
>> +++ b/drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_otpe2p.c
>> @@ -379,8 +379,8 @@ static int pci1xxxx_otp_eeprom_probe(struct
>> auxiliary_device *aux_dev,
>>
>>                  priv->nvmem_eeprom = devm_nvmem_register(&aux_dev->dev,
>>                                                           &priv->nvmem_config_eeprom);
>> -               if (!priv->nvmem_eeprom)
>> -                       return -ENOMEM;
>> +               if (IS_ERR(priv->nvmem_eeprom))
>> +                       return PTR_ERR(priv->nvmem_eeprom);
>>          }
>>
>>          release_sys_lock(priv);
>> @@ -398,8 +398,8 @@ static int pci1xxxx_otp_eeprom_probe(struct
>> auxiliary_device *aux_dev,
>>
>>          priv->nvmem_otp = devm_nvmem_register(&aux_dev->dev,
>>                                                &priv->nvmem_config_otp);
>> -       if (!priv->nvmem_otp)
>> -               return -ENOMEM;
>> +       if (IS_ERR(priv->nvmem_otp))
>> +               return PTR_ERR(priv->nvmem_otp);
>>
>>          return ret;
>>   }
>> --
>> 2.25.1
> Thank You.
>
> Regards,
> Kumar
>
> .
diff mbox series

Patch

diff --git a/drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_otpe2p.c b/drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_otpe2p.c
index 3d3d1578119a..16695cb5e69c 100644
--- a/drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_otpe2p.c
+++ b/drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_otpe2p.c
@@ -379,8 +379,8 @@  static int pci1xxxx_otp_eeprom_probe(struct auxiliary_device *aux_dev,
 
 		priv->nvmem_eeprom = devm_nvmem_register(&aux_dev->dev,
 							 &priv->nvmem_config_eeprom);
-		if (!priv->nvmem_eeprom)
-			return -ENOMEM;
+		if (IS_ERR(priv->nvmem_eeprom))
+			return PTR_ERR(priv->nvmem_eeprom);
 	}
 
 	release_sys_lock(priv);
@@ -398,8 +398,8 @@  static int pci1xxxx_otp_eeprom_probe(struct auxiliary_device *aux_dev,
 
 	priv->nvmem_otp = devm_nvmem_register(&aux_dev->dev,
 					      &priv->nvmem_config_otp);
-	if (!priv->nvmem_otp)
-		return -ENOMEM;
+	if (IS_ERR(priv->nvmem_otp))
+		return PTR_ERR(priv->nvmem_otp);
 
 	return ret;
 }