summaryrefslogtreecommitdiff
path: root/drivers/regulator
diff options
context:
space:
mode:
authorMark Brown <broonie@kernel.org>2015-07-24 18:19:25 +0300
committerMark Brown <broonie@kernel.org>2015-07-24 18:19:25 +0300
commit7055a3145402bb3296cd98895da68462778f8b18 (patch)
tree7a58c47452fe475302b95b13d0d81bb81df720e2 /drivers/regulator
parent52721d9d3334c1cb1f76219a161084094ec634dc (diff)
parent9f7e25edb1575a6d2363dc003f9cc09d840657e2 (diff)
downloadlinux-7055a3145402bb3296cd98895da68462778f8b18.tar.xz
Merge remote-tracking branch 'regulator/fix/core' into regulator-linus
Diffstat (limited to 'drivers/regulator')
-rw-r--r--drivers/regulator/core.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/drivers/regulator/core.c b/drivers/regulator/core.c
index c9f72019bd68..bb8528dfad8c 100644
--- a/drivers/regulator/core.c
+++ b/drivers/regulator/core.c
@@ -1381,9 +1381,13 @@ static int regulator_resolve_supply(struct regulator_dev *rdev)
}
if (!r) {
- dev_err(dev, "Failed to resolve %s-supply for %s\n",
- rdev->supply_name, rdev->desc->name);
- return -EPROBE_DEFER;
+ if (have_full_constraints()) {
+ r = dummy_regulator_rdev;
+ } else {
+ dev_err(dev, "Failed to resolve %s-supply for %s\n",
+ rdev->supply_name, rdev->desc->name);
+ return -EPROBE_DEFER;
+ }
}
/* Recursively resolve the supply of the supply */