Dear Sachin Kamat,

> devm_* simplifies the code.
> 
> Signed-off-by: Sachin Kamat <sachin.ka...@linaro.org>
> ---
>  drivers/regulator/palmas-regulator.c |   38
> ++++++++++------------------------ 1 file changed, 11 insertions(+), 27
> deletions(-)
> 
> diff --git a/drivers/regulator/palmas-regulator.c
> b/drivers/regulator/palmas-regulator.c index d0c8785..37b1068 100644
> --- a/drivers/regulator/palmas-regulator.c
> +++ b/drivers/regulator/palmas-regulator.c
> @@ -852,7 +852,7 @@ static int palmas_regulators_probe(struct
> platform_device *pdev) if (ret < 0) {
>                               dev_err(&pdev->dev,
>                                       "reading TSTEP reg failed: %d\n", ret);
> -                             goto err_unregister_regulator;
> +                             return ret;
>                       }
>                       pmic->desc[id].ramp_delay =
>                                       palmas_smps_ramp_delay[reg & 0x3];
> @@ -864,7 +864,7 @@ static int palmas_regulators_probe(struct
> platform_device *pdev) reg_init = pdata->reg_init[id];
>                       ret = palmas_smps_init(palmas, id, reg_init);
>                       if (ret)
> -                             goto err_unregister_regulator;
> +                             return ret;
>               }
> 
>               /* Register the regulators */
> @@ -897,7 +897,7 @@ static int palmas_regulators_probe(struct
> platform_device *pdev)
> 
>                       ret = palmas_smps_read(pmic->palmas, addr, &reg);
>                       if (ret)
> -                             goto err_unregister_regulator;
> +                             return ret;
>                       if (reg & PALMAS_SMPS12_VOLTAGE_RANGE)
>                               pmic->range[id] = 1;
> 
> @@ -913,7 +913,7 @@ static int palmas_regulators_probe(struct
> platform_device *pdev) addr = palmas_regs_info[id].ctrl_addr;
>                       ret = palmas_smps_read(pmic->palmas, addr, &reg);
>                       if (ret)
> -                             goto err_unregister_regulator;
> +                             return ret;
>                       pmic->current_reg_mode[id] = reg &
>                                       PALMAS_SMPS12_CTRL_MODE_ACTIVE_MASK;
>               }
> @@ -929,13 +929,13 @@ static int palmas_regulators_probe(struct
> platform_device *pdev) pmic->desc[id].supply_name =
> palmas_regs_info[id].sname;
>               config.of_node = palmas_matches[id].of_node;
> 
> -             rdev = regulator_register(&pmic->desc[id], &config);
> +             rdev = devm_regulator_register(&pdev->dev, &pmic->desc[id],
> +                                            &config);
>               if (IS_ERR(rdev)) {
>                       dev_err(&pdev->dev,
>                               "failed to register %s regulator\n",
>                               pdev->name);
> -                     ret = PTR_ERR(rdev);
> -                     goto err_unregister_regulator;
> +                     return PTR_ERR(rdev);
>               }
> 
>               /* Save regulator for cleanup */
> @@ -997,13 +997,13 @@ static int palmas_regulators_probe(struct
> platform_device *pdev) pmic->desc[id].supply_name =
> palmas_regs_info[id].sname;
>               config.of_node = palmas_matches[id].of_node;
> 
> -             rdev = regulator_register(&pmic->desc[id], &config);
> +             rdev = devm_regulator_register(&pdev->dev, &pmic->desc[id],
> +                                            &config);
>               if (IS_ERR(rdev)) {
>                       dev_err(&pdev->dev,
>                               "failed to register %s regulator\n",
>                               pdev->name);
> -                     ret = PTR_ERR(rdev);
> -                     goto err_unregister_regulator;
> +                     return PTR_ERR(rdev);
>               }
> 
>               /* Save regulator for cleanup */
> @@ -1021,7 +1021,7 @@ static int palmas_regulators_probe(struct
> platform_device *pdev) id, reg_init);
>                               if (ret) {
>                                       regulator_unregister(pmic->rdev[id]);
> -                                     goto err_unregister_regulator;
> +                                     return ret;
>                               }

what about this regulator_unregister() above here?

[...]
Best regards,
Marek Vasut
--
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