diff mbox series

hwmon: (raspberrypi) Exit immediately in case of error in init

Message ID 20211211184449.18211-1-W_Armin@gmx.de (mailing list archive)
State Accepted
Headers show
Series hwmon: (raspberrypi) Exit immediately in case of error in init | expand

Commit Message

Armin Wolf Dec. 11, 2021, 6:44 p.m. UTC
Exit immediately if devm_hwmon_device_register_with_info()
fails since registering a delayed work whould be useless
in such a case anyway.

Signed-off-by: Armin Wolf <W_Armin@gmx.de>
---
 drivers/hwmon/raspberrypi-hwmon.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

--
2.30.2

Comments

Guenter Roeck Dec. 17, 2021, 3:31 p.m. UTC | #1
On Sat, Dec 11, 2021 at 07:44:49PM +0100, Armin Wolf wrote:
> Exit immediately if devm_hwmon_device_register_with_info()
> fails since registering a delayed work whould be useless
> in such a case anyway.
> 
> Signed-off-by: Armin Wolf <W_Armin@gmx.de>

Applied.

Thanks,
Guenter

> ---
>  drivers/hwmon/raspberrypi-hwmon.c | 7 ++++---
>  1 file changed, 4 insertions(+), 3 deletions(-)
> 
> --
> 2.30.2
> 
> diff --git a/drivers/hwmon/raspberrypi-hwmon.c b/drivers/hwmon/raspberrypi-hwmon.c
> index 573f53d52912..1650d3b4c26e 100644
> --- a/drivers/hwmon/raspberrypi-hwmon.c
> +++ b/drivers/hwmon/raspberrypi-hwmon.c
> @@ -120,6 +120,8 @@ static int rpi_hwmon_probe(struct platform_device *pdev)
>  							       data,
>  							       &rpi_chip_info,
>  							       NULL);
> +	if (IS_ERR(data->hwmon_dev))
> +		return PTR_ERR(data->hwmon_dev);
> 
>  	ret = devm_delayed_work_autocancel(dev, &data->get_values_poll_work,
>  					   get_values_poll);
> @@ -127,10 +129,9 @@ static int rpi_hwmon_probe(struct platform_device *pdev)
>  		return ret;
>  	platform_set_drvdata(pdev, data);
> 
> -	if (!PTR_ERR_OR_ZERO(data->hwmon_dev))
> -		schedule_delayed_work(&data->get_values_poll_work, 2 * HZ);
> +	schedule_delayed_work(&data->get_values_poll_work, 2 * HZ);
> 
> -	return PTR_ERR_OR_ZERO(data->hwmon_dev);
> +	return 0;
>  }
> 
>  static struct platform_driver rpi_hwmon_driver = {
diff mbox series

Patch

diff --git a/drivers/hwmon/raspberrypi-hwmon.c b/drivers/hwmon/raspberrypi-hwmon.c
index 573f53d52912..1650d3b4c26e 100644
--- a/drivers/hwmon/raspberrypi-hwmon.c
+++ b/drivers/hwmon/raspberrypi-hwmon.c
@@ -120,6 +120,8 @@  static int rpi_hwmon_probe(struct platform_device *pdev)
 							       data,
 							       &rpi_chip_info,
 							       NULL);
+	if (IS_ERR(data->hwmon_dev))
+		return PTR_ERR(data->hwmon_dev);

 	ret = devm_delayed_work_autocancel(dev, &data->get_values_poll_work,
 					   get_values_poll);
@@ -127,10 +129,9 @@  static int rpi_hwmon_probe(struct platform_device *pdev)
 		return ret;
 	platform_set_drvdata(pdev, data);

-	if (!PTR_ERR_OR_ZERO(data->hwmon_dev))
-		schedule_delayed_work(&data->get_values_poll_work, 2 * HZ);
+	schedule_delayed_work(&data->get_values_poll_work, 2 * HZ);

-	return PTR_ERR_OR_ZERO(data->hwmon_dev);
+	return 0;
 }

 static struct platform_driver rpi_hwmon_driver = {