From f2b269b83de35a022a8df5d0133f64021f08592c Mon Sep 17 00:00:00 2001 From: Fabio Estevam Date: Mon, 6 Jan 2014 10:13:15 -0200 Subject: [PATCH] regulator: anatop-regulator: Remove unneeded kstrdup() We can simply pass the regulator name via of_get_property() instead of making a copy via kstrdup(). This leads to some code simplification. Suggested-by: Dmitry Torokhov Signed-off-by: Fabio Estevam Signed-off-by: Mark Brown --- drivers/regulator/anatop-regulator.c | 34 +++++++--------------------- 1 file changed, 8 insertions(+), 26 deletions(-) diff --git a/drivers/regulator/anatop-regulator.c b/drivers/regulator/anatop-regulator.c index a0041447ef00..3d4997aede1d 100644 --- a/drivers/regulator/anatop-regulator.c +++ b/drivers/regulator/anatop-regulator.c @@ -122,8 +122,7 @@ static int anatop_regulator_probe(struct platform_device *pdev) if (!sreg) return -ENOMEM; sreg->initdata = initdata; - sreg->name = kstrdup(of_get_property(np, "regulator-name", NULL), - GFP_KERNEL); + sreg->name = of_get_property(np, "regulator-name", NULL); rdesc = &sreg->rdesc; memset(rdesc, 0, sizeof(*rdesc)); rdesc->name = sreg->name; @@ -143,37 +142,37 @@ static int anatop_regulator_probe(struct platform_device *pdev) &sreg->control_reg); if (ret) { dev_err(dev, "no anatop-reg-offset property set\n"); - goto anatop_probe_end; + return ret; } ret = of_property_read_u32(np, "anatop-vol-bit-width", &sreg->vol_bit_width); if (ret) { dev_err(dev, "no anatop-vol-bit-width property set\n"); - goto anatop_probe_end; + return ret; } ret = of_property_read_u32(np, "anatop-vol-bit-shift", &sreg->vol_bit_shift); if (ret) { dev_err(dev, "no anatop-vol-bit-shift property set\n"); - goto anatop_probe_end; + return ret; } ret = of_property_read_u32(np, "anatop-min-bit-val", &sreg->min_bit_val); if (ret) { dev_err(dev, "no anatop-min-bit-val property set\n"); - goto anatop_probe_end; + return ret; } ret = of_property_read_u32(np, "anatop-min-voltage", &sreg->min_voltage); if (ret) { dev_err(dev, "no anatop-min-voltage property set\n"); - goto anatop_probe_end; + return ret; } ret = of_property_read_u32(np, "anatop-max-voltage", &sreg->max_voltage); if (ret) { dev_err(dev, "no anatop-max-voltage property set\n"); - goto anatop_probe_end; + return ret; } /* read LDO ramp up setting, only for core reg */ @@ -204,27 +203,11 @@ static int anatop_regulator_probe(struct platform_device *pdev) if (IS_ERR(rdev)) { dev_err(dev, "failed to register %s\n", rdesc->name); - ret = PTR_ERR(rdev); - goto anatop_probe_end; + return PTR_ERR(rdev); } platform_set_drvdata(pdev, rdev); -anatop_probe_end: - if (ret) - kfree(sreg->name); - - return ret; -} - -static int anatop_regulator_remove(struct platform_device *pdev) -{ - struct regulator_dev *rdev = platform_get_drvdata(pdev); - struct anatop_regulator *sreg = rdev_get_drvdata(rdev); - const char *name = sreg->name; - - kfree(name); - return 0; } @@ -240,7 +223,6 @@ static struct platform_driver anatop_regulator_driver = { .of_match_table = of_anatop_regulator_match_tbl, }, .probe = anatop_regulator_probe, - .remove = anatop_regulator_remove, }; static int __init anatop_regulator_init(void) -- GitLab