diff options
Diffstat (limited to 'drivers/regulator/twl-regulator.c')
| -rw-r--r-- | drivers/regulator/twl-regulator.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/drivers/regulator/twl-regulator.c b/drivers/regulator/twl-regulator.c index 93bc4f456da..fed28abef41 100644 --- a/drivers/regulator/twl-regulator.c +++ b/drivers/regulator/twl-regulator.c @@ -58,7 +58,7 @@ struct twlreg_info { struct regulator_desc desc; /* chip specific features */ - unsigned long features; + unsigned long features; /* * optional override functions for voltage set/get @@ -1108,7 +1108,7 @@ static int twlreg_probe(struct platform_device *pdev) drvdata = NULL; } else { id = pdev->id; - initdata = pdev->dev.platform_data; + initdata = dev_get_platdata(&pdev->dev); for (i = 0, template = NULL; i < ARRAY_SIZE(twl_of_match); i++) { template = twl_of_match[i].data; if (template && template->desc.id == id) @@ -1128,7 +1128,7 @@ static int twlreg_probe(struct platform_device *pdev) if (!initdata) return -EINVAL; - info = kmemdup(template, sizeof (*info), GFP_KERNEL); + info = kmemdup(template, sizeof(*info), GFP_KERNEL); if (!info) return -ENOMEM; @@ -1188,7 +1188,7 @@ static int twlreg_probe(struct platform_device *pdev) config.driver_data = info; config.of_node = pdev->dev.of_node; - rdev = regulator_register(&info->desc, &config); + rdev = devm_regulator_register(&pdev->dev, &info->desc, &config); if (IS_ERR(rdev)) { dev_err(&pdev->dev, "can't register %s, %ld\n", info->desc.name, PTR_ERR(rdev)); @@ -1217,7 +1217,6 @@ static int twlreg_remove(struct platform_device *pdev) struct regulator_dev *rdev = platform_get_drvdata(pdev); struct twlreg_info *info = rdev->reg_data; - regulator_unregister(rdev); kfree(info); return 0; } |
