[RFC PATCH 2/7] gpio: gpiolib: split the gpiod_configure_flags function
Julien Thierry
julien.thierry at arm.com
Fri Dec 15 01:26:27 PST 2017
Hi Ludovic,
On 14/12/17 14:21, Ludovic Desroches wrote:
> The gpiod_configure_flags function doesn't only configure flags, it
> also performs some processing. It implies that it should be called
> after having requested the GPIO. Split configuration and processing
> to allow flags configuration before requesting the GPIO. It is
> needed if we want to set the pin configuration.
>
> Signed-off-by: Ludovic Desroches <ludovic.desroches at microchip.com>
> ---
> drivers/gpio/gpiolib.c | 49 +++++++++++++++++++++++++++++++------------------
> drivers/gpio/gpiolib.h | 7 ++++++-
> 2 files changed, 37 insertions(+), 19 deletions(-)
>
> diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c
> index 0621baddfddc..c887602ca0ff 100644
> --- a/drivers/gpio/gpiolib.c
> +++ b/drivers/gpio/gpiolib.c
> @@ -3564,23 +3564,9 @@ struct gpio_desc *__must_check gpiod_get_optional(struct device *dev,
> EXPORT_SYMBOL_GPL(gpiod_get_optional);
>
>
> -/**
> - * gpiod_configure_flags - helper function to configure a given GPIO
> - * @desc: gpio whose value will be assigned
> - * @con_id: function within the GPIO consumer
> - * @lflags: gpio_lookup_flags - returned from of_find_gpio() or
> - * of_get_gpio_hog()
> - * @dflags: gpiod_flags - optional GPIO initialization flags
> - *
> - * Return 0 on success, -ENOENT if no GPIO has been assigned to the
> - * requested function and/or index, or another IS_ERR() code if an error
> - * occurred while trying to acquire the GPIO.
> - */
> -int gpiod_configure_flags(struct gpio_desc *desc, const char *con_id,
> +void gpiod_configure_flags(struct gpio_desc *desc, const char *con_id,
> unsigned long lflags, enum gpiod_flags dflags)
> {
> - int status;
> -
> if (lflags & GPIO_ACTIVE_LOW)
> set_bit(FLAG_ACTIVE_LOW, &desc->flags);
>
> @@ -3601,6 +3587,11 @@ int gpiod_configure_flags(struct gpio_desc *desc, const char *con_id,
> if (lflags & GPIO_OPEN_SOURCE)
> set_bit(FLAG_OPEN_SOURCE, &desc->flags);
>
Small issue, I believe the patch is missing a '}' here to properly split
the function.
Otherwise:
Reviewed-by: Julien Thierry <julien.thierry at arm.com>
Cheers,
--
Julien Thierry
More information about the linux-arm-kernel
mailing list