regulator: s5m8767: Remove regulator_dev pointer from state container
authorKrzysztof Kozlowski <k.kozlowski@samsung.com>
Mon, 7 Apr 2014 12:15:24 +0000 (14:15 +0200)
committerMark Brown <broonie@linaro.org>
Mon, 14 Apr 2014 16:03:41 +0000 (17:03 +0100)
Don't store pointer to regulator_dev returned by
devm_regulator_register() in state container. It isn't used anywhere
outside of probe.

Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
drivers/regulator/s5m8767.c

index 92f19a0..5daa066 100644 (file)
@@ -28,7 +28,6 @@ struct s5m8767_info {
        struct device *dev;
        struct sec_pmic_dev *iodev;
        int num_regulators;
-       struct regulator_dev **rdev;
        struct sec_opmode_data *opmode;
 
        int ramp_delay;
@@ -695,7 +694,6 @@ static int s5m8767_pmic_probe(struct platform_device *pdev)
        struct sec_pmic_dev *iodev = dev_get_drvdata(pdev->dev.parent);
        struct sec_platform_data *pdata = iodev->pdata;
        struct regulator_config config = { };
-       struct regulator_dev **rdev;
        struct s5m8767_info *s5m8767;
        int i, ret, size, buck_init;
 
@@ -737,11 +735,7 @@ static int s5m8767_pmic_probe(struct platform_device *pdev)
                return -ENOMEM;
 
        size = sizeof(struct regulator_dev *) * (S5M8767_REG_MAX - 2);
-       s5m8767->rdev = devm_kzalloc(&pdev->dev, size, GFP_KERNEL);
-       if (!s5m8767->rdev)
-               return -ENOMEM;
 
-       rdev = s5m8767->rdev;
        s5m8767->dev = &pdev->dev;
        s5m8767->iodev = iodev;
        s5m8767->num_regulators = pdata->num_regulators;
@@ -938,6 +932,7 @@ static int s5m8767_pmic_probe(struct platform_device *pdev)
                const struct sec_voltage_desc *desc;
                int id = pdata->regulators[i].id;
                int enable_reg, enable_val;
+               struct regulator_dev *rdev;
 
                desc = reg_voltage_map[id];
                if (desc) {
@@ -969,21 +964,21 @@ static int s5m8767_pmic_probe(struct platform_device *pdev)
                        s5m8767_regulator_config_ext_control(s5m8767,
                                        &pdata->regulators[i], &config);
 
-               rdev[i] = devm_regulator_register(&pdev->dev, &regulators[id],
+               rdev = devm_regulator_register(&pdev->dev, &regulators[id],
                                                  &config);
-               if (IS_ERR(rdev[i])) {
-                       ret = PTR_ERR(rdev[i]);
+               if (IS_ERR(rdev)) {
+                       ret = PTR_ERR(rdev);
                        dev_err(s5m8767->dev, "regulator init failed for %d\n",
                                        id);
                        return ret;
                }
 
                if (pdata->regulators[i].ext_control_gpio) {
-                       ret = s5m8767_enable_ext_control(s5m8767, rdev[i]);
+                       ret = s5m8767_enable_ext_control(s5m8767, rdev);
                        if (ret < 0) {
                                dev_err(s5m8767->dev,
                                                "failed to enable gpio control over %s: %d\n",
-                                               rdev[i]->desc->name, ret);
+                                               rdev->desc->name, ret);
                                return ret;
                        }
                }