2023-10-03 14:52:02

by Bartosz Golaszewski

[permalink] [raw]
Subject: [PATCH 08/36] gpio: aspeed: use new pinctrl GPIO helpers

From: Bartosz Golaszewski <[email protected]>

Replace the pinctrl helpers taking the global GPIO number as argument
with the improved variants that instead take a pointer to the GPIO chip
and the controller-relative offset.

Signed-off-by: Bartosz Golaszewski <[email protected]>
---
drivers/gpio/gpio-aspeed.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/gpio/gpio-aspeed.c b/drivers/gpio/gpio-aspeed.c
index da33bbbdacb9..d3aa1cfd4ace 100644
--- a/drivers/gpio/gpio-aspeed.c
+++ b/drivers/gpio/gpio-aspeed.c
@@ -750,12 +750,12 @@ static int aspeed_gpio_request(struct gpio_chip *chip, unsigned int offset)
if (!have_gpio(gpiochip_get_data(chip), offset))
return -ENODEV;

- return pinctrl_gpio_request(chip->base + offset);
+ return pinctrl_gpio_request_new(chip, offset);
}

static void aspeed_gpio_free(struct gpio_chip *chip, unsigned int offset)
{
- pinctrl_gpio_free(chip->base + offset);
+ pinctrl_gpio_free_new(chip, offset);
}

static int usecs_to_cycles(struct aspeed_gpio *gpio, unsigned long usecs,
@@ -973,7 +973,7 @@ static int aspeed_gpio_set_config(struct gpio_chip *chip, unsigned int offset,
else if (param == PIN_CONFIG_BIAS_DISABLE ||
param == PIN_CONFIG_BIAS_PULL_DOWN ||
param == PIN_CONFIG_DRIVE_STRENGTH)
- return pinctrl_gpio_set_config(offset, config);
+ return pinctrl_gpio_set_config_new(chip, offset, config);
else if (param == PIN_CONFIG_DRIVE_OPEN_DRAIN ||
param == PIN_CONFIG_DRIVE_OPEN_SOURCE)
/* Return -ENOTSUPP to trigger emulation, as per datasheet */
--
2.39.2


2023-10-03 23:31:05

by Andrew Jeffery

[permalink] [raw]
Subject: Re: [PATCH 08/36] gpio: aspeed: use new pinctrl GPIO helpers

On Tue, 2023-10-03 at 16:50 +0200, Bartosz Golaszewski wrote:
> From: Bartosz Golaszewski <[email protected]>
>
> Replace the pinctrl helpers taking the global GPIO number as argument
> with the improved variants that instead take a pointer to the GPIO chip
> and the controller-relative offset.
>
> Signed-off-by: Bartosz Golaszewski <[email protected]>
> ---
> drivers/gpio/gpio-aspeed.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpio/gpio-aspeed.c b/drivers/gpio/gpio-aspeed.c
> index da33bbbdacb9..d3aa1cfd4ace 100644
> --- a/drivers/gpio/gpio-aspeed.c
> +++ b/drivers/gpio/gpio-aspeed.c
> @@ -750,12 +750,12 @@ static int aspeed_gpio_request(struct gpio_chip *chip, unsigned int offset)
> if (!have_gpio(gpiochip_get_data(chip), offset))
> return -ENODEV;
>
> - return pinctrl_gpio_request(chip->base + offset);
> + return pinctrl_gpio_request_new(chip, offset);
> }
>
> static void aspeed_gpio_free(struct gpio_chip *chip, unsigned int offset)
> {
> - pinctrl_gpio_free(chip->base + offset);
> + pinctrl_gpio_free_new(chip, offset);
> }
>
> static int usecs_to_cycles(struct aspeed_gpio *gpio, unsigned long usecs,
> @@ -973,7 +973,7 @@ static int aspeed_gpio_set_config(struct gpio_chip *chip, unsigned int offset,
> else if (param == PIN_CONFIG_BIAS_DISABLE ||
> param == PIN_CONFIG_BIAS_PULL_DOWN ||
> param == PIN_CONFIG_DRIVE_STRENGTH)
> - return pinctrl_gpio_set_config(offset, config);
> + return pinctrl_gpio_set_config_new(chip, offset, config);

Ah, this looks like it removes a bug too. Nice.

Reviewed-by: Andrew Jeffery <[email protected]>

> else if (param == PIN_CONFIG_DRIVE_OPEN_DRAIN ||
> param == PIN_CONFIG_DRIVE_OPEN_SOURCE)
> /* Return -ENOTSUPP to trigger emulation, as per datasheet */

2023-10-04 07:14:11

by Bartosz Golaszewski

[permalink] [raw]
Subject: Re: [PATCH 08/36] gpio: aspeed: use new pinctrl GPIO helpers

On Wed, Oct 4, 2023 at 1:30 AM Andrew Jeffery
<[email protected]> wrote:
>
> On Tue, 2023-10-03 at 16:50 +0200, Bartosz Golaszewski wrote:
> > From: Bartosz Golaszewski <[email protected]>
> >
> > Replace the pinctrl helpers taking the global GPIO number as argument
> > with the improved variants that instead take a pointer to the GPIO chip
> > and the controller-relative offset.
> >
> > Signed-off-by: Bartosz Golaszewski <[email protected]>
> > ---
> > drivers/gpio/gpio-aspeed.c | 6 +++---
> > 1 file changed, 3 insertions(+), 3 deletions(-)
> >
> > diff --git a/drivers/gpio/gpio-aspeed.c b/drivers/gpio/gpio-aspeed.c
> > index da33bbbdacb9..d3aa1cfd4ace 100644
> > --- a/drivers/gpio/gpio-aspeed.c
> > +++ b/drivers/gpio/gpio-aspeed.c
> > @@ -750,12 +750,12 @@ static int aspeed_gpio_request(struct gpio_chip *chip, unsigned int offset)
> > if (!have_gpio(gpiochip_get_data(chip), offset))
> > return -ENODEV;
> >
> > - return pinctrl_gpio_request(chip->base + offset);
> > + return pinctrl_gpio_request_new(chip, offset);
> > }
> >
> > static void aspeed_gpio_free(struct gpio_chip *chip, unsigned int offset)
> > {
> > - pinctrl_gpio_free(chip->base + offset);
> > + pinctrl_gpio_free_new(chip, offset);
> > }
> >
> > static int usecs_to_cycles(struct aspeed_gpio *gpio, unsigned long usecs,
> > @@ -973,7 +973,7 @@ static int aspeed_gpio_set_config(struct gpio_chip *chip, unsigned int offset,
> > else if (param == PIN_CONFIG_BIAS_DISABLE ||
> > param == PIN_CONFIG_BIAS_PULL_DOWN ||
> > param == PIN_CONFIG_DRIVE_STRENGTH)
> > - return pinctrl_gpio_set_config(offset, config);
> > + return pinctrl_gpio_set_config_new(chip, offset, config);
>
> Ah, this looks like it removes a bug too. Nice.
>
> Reviewed-by: Andrew Jeffery <[email protected]>
>
> > else if (param == PIN_CONFIG_DRIVE_OPEN_DRAIN ||
> > param == PIN_CONFIG_DRIVE_OPEN_SOURCE)
> > /* Return -ENOTSUPP to trigger emulation, as per datasheet */
>

I sent a separate patch that fixes this issue for backporting, once
the other one is in next, we can update this series.

Bart

2023-10-09 09:46:00

by Uwe Kleine-König

[permalink] [raw]
Subject: Re: [PATCH 08/36] gpio: aspeed: use new pinctrl GPIO helpers

On Tue, Oct 03, 2023 at 04:50:46PM +0200, Bartosz Golaszewski wrote:
> From: Bartosz Golaszewski <[email protected]>
>
> Replace the pinctrl helpers taking the global GPIO number as argument
> with the improved variants that instead take a pointer to the GPIO chip
> and the controller-relative offset.
>
> Signed-off-by: Bartosz Golaszewski <[email protected]>

LGTM,

Acked-by: Uwe Kleine-K?nig <[email protected]>

Thanks
Uwe

--
Pengutronix e.K. | Uwe Kleine-K?nig |
Industrial Linux Solutions | https://www.pengutronix.de/ |


Attachments:
(No filename) (644.00 B)
signature.asc (499.00 B)
Download all attachments