]> git.ipfire.org Git - people/arne_f/kernel.git/commitdiff
pinctrl: meson: meson8: fix the GPIO function for the GPIOAO pins
authorMartin Blumenstingl <martin.blumenstingl@googlemail.com>
Sun, 9 Dec 2018 19:50:50 +0000 (20:50 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 12 Feb 2019 18:46:07 +0000 (19:46 +0100)
[ Upstream commit 42f9b48cc5402be11d2364275eb18c257d2a79e8 ]

The GPIOAO pins (as well as the two exotic GPIO_BSD_EN and GPIO_TEST_N)
only belong to the pin controller in the AO domain. With the current
definition these pins cannot be referred to in .dts files as group
(which is possible on GXBB and GXL for example).

Add a separate "gpio_aobus" function to fix the mapping between the pin
controller and the GPIO pins in the AO domain. This is similar to how
the GXBB and GXL drivers implement this functionality.

Fixes: 9dab1868ec0db4 ("pinctrl: amlogic: Make driver independent from two-domain configuration")
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/pinctrl/meson/pinctrl-meson8.c

index 970f6f14502ca1487ace52009eb83af307da07be..591b01657378e82f97bb9738b825336fdec13dc7 100644 (file)
@@ -808,7 +808,9 @@ static const char * const gpio_groups[] = {
        "BOOT_5", "BOOT_6", "BOOT_7", "BOOT_8", "BOOT_9",
        "BOOT_10", "BOOT_11", "BOOT_12", "BOOT_13", "BOOT_14",
        "BOOT_15", "BOOT_16", "BOOT_17", "BOOT_18",
+};
 
+static const char * const gpio_aobus_groups[] = {
        "GPIOAO_0", "GPIOAO_1", "GPIOAO_2", "GPIOAO_3",
        "GPIOAO_4", "GPIOAO_5", "GPIOAO_6", "GPIOAO_7",
        "GPIOAO_8", "GPIOAO_9", "GPIOAO_10", "GPIOAO_11",
@@ -1030,6 +1032,7 @@ static struct meson_pmx_func meson8_cbus_functions[] = {
 };
 
 static struct meson_pmx_func meson8_aobus_functions[] = {
+       FUNCTION(gpio_aobus),
        FUNCTION(uart_ao),
        FUNCTION(remote),
        FUNCTION(i2c_slave_ao),