gpiolib: add gpiochip_get_desc() driver function
authorAlexandre Courbot <acourbot@nvidia.com>
Sun, 9 Feb 2014 08:43:54 +0000 (17:43 +0900)
committerSimon Horman <horms+renesas@verge.net.au>
Fri, 5 Dec 2014 04:19:23 +0000 (13:19 +0900)
commit6c14a7f49ac18b8d89dc8f0c9e53986e72540853
tree054f7cc9bcdd4e6d6ad68e1a8e9694ff918d4125
parent2ed33c212f4197fdd29b851fc1f7acda0ad09eff
gpiolib: add gpiochip_get_desc() driver function

Some drivers dealing with a gpio_chip might need to act on its
descriptors directly; one example is pinctrl drivers that need to lock a
GPIO for being used as IRQ using gpiod_lock_as_irq().

This patch exports a gpiochip_get_desc() function that returns the
GPIO descriptor at the requested index. It also sweeps the
gpio_to_chip() function out of the consumer interface since any holder
of a gpio_chip reference can manipulate its GPIOs way beyond what a
consumer should be allowed to do.

As a result, gpio_chip is not visible anymore to simple GPIO consumers.

Signed-off-by: Alexandre Courbot <acourbot@nvidia.com>
Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Reviewed-by: Jean-Jacques Hiblot <jjhiblot@traphandler.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
(cherry picked from commit bb1e88ccb771492ac908ac295ec135efa1d53093)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
drivers/gpio/gpiolib.c
include/linux/gpio/consumer.h
include/linux/gpio/driver.h