mirror of https://gitee.com/openkylin/linux.git
regulator: 88pm800: Fix checking whether num_regulator is valid
The code to check whether num_regulator is valid is wrong because it should iterate all array entries rather than break from the for loop if pdata->regulators[i] is NULL. Signed-off-by: Axel Lin <axel.lin@ingics.com> Signed-off-by: Mark Brown <broonie@linaro.org>
This commit is contained in:
parent
6625d9d297
commit
19c6b5440a
|
@ -299,10 +299,13 @@ static int pm800_regulator_probe(struct platform_device *pdev)
|
||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
}
|
}
|
||||||
} else if (pdata->num_regulators) {
|
} else if (pdata->num_regulators) {
|
||||||
/* Check whether num_regulator is valid. */
|
|
||||||
unsigned int count = 0;
|
unsigned int count = 0;
|
||||||
for (i = 0; pdata->regulators[i]; i++)
|
|
||||||
|
/* Check whether num_regulator is valid. */
|
||||||
|
for (i = 0; ARRAY_SIZE(pdata->regulators); i++) {
|
||||||
|
if (pdata->regulators[i])
|
||||||
count++;
|
count++;
|
||||||
|
}
|
||||||
if (count != pdata->num_regulators)
|
if (count != pdata->num_regulators)
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in New Issue