diff options
author | Ahmad Fatoum <a.fatoum@pengutronix.de> | 2022-02-20 13:47:14 +0100 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2022-02-23 11:14:45 +0100 |
commit | 817e02dc6fcbd6b3a27fd0b76fc920192c11eea7 (patch) | |
tree | 9768c56c89f0958486f5fcb348184752557866bc /drivers/pinctrl/pinctrl-stm32.c | |
parent | 4c8f76ccf3d15d153893962196d1ff548accddc2 (diff) | |
download | barebox-817e02dc6fcbd6b3a27fd0b76fc920192c11eea7.tar.gz barebox-817e02dc6fcbd6b3a27fd0b76fc920192c11eea7.tar.xz |
pinctrl: stm32: use gpio-ranges instead of alias
Upstream device tree doesn't feature aliases and we don't really need
it, as the gpio-ranges property has a GPIO controller offset cell.
Use it instead.
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Link: https://lore.barebox.org/20220220124736.3052502-3-a.fatoum@pengutronix.de
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'drivers/pinctrl/pinctrl-stm32.c')
-rw-r--r-- | drivers/pinctrl/pinctrl-stm32.c | 14 |
1 files changed, 2 insertions, 12 deletions
diff --git a/drivers/pinctrl/pinctrl-stm32.c b/drivers/pinctrl/pinctrl-stm32.c index ceaa4254c4..cee10636ce 100644 --- a/drivers/pinctrl/pinctrl-stm32.c +++ b/drivers/pinctrl/pinctrl-stm32.c @@ -303,7 +303,7 @@ static int stm32_gpiochip_add(struct stm32_gpio_bank *bank, enum { PINCTRL_PHANDLE, GPIOCTRL_OFFSET, PINCTRL_OFFSET, PINCOUNT, GPIO_RANGE_NCELLS }; const __be32 *gpio_ranges; u32 ngpios; - int id, ret, size; + int ret, size; dev = of_platform_device_create(np, parent); if (!dev) @@ -347,17 +347,7 @@ static int stm32_gpiochip_add(struct stm32_gpio_bank *bank, bank->base = IOMEM(iores->start); - if (dev->id >= 0) { - id = dev->id; - } else { - id = of_alias_get_id(np, "gpio"); - if (id < 0) { - dev_err(dev, "Failed to get GPIO alias\n"); - return id; - } - } - - bank->chip.base = id * STM32_GPIO_PINS_PER_BANK; + bank->chip.base = be32_to_cpu(gpio_ranges[PINCTRL_OFFSET]); bank->chip.ops = &stm32_gpio_ops; bank->chip.dev = dev; bank->clk = clk_get(dev, NULL); |