This config option is required to make use of a newer pinctrl driver on
exynos 5 platforms. It is enabled per default to ensure older devices
can still use this driver.

Signed-off-by: Lukas Timmermann <[email protected]>
---

 arch/arm/mach-exynos/pinmux.c | 18 ++++++++++++++++++
 drivers/gpio/Kconfig          |  7 +++++++
 drivers/gpio/Makefile         |  2 +-
 3 files changed, 26 insertions(+), 1 deletion(-)

diff --git a/arch/arm/mach-exynos/pinmux.c b/arch/arm/mach-exynos/pinmux.c
index 48c325190d5..77c831b8684 100644
--- a/arch/arm/mach-exynos/pinmux.c
+++ b/arch/arm/mach-exynos/pinmux.c
@@ -934,3 +934,21 @@ int pinmux_decode_periph_id(const void *blob, int node)
        return PERIPH_ID_NONE;
 }
 #endif
+
+#if !CONFIG_IS_ENABLED(S5P_GPIO)
+
+/* Add stub functions if s5p_gpio driver isn't enabled */
+
+void gpio_set_pull(int pin, int pull)
+{
+}
+
+void gpio_set_drv(int pin, int drv)
+{
+}
+
+void gpio_cfg_pin(int pin, int cfg)
+{
+}
+
+#endif
diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig
index 58e464106a3..2c09fb7a65d 100644
--- a/drivers/gpio/Kconfig
+++ b/drivers/gpio/Kconfig
@@ -724,5 +724,12 @@ config MPFS_GPIO
        depends on DM_GPIO
        help
                Enable to support the GPIO driver on Polarfire SoC
+config S5P_GPIO
+       default y
+       bool "Samsung S5P GPIO driver"
+       depends on DM_GPIO && S5P
+       help
+         Support GPIO controllers on Samsung Exynos 5 family of SoCs.
+         This driver doesn't support upstream Linux device tree bindings.
 
 endif
diff --git a/drivers/gpio/Makefile b/drivers/gpio/Makefile
index 83e10c79b91..5555ed27b14 100644
--- a/drivers/gpio/Makefile
+++ b/drivers/gpio/Makefile
@@ -35,7 +35,7 @@ obj-$(CONFIG_PCA953X)         += pca953x.o
 obj-$(CONFIG_ROCKCHIP_GPIO)    += rk_gpio.o
 obj-$(CONFIG_RCAR_GPIO)                += gpio-rcar.o
 obj-$(CONFIG_RZA1_GPIO)                += gpio-rza1.o
-obj-$(CONFIG_S5P)              += s5p_gpio.o
+obj-$(CONFIG_S5P_GPIO)         += s5p_gpio.o
 obj-$(CONFIG_SANDBOX_GPIO)     += sandbox.o sandbox_test.o
 obj-$(CONFIG_TEGRA_GPIO)       += tegra_gpio.o
 obj-$(CONFIG_TEGRA186_GPIO)    += tegra186_gpio.o
-- 
2.51.0

Reply via email to