summaryrefslogtreecommitdiffstats
path: root/drivers/regulator/of_regulator.c
diff options
context:
space:
mode:
authorChen-Yu Tsai <wenst@chromium.org>2024-08-22 09:20:45 +0200
committerMark Brown <broonie@kernel.org>2024-08-22 14:34:29 +0200
commit395a41a1d3e377462f3eea8a205ee72be8885ff6 (patch)
treea93e697f3b2171233d19d65af2f2efccfafe9c70 /drivers/regulator/of_regulator.c
parentregulator: Clarify error message for "id == NULL" in _regulator_get() (diff)
downloadlinux-395a41a1d3e377462f3eea8a205ee72be8885ff6.tar.xz
linux-395a41a1d3e377462f3eea8a205ee72be8885ff6.zip
regulator: Return actual error in of_regulator_bulk_get_all()
If regulator_get() in of_regulator_bulk_get_all() returns an error, that error gets overridden and -EINVAL is always passed out. This masks probe deferral requests and likely won't work properly in all cases. Fix this by letting of_regulator_bulk_get_all() return the original error code. Fixes: 27b9ecc7a9ba ("regulator: Add of_regulator_bulk_get_all") Signed-off-by: Chen-Yu Tsai <wenst@chromium.org> Link: https://patch.msgid.link/20240822072047.3097740-3-wenst@chromium.org Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'drivers/regulator/of_regulator.c')
-rw-r--r--drivers/regulator/of_regulator.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/regulator/of_regulator.c b/drivers/regulator/of_regulator.c
index 03afc160fc72..86b680adbf01 100644
--- a/drivers/regulator/of_regulator.c
+++ b/drivers/regulator/of_regulator.c
@@ -777,7 +777,7 @@ restart:
name[i] = '\0';
tmp = regulator_get(dev, name);
if (IS_ERR(tmp)) {
- ret = -EINVAL;
+ ret = PTR_ERR(tmp);
goto error;
}
(*consumers)[n].consumer = tmp;