
Hi Keethy,
On 26 October 2016 at 20:20, Keerthy j-keerthy@ti.com wrote:
On Wednesday 26 October 2016 10:01 PM, Simon Glass wrote:
Hi Keerthy,
On 26 October 2016 at 01:12, Keerthy j-keerthy@ti.com wrote:
Currently the specific set ops functions are directly called without any check for min/max current limits for a regulator. Check for them and proceed.
Signed-off-by: Keerthy j-keerthy@ti.com
drivers/power/regulator/regulator-uclass.c | 5 +++++ 1 file changed, 5 insertions(+)
diff --git a/drivers/power/regulator/regulator-uclass.c b/drivers/power/regulator/regulator-uclass.c index 34087c8..4c4bd29 100644 --- a/drivers/power/regulator/regulator-uclass.c +++ b/drivers/power/regulator/regulator-uclass.c @@ -80,6 +80,11 @@ int regulator_get_current(struct udevice *dev) int regulator_set_current(struct udevice *dev, int uA) { const struct dm_regulator_ops *ops = dev_get_driver_ops(dev);
struct dm_regulator_uclass_platdata *uc_pdata;
uc_pdata = dev_get_uclass_platdata(dev);
if (uA < uc_pdata->min_uA || uA > uc_pdata->max_uA)
return -EINVAL;
Do all drivers have these values set?
Simon,
Agree that not all drivers set this. But when someone calls set_current with some value there needs to be some boundary conditions for this right? Hence i made this patch.
I think your patch is good. I'm just worried about breaking boards. Can you take a quick look at existing users and make sure that won't happen?
Regards, Simon