Re: [RFC PATCH 1/2] regulator: core: Add regulator_set_voltage_min()

From: Taras Kondratiuk
Date: Mon Apr 22 2013 - 12:55:40 EST


On 04/22/2013 04:19 PM, Mark Brown wrote:
On Fri, Apr 19, 2013 at 02:55:53PM +0300, Taras Kondratiuk wrote:
Sometimes it is a need to constrain only a minimum voltage
and let system constraints to limit maximum.
Add a new function regulator_set_voltage_min() for this.
I don't believe you on this one. It is going to be a very unusual
system which has a maximum supply voltage specified at over 4kV (or
more) which is what INT_MAX will come out as - there will be some
electrical specs for what voltages can be tolerated sustainably.
Yeah. Sure 4kV is not a real request, but
max will be limited by system constrains.
According to regulator_set_voltage() documentation
system constraints should be set before calling this function,
so I assume I can rely on them. No?

Another possible implementation is below, but prefer initial one.

diff --git a/drivers/regulator/core.c b/drivers/regulator/core.c
index e3661c2..28c1be3 100644
--- a/drivers/regulator/core.c
+++ b/drivers/regulator/core.c
@@ -2355,6 +2355,19 @@ out2:
}
EXPORT_SYMBOL_GPL(regulator_set_voltage);

+int regulator_set_voltage_min(struct regulator *regulator, int min_uV)
+{
+ struct regulator_dev *rdev = regulator->rdev;
+ int max_uV;
+
+ mutex_lock(&rdev->mutex);
+ max_uV = rdev->constraints->max_uV;
+ mutex_unlock(&rdev->mutex);
+ return regulator_set_voltage(regulator, min_uV, max_uV);
+}
+EXPORT_SYMBOL_GPL(regulator_set_voltage_min);
+
+
/**
* regulator_set_voltage_time - get raise/fall time
* @regulator: regulator source


--
BR
Taras Kondratiuk | GlobalLogic

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/