|
@@ -564,13 +564,13 @@ static int da9055_regulator_probe(struct platform_device *pdev)
|
|
|
if (ret < 0)
|
|
|
return ret;
|
|
|
|
|
|
- regulator->rdev = regulator_register(®ulator->info->reg_desc,
|
|
|
- &config);
|
|
|
+ regulator->rdev = devm_regulator_register(&pdev->dev,
|
|
|
+ ®ulator->info->reg_desc,
|
|
|
+ &config);
|
|
|
if (IS_ERR(regulator->rdev)) {
|
|
|
dev_err(&pdev->dev, "Failed to register regulator %s\n",
|
|
|
regulator->info->reg_desc.name);
|
|
|
- ret = PTR_ERR(regulator->rdev);
|
|
|
- return ret;
|
|
|
+ return PTR_ERR(regulator->rdev);
|
|
|
}
|
|
|
|
|
|
/* Only LDO 5 and 6 has got the over current interrupt */
|
|
@@ -588,32 +588,18 @@ static int da9055_regulator_probe(struct platform_device *pdev)
|
|
|
dev_err(&pdev->dev,
|
|
|
"Failed to request Regulator IRQ %d: %d\n",
|
|
|
irq, ret);
|
|
|
- goto err_regulator;
|
|
|
+ return ret;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
platform_set_drvdata(pdev, regulator);
|
|
|
|
|
|
- return 0;
|
|
|
-
|
|
|
-err_regulator:
|
|
|
- regulator_unregister(regulator->rdev);
|
|
|
- return ret;
|
|
|
-}
|
|
|
-
|
|
|
-static int da9055_regulator_remove(struct platform_device *pdev)
|
|
|
-{
|
|
|
- struct da9055_regulator *regulator = platform_get_drvdata(pdev);
|
|
|
-
|
|
|
- regulator_unregister(regulator->rdev);
|
|
|
-
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
|
static struct platform_driver da9055_regulator_driver = {
|
|
|
.probe = da9055_regulator_probe,
|
|
|
- .remove = da9055_regulator_remove,
|
|
|
.driver = {
|
|
|
.name = "da9055-regulator",
|
|
|
.owner = THIS_MODULE,
|