Re: [PATCH 60/62] gpio: gpio-zynq: Use new GPIO_LINE_DIRECTION

From: Michal Simek
Date: Tue Nov 05 2019 - 05:57:39 EST


On 05. 11. 19 11:40, Matti Vaittinen wrote:
> It's hard for occasional GPIO code reader/writer to know if values 0/1
> equal to IN or OUT. Use defined GPIO_LINE_DIRECTION_IN and
> GPIO_LINE_DIRECTION_OUT to help them out.
>
> Signed-off-by: Matti Vaittinen <matti.vaittinen@xxxxxxxxxxxxxxxxx>
> ---
> drivers/gpio/gpio-zynq.c | 7 +++++--
> 1 file changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpio/gpio-zynq.c b/drivers/gpio/gpio-zynq.c
> index cd475ff4bcad..4c3f6370eab4 100644
> --- a/drivers/gpio/gpio-zynq.c
> +++ b/drivers/gpio/gpio-zynq.c
> @@ -360,7 +360,7 @@ static int zynq_gpio_dir_out(struct gpio_chip *chip, unsigned int pin,
> *
> * This function returns the direction of the specified GPIO.
> *
> - * Return: 0 for output, 1 for input
> + * Return: GPIO_LINE_DIRECTION_OUT or GPIO_LINE_DIRECTION_IN
> */
> static int zynq_gpio_get_direction(struct gpio_chip *chip, unsigned int pin)
> {
> @@ -372,7 +372,10 @@ static int zynq_gpio_get_direction(struct gpio_chip *chip, unsigned int pin)
>
> reg = readl_relaxed(gpio->base_addr + ZYNQ_GPIO_DIRM_OFFSET(bank_num));
>
> - return !(reg & BIT(bank_pin_num));
> + if (reg & BIT(bank_pin_num))
> + return GPIO_LINE_DIRECTION_OUT;
> +
> + return GPIO_LINE_DIRECTION_IN;
> }
>
> /**
>

Reviewed-by: Michal Simek <michal.simek@xxxxxxxxxx>

Thanks,
Michal