pinctrl: change the signature of pinctrl_gpio_direction()

Modify pinctrl_gpio_direction() to be in line with public GPIO helpers
and take a pair of GPIO chip & offset as arguments.

Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
This commit is contained in:
Bartosz Golaszewski 2023-10-10 15:32:52 +02:00
parent acf2981b84
commit 315c4418ac

View File

@ -850,14 +850,16 @@ void pinctrl_gpio_free(struct gpio_chip *gc, unsigned int offset)
} }
EXPORT_SYMBOL_GPL(pinctrl_gpio_free); EXPORT_SYMBOL_GPL(pinctrl_gpio_free);
static int pinctrl_gpio_direction(unsigned gpio, bool input) static int pinctrl_gpio_direction(struct gpio_chip *gc, unsigned int offset,
bool input)
{ {
struct pinctrl_dev *pctldev; struct pinctrl_dev *pctldev;
struct pinctrl_gpio_range *range; struct pinctrl_gpio_range *range;
int ret; int ret;
int pin; int pin;
ret = pinctrl_get_device_gpio_range(gpio, &pctldev, &range); ret = pinctrl_get_device_gpio_range(gc->base + offset, &pctldev,
&range);
if (ret) { if (ret) {
return ret; return ret;
} }
@ -865,7 +867,7 @@ static int pinctrl_gpio_direction(unsigned gpio, bool input)
mutex_lock(&pctldev->mutex); mutex_lock(&pctldev->mutex);
/* Convert to the pin controllers number space */ /* Convert to the pin controllers number space */
pin = gpio_to_pin(range, gpio); pin = gpio_to_pin(range, gc->base + offset);
ret = pinmux_gpio_direction(pctldev, range, pin, input); ret = pinmux_gpio_direction(pctldev, range, pin, input);
mutex_unlock(&pctldev->mutex); mutex_unlock(&pctldev->mutex);
@ -884,7 +886,7 @@ static int pinctrl_gpio_direction(unsigned gpio, bool input)
*/ */
int pinctrl_gpio_direction_input(struct gpio_chip *gc, unsigned int offset) int pinctrl_gpio_direction_input(struct gpio_chip *gc, unsigned int offset)
{ {
return pinctrl_gpio_direction(gc->base + offset, true); return pinctrl_gpio_direction(gc, offset, true);
} }
EXPORT_SYMBOL_GPL(pinctrl_gpio_direction_input); EXPORT_SYMBOL_GPL(pinctrl_gpio_direction_input);
@ -899,7 +901,7 @@ EXPORT_SYMBOL_GPL(pinctrl_gpio_direction_input);
*/ */
int pinctrl_gpio_direction_output(struct gpio_chip *gc, unsigned int offset) int pinctrl_gpio_direction_output(struct gpio_chip *gc, unsigned int offset)
{ {
return pinctrl_gpio_direction(gc->base + offset, false); return pinctrl_gpio_direction(gc, offset, false);
} }
EXPORT_SYMBOL_GPL(pinctrl_gpio_direction_output); EXPORT_SYMBOL_GPL(pinctrl_gpio_direction_output);