Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1589644

[PATCH v2] pinctrl: samsung: Calculate GPIO base for pinctrl_add_gpio_range

From Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
Newsgroups linux.kernel
Subject [PATCH v2] pinctrl: samsung: Calculate GPIO base for pinctrl_add_gpio_range
Date 2017-02-28 18:30 +0100
Message-ID <tfTL4-7Al-21@gated-at.bofh.it> (permalink)
References <tfLXc-2mX-13@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


As the pinctrl is now added before the GPIOs are registered we need to
manually calculate what the GPIO base will be, otherwise the base for
each gpio_range will be set to zero. Fortunately the driver
already assigns a GPIO base, in samsung_gpiolib_register, and uses the
same calculation it does for the pin_base. Meaning the two will always
be the same and allowing us to reuse the pinbase and avoid the issue.

Signed-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
---

Changes since v1:
 - Use grange.base in samsung_gpiolib_register to make it more
   clear the two are related in the driver.

Thanks,
Charles


 drivers/pinctrl/samsung/pinctrl-samsung.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/pinctrl/samsung/pinctrl-samsung.c b/drivers/pinctrl/samsung/pinctrl-samsung.c
index ddc8d6b..27d5157 100644
--- a/drivers/pinctrl/samsung/pinctrl-samsung.c
+++ b/drivers/pinctrl/samsung/pinctrl-samsung.c
@@ -882,7 +882,7 @@ static int samsung_pinctrl_register(struct platform_device *pdev,
 		pin_bank->grange.id = bank;
 		pin_bank->grange.pin_base = drvdata->pin_base
 						+ pin_bank->pin_base;
-		pin_bank->grange.base = pin_bank->gpio_chip.base;
+		pin_bank->grange.base = pin_bank->grange.pin_base;
 		pin_bank->grange.npins = pin_bank->gpio_chip.ngpio;
 		pin_bank->grange.gc = &pin_bank->gpio_chip;
 		pinctrl_add_gpio_range(drvdata->pctl_dev, &pin_bank->grange);
@@ -928,7 +928,7 @@ static int samsung_gpiolib_register(struct platform_device *pdev,
 		bank->gpio_chip = samsung_gpiolib_chip;
 
 		gc = &bank->gpio_chip;
-		gc->base = drvdata->pin_base + bank->pin_base;
+		gc->base = bank->grange.base;
 		gc->ngpio = bank->nr_pins;
 		gc->parent = &pdev->dev;
 		gc->of_node = bank->of_node;
-- 
2.1.4

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH v2 1/4] pinctrl: Fix trivial spelling typo in a comment Charles Keepax <ckeepax@opensource.wolfsonmicro.com> - 2017-02-16 14:30 +0100
  [PATCH v2 4/4] pinctrl: samsung: Use devres version of gpiochip_add_data Charles Keepax <ckeepax@opensource.wolfsonmicro.com> - 2017-02-16 14:30 +0100
    Re: [PATCH v2 4/4] pinctrl: samsung: Use devres version of  gpiochip_add_data Krzysztof Kozlowski <krzk@kernel.org> - 2017-02-17 14:40 +0100
      Re: [PATCH v2 4/4] pinctrl: samsung: Use devres version of  gpiochip_add_data Charles Keepax <ckeepax@opensource.wolfsonmicro.com> - 2017-02-17 15:00 +0100
  [PATCH v2 2/4] pinctrl: samsung: Register pinctrl before GPIO Charles Keepax <ckeepax@opensource.wolfsonmicro.com> - 2017-02-16 14:30 +0100
    Re: [PATCH v2 2/4] pinctrl: samsung: Register pinctrl before GPIO Linus Walleij <linus.walleij@linaro.org> - 2017-02-22 15:40 +0100
      Re: [PATCH v2 2/4] pinctrl: samsung: Register pinctrl before GPIO Charles Keepax <ckeepax@opensource.wolfsonmicro.com> - 2017-02-23 18:30 +0100
        [PATCH] pinctrl: samsung: Calculate GPIO base for pinctrl_add_gpio_range Charles Keepax <ckeepax@opensource.wolfsonmicro.com> - 2017-02-23 19:00 +0100
          Re: [PATCH] pinctrl: samsung: Calculate GPIO base for pinctrl_add_gpio_range Tomasz Figa <tomasz.figa@gmail.com> - 2017-02-27 03:20 +0100
            Re: [PATCH] pinctrl: samsung: Calculate GPIO base for  pinctrl_add_gpio_range Charles Keepax <ckeepax@opensource.wolfsonmicro.com> - 2017-02-28 10:10 +0100
              [PATCH v2] pinctrl: samsung: Calculate GPIO base for pinctrl_add_gpio_range Charles Keepax <ckeepax@opensource.wolfsonmicro.com> - 2017-02-28 18:30 +0100
                Re: [PATCH v2] pinctrl: samsung: Calculate GPIO base for pinctrl_add_gpio_range Tomasz Figa <tomasz.figa@gmail.com> - 2017-03-04 12:30 +0100
                Re: [PATCH v2] pinctrl: samsung: Calculate GPIO base for  pinctrl_add_gpio_range Charles Keepax <ckeepax@opensource.wolfsonmicro.com> - 2017-03-06 17:50 +0100

csiph-web