diff options
author | Robin Gong <yibin.gong@nxp.com> | 2020-06-23 22:01:10 +0800 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2020-06-23 13:15:13 +0100 |
commit | a7503a9d8fcfac3fefdb63fc61efedef41635e94 (patch) | |
tree | 5f857e27beef7ed30d8be895f6961fdd13d0ee24 | |
parent | 9ed84d24de480e81294e00814c142234bc17ce0c (diff) | |
download | lwn-a7503a9d8fcfac3fefdb63fc61efedef41635e94.tar.gz lwn-a7503a9d8fcfac3fefdb63fc61efedef41635e94.zip |
regulator: pfuze100: add condition check for 'ramp_delay = 0'
Checking for 'ramp_delay = 0' to avoid Coverity warning report.
Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Link: https://lore.kernel.org/r/1592920870-12693-1-git-send-email-yibin.gong@nxp.com
Signed-off-by: Mark Brown <broonie@kernel.org>
-rw-r--r-- | drivers/regulator/pfuze100-regulator.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/drivers/regulator/pfuze100-regulator.c b/drivers/regulator/pfuze100-regulator.c index 4c8e8b472287..7e8ba9246167 100644 --- a/drivers/regulator/pfuze100-regulator.c +++ b/drivers/regulator/pfuze100-regulator.c @@ -128,7 +128,7 @@ static int pfuze100_set_ramp_delay(struct regulator_dev *rdev, int ramp_delay) struct pfuze_chip *pfuze100 = rdev_get_drvdata(rdev); int id = rdev_get_id(rdev); bool reg_has_ramp_delay; - unsigned int ramp_bits; + unsigned int ramp_bits = 0; int ret; switch (pfuze100->chip_id) { @@ -149,8 +149,11 @@ static int pfuze100_set_ramp_delay(struct regulator_dev *rdev, int ramp_delay) } if (reg_has_ramp_delay) { - ramp_delay = 12500 / ramp_delay; - ramp_bits = (ramp_delay >> 1) - (ramp_delay >> 3); + if (ramp_delay > 0) { + ramp_delay = 12500 / ramp_delay; + ramp_bits = (ramp_delay >> 1) - (ramp_delay >> 3); + } + ret = regmap_update_bits(pfuze100->regmap, rdev->desc->vsel_reg + 4, 0xc0, ramp_bits << 6); |