mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-03-07 04:11:03 +07:00
gpio: mb86s70: Return error if requesting an already assigned gpio
Signed-off-by: Axel Lin <axel.lin@ingics.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
This commit is contained in:
parent
c517d838eb
commit
fd9c963c56
@ -58,6 +58,11 @@ static int mb86s70_gpio_request(struct gpio_chip *gc, unsigned gpio)
|
|||||||
spin_lock_irqsave(&gchip->lock, flags);
|
spin_lock_irqsave(&gchip->lock, flags);
|
||||||
|
|
||||||
val = readl(gchip->base + PFR(gpio));
|
val = readl(gchip->base + PFR(gpio));
|
||||||
|
if (!(val & OFFSET(gpio))) {
|
||||||
|
spin_unlock_irqrestore(&gchip->lock, flags);
|
||||||
|
return -EINVAL;
|
||||||
|
}
|
||||||
|
|
||||||
val &= ~OFFSET(gpio);
|
val &= ~OFFSET(gpio);
|
||||||
writel(val, gchip->base + PFR(gpio));
|
writel(val, gchip->base + PFR(gpio));
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user