clk: tegra: clk-tegra124-dfll-fcpu: don't use devm functions for regulator
authorAlexandru Ardelean <aardelean@deviqon.com>
Thu, 24 Jun 2021 08:47:37 +0000 (11:47 +0300)
committerStephen Boyd <sboyd@kernel.org>
Fri, 25 Jun 2021 23:23:07 +0000 (16:23 -0700)
The purpose of the device-managed functions is to bind the life-time of an
object to that of a parent device object.

This is not the case for the 'vdd-cpu' regulator in this driver. A
reference is obtained via devm_regulator_get() and immediately released
with devm_regulator_put().

In this case, the usage of devm_ functions is slightly excessive, as the
un-managed versions of these functions is a little cleaner (and slightly
more economical in terms of allocation).

This change converts the devm_regulator_{get,put}() to
regulator_{get,put}() in the get_alignment_from_regulator() function of
this driver.

Signed-off-by: Alexandru Ardelean <aardelean@deviqon.com>
Link: https://lore.kernel.org/r/20210624084737.42336-1-aardelean@deviqon.com
Reviewed-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
drivers/clk/tegra/clk-tegra124-dfll-fcpu.c

index 2ac2679..5e339ad 100644 (file)
@@ -537,7 +537,7 @@ static void get_alignment_from_dt(struct device *dev,
 static int get_alignment_from_regulator(struct device *dev,
                                         struct rail_alignment *align)
 {
-       struct regulator *reg = devm_regulator_get(dev, "vdd-cpu");
+       struct regulator *reg = regulator_get(dev, "vdd-cpu");
 
        if (IS_ERR(reg))
                return PTR_ERR(reg);
@@ -545,7 +545,7 @@ static int get_alignment_from_regulator(struct device *dev,
        align->offset_uv = regulator_list_voltage(reg, 0);
        align->step_uv = regulator_get_linear_step(reg);
 
-       devm_regulator_put(reg);
+       regulator_put(reg);
 
        return 0;
 }