From: Markus Elfring <elfring@xxxxxxxxxxxxxxxxxxxxx> Date: Wed, 1 Nov 2017 21:44:30 +0100 * Adjust jump targets so that a specific error message is stored only once at the end of this function implementation. * Replace three calls of the function "dev_err" by goto statements. * Adjust three condition checks. This issue was detected by using the Coccinelle software. Signed-off-by: Markus Elfring <elfring@xxxxxxxxxxxxxxxxxxxxx> --- drivers/pwm/pwm-twl.c | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/drivers/pwm/pwm-twl.c b/drivers/pwm/pwm-twl.c index b7a45be99815..0367fb8e425b 100644 --- a/drivers/pwm/pwm-twl.c +++ b/drivers/pwm/pwm-twl.c @@ -264,30 +264,29 @@ static void twl6030_pwm_disable(struct pwm_chip *chip, struct pwm_device *pwm) val &= ~TWL6030_PWM_TOGGLE(pwm->hwpwm, TWL6030_PWMXS | TWL6030_PWMXEN); ret = twl_i2c_write_u8(TWL6030_MODULE_ID1, val, TWL6030_TOGGLE3_REG); - if (ret < 0) { - dev_err(chip->dev, "%s: Failed to disable PWM\n", pwm->label); - goto out; - } + if (ret) + goto report_failure; val |= TWL6030_PWM_TOGGLE(pwm->hwpwm, TWL6030_PWMXEN); ret = twl_i2c_write_u8(TWL6030_MODULE_ID1, val, TWL6030_TOGGLE3_REG); - if (ret < 0) { - dev_err(chip->dev, "%s: Failed to disable PWM\n", pwm->label); - goto out; - } + if (ret) + goto report_failure; val &= ~TWL6030_PWM_TOGGLE(pwm->hwpwm, TWL6030_PWMXEN); ret = twl_i2c_write_u8(TWL6030_MODULE_ID1, val, TWL6030_TOGGLE3_REG); - if (ret < 0) { - dev_err(chip->dev, "%s: Failed to disable PWM\n", pwm->label); - goto out; - } + if (ret) + goto report_failure; twl->twl6030_toggle3 = val; -out: +unlock: mutex_unlock(&twl->mutex); + return; + +report_failure: + dev_err(chip->dev, "%s: Failed to disable PWM\n", pwm->label); + goto unlock; } static const struct pwm_ops twl4030_pwm_ops = { -- 2.14.3 -- To unsubscribe from this list: send the line "unsubscribe kernel-janitors" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html