regulator: mc13xxx: Remove unnecessary locks
authorAlexander Shiyan <shc_work@mail.ru>
Sun, 8 Jun 2014 11:26:29 +0000 (15:26 +0400)
committerMark Brown <broonie@linaro.org>
Mon, 9 Jun 2014 19:52:33 +0000 (20:52 +0100)
Read-modify-write sequence is already protected by regmap, so no
additional locks need. This patch remove such locks from mc13xxx
regulator driver.

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Mark Brown <broonie@linaro.org>
drivers/regulator/mc13xxx-regulator-core.c

index 05b971726ffaa0700e9147c912c35a83ebef9fc6..afba024953e15c88f00d134f236dd4b574be4ffc 100644 (file)
@@ -33,17 +33,12 @@ static int mc13xxx_regulator_enable(struct regulator_dev *rdev)
        struct mc13xxx_regulator_priv *priv = rdev_get_drvdata(rdev);
        struct mc13xxx_regulator *mc13xxx_regulators = priv->mc13xxx_regulators;
        int id = rdev_get_id(rdev);
-       int ret;
 
        dev_dbg(rdev_get_dev(rdev), "%s id: %d\n", __func__, id);
 
-       mc13xxx_lock(priv->mc13xxx);
-       ret = mc13xxx_reg_rmw(priv->mc13xxx, mc13xxx_regulators[id].reg,
-                       mc13xxx_regulators[id].enable_bit,
-                       mc13xxx_regulators[id].enable_bit);
-       mc13xxx_unlock(priv->mc13xxx);
-
-       return ret;
+       return mc13xxx_reg_rmw(priv->mc13xxx, mc13xxx_regulators[id].reg,
+                              mc13xxx_regulators[id].enable_bit,
+                              mc13xxx_regulators[id].enable_bit);
 }
 
 static int mc13xxx_regulator_disable(struct regulator_dev *rdev)
@@ -51,16 +46,11 @@ static int mc13xxx_regulator_disable(struct regulator_dev *rdev)
        struct mc13xxx_regulator_priv *priv = rdev_get_drvdata(rdev);
        struct mc13xxx_regulator *mc13xxx_regulators = priv->mc13xxx_regulators;
        int id = rdev_get_id(rdev);
-       int ret;
 
        dev_dbg(rdev_get_dev(rdev), "%s id: %d\n", __func__, id);
 
-       mc13xxx_lock(priv->mc13xxx);
-       ret = mc13xxx_reg_rmw(priv->mc13xxx, mc13xxx_regulators[id].reg,
-                       mc13xxx_regulators[id].enable_bit, 0);
-       mc13xxx_unlock(priv->mc13xxx);
-
-       return ret;
+       return mc13xxx_reg_rmw(priv->mc13xxx, mc13xxx_regulators[id].reg,
+                              mc13xxx_regulators[id].enable_bit, 0);
 }
 
 static int mc13xxx_regulator_is_enabled(struct regulator_dev *rdev)
@@ -70,10 +60,7 @@ static int mc13xxx_regulator_is_enabled(struct regulator_dev *rdev)
        int ret, id = rdev_get_id(rdev);
        unsigned int val;
 
-       mc13xxx_lock(priv->mc13xxx);
        ret = mc13xxx_reg_read(priv->mc13xxx, mc13xxx_regulators[id].reg, &val);
-       mc13xxx_unlock(priv->mc13xxx);
-
        if (ret)
                return ret;
 
@@ -86,15 +73,10 @@ static int mc13xxx_regulator_set_voltage_sel(struct regulator_dev *rdev,
        struct mc13xxx_regulator_priv *priv = rdev_get_drvdata(rdev);
        struct mc13xxx_regulator *mc13xxx_regulators = priv->mc13xxx_regulators;
        int id = rdev_get_id(rdev);
-       int ret;
 
-       mc13xxx_lock(priv->mc13xxx);
-       ret = mc13xxx_reg_rmw(priv->mc13xxx, mc13xxx_regulators[id].vsel_reg,
-                       mc13xxx_regulators[id].vsel_mask,
-                       selector << mc13xxx_regulators[id].vsel_shift);
-       mc13xxx_unlock(priv->mc13xxx);
-
-       return ret;
+       return mc13xxx_reg_rmw(priv->mc13xxx, mc13xxx_regulators[id].vsel_reg,
+                              mc13xxx_regulators[id].vsel_mask,
+                              selector << mc13xxx_regulators[id].vsel_shift);
 }
 
 static int mc13xxx_regulator_get_voltage(struct regulator_dev *rdev)
@@ -106,11 +88,8 @@ static int mc13xxx_regulator_get_voltage(struct regulator_dev *rdev)
 
        dev_dbg(rdev_get_dev(rdev), "%s id: %d\n", __func__, id);
 
-       mc13xxx_lock(priv->mc13xxx);
        ret = mc13xxx_reg_read(priv->mc13xxx,
                                mc13xxx_regulators[id].vsel_reg, &val);
-       mc13xxx_unlock(priv->mc13xxx);
-
        if (ret)
                return ret;