Checking for 'ramp_delay = 0' to avoid Coverity warning report.
Unified · Split
| @@ -128,7 +128,7 @@ static int pfuze100_set_ramp_delay(struct regulator_dev *rdev, int ramp_delay) · 127 unmodified lines | ||
| 128 | 128 | struct pfuze_chip *pfuze100 = rdev_get_drvdata(rdev); |
| 129 | 129 | int id = rdev_get_id(rdev); |
| 130 | 130 | bool reg_has_ramp_delay; |
| 131 | − unsigned int ramp_bits; | |
| 131 | + unsigned int ramp_bits = 0; | |
| 132 | 132 | int ret; |
| 133 | 133 | |
| 134 | 134 | switch (pfuze100->chip_id) { |
| @@ -149,8 +149,11 @@ static int pfuze100_set_ramp_delay(struct regulator_dev *rdev, int ramp_delay) · 14 unmodified lines | ||
| 149 | 149 | } |
| 150 | 150 | |
| 151 | 151 | if (reg_has_ramp_delay) { |
| 152 | − ramp_delay = 12500 / ramp_delay; | |
| 153 | − ramp_bits = (ramp_delay >> 1) - (ramp_delay >> 3); | |
| 152 | + if (ramp_delay > 0) { | |
| 153 | + ramp_delay = 12500 / ramp_delay; | |
| 154 | + ramp_bits = (ramp_delay >> 1) - (ramp_delay >> 3); | |
| 155 | + } | |
| 156 | + | |
| 154 | 157 | ret = regmap_update_bits(pfuze100->regmap, |
| 155 | 158 | rdev->desc->vsel_reg + 4, |
| 156 | 159 | 0xc0, ramp_bits << 6); |