[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1400497954-1012-1-git-send-email-alban.bedel@avionic-design.de>
Date: Mon, 19 May 2014 13:12:34 +0200
From: Alban Bedel <alban.bedel@...onic-design.de>
To: linux-kernel@...r.kernel.org
Cc: Mark Brown <broonie@...nel.org>,
Liam Girdwood <lgirdwood@...il.com>,
Alban Bedel <alban.bedel@...onic-design.de>
Subject: [PATCH] regulator: core: Fix the init of DT defined fixed regulators
When a regulator is defined using DT and it has a single voltage the
regulator init always tries to apply this voltage. However this fails
if the regulator isn't settable. So skip this step if the regulator
doesn't provides any set method.
Signed-off-by: Alban Bedel <alban.bedel@...onic-design.de>
---
drivers/regulator/core.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/regulator/core.c b/drivers/regulator/core.c
index 9a09f3c..e57450f 100644
--- a/drivers/regulator/core.c
+++ b/drivers/regulator/core.c
@@ -843,7 +843,9 @@ static int machine_constraints_voltage(struct regulator_dev *rdev,
/* do we need to apply the constraint voltage */
if (rdev->constraints->apply_uV &&
- rdev->constraints->min_uV == rdev->constraints->max_uV) {
+ rdev->constraints->min_uV == rdev->constraints->max_uV &&
+ (rdev->desc->ops->set_voltage ||
+ rdev->desc->ops->set_voltage_sel)) {
ret = _regulator_do_set_voltage(rdev,
rdev->constraints->min_uV,
rdev->constraints->max_uV);
--
1.9.3
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists