summary refs log tree commit diff
path: root/drivers/regulator/core.c
diff options
context:
space:
mode:
authorMark Brown <broonie@opensource.wolfsonmicro.com>2011-05-09 11:41:02 +0200
committerLiam Girdwood <lrg@slimlogic.co.uk>2011-05-27 10:34:37 +0100
commit82d158397b6eeb464263a6ef6a739c4118a34720 (patch)
tree95fb5c55f74900f424a62d20ba68efcbc182fab4 /drivers/regulator/core.c
parent7ce8a2a05f249054e6bce109a15ee188b4124256 (diff)
downloadlinux-82d158397b6eeb464263a6ef6a739c4118a34720.tar.gz
regulator: Factor out references to rdev in regulator_force_disable()
Don't go looking up the rdev pointer every time, just use a local variable
like everything else.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
Diffstat (limited to 'drivers/regulator/core.c')
-rw-r--r--drivers/regulator/core.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/regulator/core.c b/drivers/regulator/core.c
index a2728a498c3f..98d25fcb3930 100644
--- a/drivers/regulator/core.c
+++ b/drivers/regulator/core.c
@@ -1504,13 +1504,14 @@ static int _regulator_force_disable(struct regulator_dev *rdev,
  */
 int regulator_force_disable(struct regulator *regulator)
 {
+	struct regulator_dev *rdev = regulator->rdev;
 	struct regulator_dev *supply_rdev = NULL;
 	int ret;
 
-	mutex_lock(&regulator->rdev->mutex);
+	mutex_lock(&rdev->mutex);
 	regulator->uA_load = 0;
-	ret = _regulator_force_disable(regulator->rdev, &supply_rdev);
-	mutex_unlock(&regulator->rdev->mutex);
+	ret = _regulator_force_disable(rdev, &supply_rdev);
+	mutex_unlock(&rdev->mutex);
 
 	if (supply_rdev)
 		regulator_disable(get_device_regulator(rdev_get_dev(supply_rdev)));