diff options
author | Markus Pargmann <mpa@pengutronix.de> | 2015-08-14 16:10:59 +0200 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2015-09-24 10:48:51 -0700 |
commit | c0017ed71966a19ec40c7bc900d4338ddfbc4105 (patch) | |
tree | 7353a78f2cbdd6602f83b23f4a5a99fff5af8ae0 /drivers/gpio/gpiolib.h | |
parent | fd7337fdb9bce420033c28af4c07b73e34e692c1 (diff) | |
download | op-kernel-dev-c0017ed71966a19ec40c7bc900d4338ddfbc4105.zip op-kernel-dev-c0017ed71966a19ec40c7bc900d4338ddfbc4105.tar.gz |
gpio: Introduce gpio descriptor 'name'
The latest gpio hogging mechanism assigns each gpio a 'line-name' in the
devicetree. The 'name' field is different from the 'label' field.
'label' is only used for requested GPIOs to describe its current use by
driver or userspace.
The 'name' field describes the GPIO itself, not the use. This is most
likely identical to the label in the schematic on the GPIO line and
should help to find this particular GPIO.
This is equivalent to the gpiochip->names array. However names should be
stored in the GPIO descriptor. We will use gpiochip->names in the future
only as initializer for the GPIO descriptors for drivers that assign
GPIO names hardcoded. All other GPIO names will be parsed from DT and
directly assigned to the GPIO descriptor.
This patch adds a helper function to find gpio descriptors by name
instead of gpio number.
Signed-off-by: Markus Pargmann <mpa@pengutronix.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'drivers/gpio/gpiolib.h')
-rw-r--r-- | drivers/gpio/gpiolib.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/gpio/gpiolib.h b/drivers/gpio/gpiolib.h index bf34300..78e634d 100644 --- a/drivers/gpio/gpiolib.h +++ b/drivers/gpio/gpiolib.h @@ -89,7 +89,10 @@ struct gpio_desc { #define FLAG_USED_AS_IRQ 9 /* GPIO is connected to an IRQ */ #define FLAG_IS_HOGGED 11 /* GPIO is hogged */ + /* Connection label */ const char *label; + /* Name of the GPIO */ + const char *name; }; int gpiod_request(struct gpio_desc *desc, const char *label); |