Commit 5ac9d2df authored by Markus Elfring's avatar Markus Elfring Committed by Linus Walleij

gpio-adnp: Use common error handling code in adnp_gpio_dbg_show()

Add a jump target so that a bit of exception handling can be better reused
at the end of this function.

This issue was detected by using the Coccinelle software.
Signed-off-by: default avatarMarkus Elfring <elfring@users.sourceforge.net>
Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
parent 5a24d4b6
...@@ -192,28 +192,20 @@ static void adnp_gpio_dbg_show(struct seq_file *s, struct gpio_chip *chip) ...@@ -192,28 +192,20 @@ static void adnp_gpio_dbg_show(struct seq_file *s, struct gpio_chip *chip)
mutex_lock(&adnp->i2c_lock); mutex_lock(&adnp->i2c_lock);
err = adnp_read(adnp, GPIO_DDR(adnp) + i, &ddr); err = adnp_read(adnp, GPIO_DDR(adnp) + i, &ddr);
if (err < 0) { if (err < 0)
mutex_unlock(&adnp->i2c_lock); goto unlock;
return;
}
err = adnp_read(adnp, GPIO_PLR(adnp) + i, &plr); err = adnp_read(adnp, GPIO_PLR(adnp) + i, &plr);
if (err < 0) { if (err < 0)
mutex_unlock(&adnp->i2c_lock); goto unlock;
return;
}
err = adnp_read(adnp, GPIO_IER(adnp) + i, &ier); err = adnp_read(adnp, GPIO_IER(adnp) + i, &ier);
if (err < 0) { if (err < 0)
mutex_unlock(&adnp->i2c_lock); goto unlock;
return;
}
err = adnp_read(adnp, GPIO_ISR(adnp) + i, &isr); err = adnp_read(adnp, GPIO_ISR(adnp) + i, &isr);
if (err < 0) { if (err < 0)
mutex_unlock(&adnp->i2c_lock); goto unlock;
return;
}
mutex_unlock(&adnp->i2c_lock); mutex_unlock(&adnp->i2c_lock);
...@@ -240,6 +232,11 @@ static void adnp_gpio_dbg_show(struct seq_file *s, struct gpio_chip *chip) ...@@ -240,6 +232,11 @@ static void adnp_gpio_dbg_show(struct seq_file *s, struct gpio_chip *chip)
direction, level, interrupt, pending); direction, level, interrupt, pending);
} }
} }
return;
unlock:
mutex_unlock(&adnp->i2c_lock);
} }
static int adnp_gpio_setup(struct adnp *adnp, unsigned int num_gpios) static int adnp_gpio_setup(struct adnp *adnp, unsigned int num_gpios)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment