diff options
author | Carlo Caione <carlo@endlessm.com> | 2015-05-17 11:57:38 -0400 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2015-05-19 05:40:52 -0400 |
commit | 984cffdeaeb7ea5a21f49a89f638d84d62d08992 (patch) | |
tree | 1251eeeeed538d8ba92b9f2788be9fdf817f40b5 | |
parent | 75e9143927a893aebad18b79e1bbeff4892c0d35 (diff) |
pinctrl: Fix gpio/pin mapping for Meson8b
The num_pins field in the struct meson_domain_data must include also the
missing pins in the Meson8b SoC, otherwise the GPIO <-> pin mapping is
broken on this platform. Avoid also the dinamic allocation for GPIOs.
Signed-off-by: Carlo Caione <carlo@endlessm.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-rw-r--r-- | drivers/pinctrl/meson/pinctrl-meson.c | 2 | ||||
-rw-r--r-- | drivers/pinctrl/meson/pinctrl-meson8b.c | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/drivers/pinctrl/meson/pinctrl-meson.c b/drivers/pinctrl/meson/pinctrl-meson.c index edcd140e0899..a70a5fe79d44 100644 --- a/drivers/pinctrl/meson/pinctrl-meson.c +++ b/drivers/pinctrl/meson/pinctrl-meson.c | |||
@@ -569,7 +569,7 @@ static int meson_gpiolib_register(struct meson_pinctrl *pc) | |||
569 | domain->chip.direction_output = meson_gpio_direction_output; | 569 | domain->chip.direction_output = meson_gpio_direction_output; |
570 | domain->chip.get = meson_gpio_get; | 570 | domain->chip.get = meson_gpio_get; |
571 | domain->chip.set = meson_gpio_set; | 571 | domain->chip.set = meson_gpio_set; |
572 | domain->chip.base = -1; | 572 | domain->chip.base = domain->data->pin_base; |
573 | domain->chip.ngpio = domain->data->num_pins; | 573 | domain->chip.ngpio = domain->data->num_pins; |
574 | domain->chip.can_sleep = false; | 574 | domain->chip.can_sleep = false; |
575 | domain->chip.of_node = domain->of_node; | 575 | domain->chip.of_node = domain->of_node; |
diff --git a/drivers/pinctrl/meson/pinctrl-meson8b.c b/drivers/pinctrl/meson/pinctrl-meson8b.c index 2f7ea6229880..9677807db364 100644 --- a/drivers/pinctrl/meson/pinctrl-meson8b.c +++ b/drivers/pinctrl/meson/pinctrl-meson8b.c | |||
@@ -876,13 +876,13 @@ static struct meson_domain_data meson8b_domain_data[] = { | |||
876 | .banks = meson8b_banks, | 876 | .banks = meson8b_banks, |
877 | .num_banks = ARRAY_SIZE(meson8b_banks), | 877 | .num_banks = ARRAY_SIZE(meson8b_banks), |
878 | .pin_base = 0, | 878 | .pin_base = 0, |
879 | .num_pins = 83, | 879 | .num_pins = 130, |
880 | }, | 880 | }, |
881 | { | 881 | { |
882 | .name = "ao-bank", | 882 | .name = "ao-bank", |
883 | .banks = meson8b_ao_banks, | 883 | .banks = meson8b_ao_banks, |
884 | .num_banks = ARRAY_SIZE(meson8b_ao_banks), | 884 | .num_banks = ARRAY_SIZE(meson8b_ao_banks), |
885 | .pin_base = 83, | 885 | .pin_base = 130, |
886 | .num_pins = 16, | 886 | .num_pins = 16, |
887 | }, | 887 | }, |
888 | }; | 888 | }; |