summaryrefslogtreecommitdiffstats
path: root/drivers/regulator
diff options
context:
space:
mode:
authorAxel Lin <axel.lin@gmail.com>2010-09-04 17:06:41 +0200
committerLiam Girdwood <lrg@slimlogic.co.uk>2010-09-05 12:15:52 +0200
commit49990e6efe576b8707584398f93198b5aa182ab7 (patch)
treee2ad8126f0d930d314fb6f771c87ab4f96977924 /drivers/regulator
parentregulator: 88pm8607 - fix value range checking for accessing info->vol_table (diff)
downloadlinux-49990e6efe576b8707584398f93198b5aa182ab7.tar.xz
linux-49990e6efe576b8707584398f93198b5aa182ab7.zip
regulator: ab8500 - fix off-by-one value range checking for selector
selector is used as array index of info->supported_voltages Thus the valid value range should be 0 .. info->voltages_len -1 Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-by: Mark Brown <broonie@openource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
Diffstat (limited to 'drivers/regulator')
-rw-r--r--drivers/regulator/ab8500.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/regulator/ab8500.c b/drivers/regulator/ab8500.c
index 3d09580dc883..28c7ae67cec9 100644
--- a/drivers/regulator/ab8500.c
+++ b/drivers/regulator/ab8500.c
@@ -157,7 +157,7 @@ static int ab8500_list_voltage(struct regulator_dev *rdev, unsigned selector)
if (info->fixed_uV)
return info->fixed_uV;
- if (selector > info->voltages_len)
+ if (selector >= info->voltages_len)
return -EINVAL;
return info->supported_voltages[selector];