Commit ac875df4 authored by Krzysztof Kozlowski's avatar Krzysztof Kozlowski

pinctrl: samsung: fix missing GPIOLIB on ARM64 Exynos config

The Samsung pinctrl drivers depend on OF_GPIO, which is part of GPIOLIB.
ARMv7 Exynos platform selects GPIOLIB and Samsung pinctrl drivers. ARMv8
Exynos selects only the latter leading to possible wrong configuration
on ARMv8 build:

  WARNING: unmet direct dependencies detected for PINCTRL_EXYNOS
    Depends on [n]: PINCTRL [=y] && OF_GPIO [=n] && (ARCH_EXYNOS [=y] || ARCH_S5PV210 || COMPILE_TEST [=y])
    Selected by [y]:
    - ARCH_EXYNOS [=y]

Always select the GPIOLIB from the Samsung pinctrl drivers to fix the
issue.  This requires removing of OF_GPIO dependency (to avoid recursive
dependency), so add dependency on OF for COMPILE_TEST cases.
Reported-by: default avatarNecip Fazil Yildiran <fazilyildiran@gmail.com>
Fixes: eed6b3eb ("arm64: Split out platform options to separate Kconfig")
Cc: <stable@vger.kernel.org>
Signed-off-by: default avatarKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Reviewed-by: default avatarArnd Bergmann <arnd@arndb.de>
Link: https://lore.kernel.org/r/20220420141407.470955-1-krzysztof.kozlowski@linaro.org
parent abb860ac
...@@ -17,7 +17,6 @@ menuconfig ARCH_EXYNOS ...@@ -17,7 +17,6 @@ menuconfig ARCH_EXYNOS
select EXYNOS_PMU select EXYNOS_PMU
select EXYNOS_SROM select EXYNOS_SROM
select EXYNOS_PM_DOMAINS if PM_GENERIC_DOMAINS select EXYNOS_PM_DOMAINS if PM_GENERIC_DOMAINS
select GPIOLIB
select HAVE_ARM_ARCH_TIMER if ARCH_EXYNOS5 select HAVE_ARM_ARCH_TIMER if ARCH_EXYNOS5
select HAVE_ARM_SCU if SMP select HAVE_ARM_SCU if SMP
select PINCTRL select PINCTRL
......
...@@ -4,14 +4,13 @@ ...@@ -4,14 +4,13 @@
# #
config PINCTRL_SAMSUNG config PINCTRL_SAMSUNG
bool bool
depends on OF_GPIO select GPIOLIB
select PINMUX select PINMUX
select PINCONF select PINCONF
config PINCTRL_EXYNOS config PINCTRL_EXYNOS
bool "Pinctrl common driver part for Samsung Exynos SoCs" bool "Pinctrl common driver part for Samsung Exynos SoCs"
depends on OF_GPIO depends on ARCH_EXYNOS || ARCH_S5PV210 || (COMPILE_TEST && OF)
depends on ARCH_EXYNOS || ARCH_S5PV210 || COMPILE_TEST
select PINCTRL_SAMSUNG select PINCTRL_SAMSUNG
select PINCTRL_EXYNOS_ARM if ARM && (ARCH_EXYNOS || ARCH_S5PV210) select PINCTRL_EXYNOS_ARM if ARM && (ARCH_EXYNOS || ARCH_S5PV210)
select PINCTRL_EXYNOS_ARM64 if ARM64 && ARCH_EXYNOS select PINCTRL_EXYNOS_ARM64 if ARM64 && ARCH_EXYNOS
...@@ -26,12 +25,10 @@ config PINCTRL_EXYNOS_ARM64 ...@@ -26,12 +25,10 @@ config PINCTRL_EXYNOS_ARM64
config PINCTRL_S3C24XX config PINCTRL_S3C24XX
bool "Samsung S3C24XX SoC pinctrl driver" bool "Samsung S3C24XX SoC pinctrl driver"
depends on OF_GPIO depends on ARCH_S3C24XX || (COMPILE_TEST && OF)
depends on ARCH_S3C24XX || COMPILE_TEST
select PINCTRL_SAMSUNG select PINCTRL_SAMSUNG
config PINCTRL_S3C64XX config PINCTRL_S3C64XX
bool "Samsung S3C64XX SoC pinctrl driver" bool "Samsung S3C64XX SoC pinctrl driver"
depends on OF_GPIO depends on ARCH_S3C64XX || (COMPILE_TEST && OF)
depends on ARCH_S3C64XX || COMPILE_TEST
select PINCTRL_SAMSUNG select PINCTRL_SAMSUNG
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment