Messages in this thread | | | Subject | Re: [PATCH 1/1] regulator: return set_mode is same mode is requested | From | Liam Girdwood <> | Date | Mon, 17 May 2010 15:35:29 +0100 |
| |
On Mon, 2010-05-17 at 19:39 +0530, Sundar Iyer wrote: > From: Sundar R Iyer <sundar.iyer@stericsson.com> > > Cc: Liam Girdwood <lrg@slimlogic.co.uk> > Cc: Mark Brown <broonie@opensource.wolfsonmicro.com> > Acked-by: Linus Walleij <linus.walleij@stericsson.com> > Signed-off-by: Sundar R Iyer <sundar.iyer@stericsson.com> > --- > drivers/regulator/core.c | 8 ++++++++ > 1 files changed, 8 insertions(+), 0 deletions(-) > > diff --git a/drivers/regulator/core.c b/drivers/regulator/core.c > index 98e5d14..5054add 100644 > --- a/drivers/regulator/core.c > +++ b/drivers/regulator/core.c > @@ -1599,6 +1599,7 @@ int regulator_set_voltage(struct regulator *regulator, int min_uV, int max_uV) > { > struct regulator_dev *rdev = regulator->rdev; > int ret; > + int regulator_curr_mode;
Shouldn't this variable be in regulator_set_mode() ?
> > mutex_lock(&rdev->mutex); > > @@ -1754,6 +1755,13 @@ int regulator_set_mode(struct regulator *regulator, unsigned int mode) > goto out; > } > > + /* return if the same mode is requested */ > + regulator_curr_mode = rdev->desc->ops->get_mode(rdev); > + if (regulator_curr_mode == mode) { > + ret = 0; > + goto out; > + } > + > /* constraints check */ > ret = regulator_check_mode(rdev, mode); > if (ret < 0)
Thanks
Liam -- Freelance Developer, SlimLogic Ltd ASoC and Voltage Regulator Maintainer. http://www.slimlogic.co.uk
| |