summaryrefslogtreecommitdiffstats
path: root/drivers/regulator
diff options
context:
space:
mode:
authorMattias Wallin <mattias.wallin@stericsson.com>2010-11-02 14:55:34 +0100
committerLiam Girdwood <lrg@slimlogic.co.uk>2010-11-30 15:13:25 +0000
commitb12a1e29af595d05612153bcb85258193bbf9382 (patch)
tree700e2fdd4f0468498b90cf5fabc2b530c5417e0f /drivers/regulator
parente8a7e48bb248a1196484d3f8afa53bded2b24e71 (diff)
downloadlinux-stable-b12a1e29af595d05612153bcb85258193bbf9382.tar.gz
linux-stable-b12a1e29af595d05612153bcb85258193bbf9382.tar.bz2
linux-stable-b12a1e29af595d05612153bcb85258193bbf9382.zip
regulator: regulator disable supply fix
This patch fixes a disable failure when regulator supply is used. A while loop in regulator disable checks for supply pointer != NULL but the pointer is not always updated, resulting in the while loop running too many times causing a disable failure. Signed-off-by: Mattias Wallin <mattias.wallin@stericsson.com> Acked-by: Linus Walleij <linus.walleij@stericsson.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
Diffstat (limited to 'drivers/regulator')
-rw-r--r--drivers/regulator/core.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/regulator/core.c b/drivers/regulator/core.c
index f1d10c974cd4..c62563322969 100644
--- a/drivers/regulator/core.c
+++ b/drivers/regulator/core.c
@@ -1359,6 +1359,7 @@ static int _regulator_disable(struct regulator_dev *rdev,
struct regulator_dev **supply_rdev_ptr)
{
int ret = 0;
+ *supply_rdev_ptr = NULL;
if (WARN(rdev->use_count <= 0,
"unbalanced disables for %s\n",