Use managed resource function devm_power_supply_register
instead of power_supply_register. To be compatible with the
change, replace various gotos by direct returns and remove
unneeded label err.

Also, remove max8998_battery_remove as it is now redundant.

Signed-off-by: Vaishali Thakkar <vthakkar1...@gmail.com>
---
 drivers/power/max8998_charger.c | 28 +++++++---------------------
 1 file changed, 7 insertions(+), 21 deletions(-)

diff --git a/drivers/power/max8998_charger.c b/drivers/power/max8998_charger.c
index 47448d4..6014df5 100644
--- a/drivers/power/max8998_charger.c
+++ b/drivers/power/max8998_charger.c
@@ -117,8 +117,7 @@ static int max8998_battery_probe(struct platform_device 
*pdev)
                        "EOC value not set: leave it unchanged.\n");
        } else {
                dev_err(max8998->dev, "Invalid EOC value\n");
-               ret = -EINVAL;
-               goto err;
+               return -EINVAL;
        }
 
        /* Setup Charge Restart Level */
@@ -141,8 +140,7 @@ static int max8998_battery_probe(struct platform_device 
*pdev)
                break;
        default:
                dev_err(max8998->dev, "Invalid Restart Level\n");
-               ret = -EINVAL;
-               goto err;
+               return -EINVAL;
        }
 
        /* Setup Charge Full Timeout */
@@ -165,34 +163,22 @@ static int max8998_battery_probe(struct platform_device 
*pdev)
                break;
        default:
                dev_err(max8998->dev, "Invalid Full Timeout value\n");
-               ret = -EINVAL;
-               goto err;
+               return -EINVAL;
        }
 
        psy_cfg.drv_data = max8998;
 
-       max8998->battery = power_supply_register(max8998->dev,
-                                                &max8998_battery_desc,
-                                                &psy_cfg);
+       max8998->battery = devm_power_supply_register(max8998->dev,
+                                                     &max8998_battery_desc,
+                                                     &psy_cfg);
        if (IS_ERR(max8998->battery)) {
                ret = PTR_ERR(max8998->battery);
                dev_err(max8998->dev, "failed: power supply register: %d\n",
                        ret);
-               goto err;
+               return ret;
        }
 
        return 0;
-err:
-       return ret;
-}
-
-static int max8998_battery_remove(struct platform_device *pdev)
-{
-       struct max8998_battery_data *max8998 = platform_get_drvdata(pdev);
-
-       power_supply_unregister(max8998->battery);
-
-       return 0;
 }
 
 static const struct platform_device_id max8998_battery_id[] = {
-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to