Commit b7d0a28a authored by Alexandre Courbot's avatar Alexandre Courbot Committed by Linus Walleij

gpio: rewrite gpiochip_offset_to_desc()

gpiochip_offset_to_desc() was using gpio_to_desc(), which directly
addresses the global GPIO array we are hoping to get rid of someday.
Reimplement it using the descriptor array of the chip itself, after
checking the requested offset is within the valid bounds of the chip.
Signed-off-by: default avatarAlexandre Courbot <acourbot@nvidia.com>
Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
parent a87854da
...@@ -150,9 +150,10 @@ EXPORT_SYMBOL_GPL(gpio_to_desc); ...@@ -150,9 +150,10 @@ EXPORT_SYMBOL_GPL(gpio_to_desc);
static struct gpio_desc *gpiochip_offset_to_desc(struct gpio_chip *chip, static struct gpio_desc *gpiochip_offset_to_desc(struct gpio_chip *chip,
unsigned int offset) unsigned int offset)
{ {
unsigned int gpio = chip->base + offset; if (offset >= chip->ngpio)
return ERR_PTR(-EINVAL);
return gpio_to_desc(gpio); return &chip->desc[offset];
} }
/** /**
......
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