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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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 cpufreq" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Kernel Devel]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Forum]     [Linux SCSI]

  Powered by Linux