Commit be117ca3 authored by John Stultz's avatar John Stultz Committed by Linus Walleij

pinctrl: qcom: Kconfig: Rework PINCTRL_MSM to be a depenency rather then a selected config

This patch reworks PINCTRL_MSM to be a visible option, and
instead of having the various SoC specific drivers select
PINCTRL_MSM, this switches those configs to depend on
PINCTRL_MSM.

This is useful, as it will be needed in order to cleanly support
having the qcom-scm driver, which pinctrl-msm calls into,
configured as a module. Without this change, we would eventually
have to add dependency lines to every config that selects
PINCTRL_MSM, and that would becomes a maintenance headache.

We also add PINCTRL_MSM to the arm64 defconfig to avoid
surprises as otherwise PINCTRL_MSM/IPQ* options previously
enabled, will be off.
Signed-off-by: default avatarJohn Stultz <john.stultz@linaro.org>
Reviewed-by: default avatarBjorn Andersson <bjorn.andersson@linaro.org>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will@kernel.org>
Cc: Andy Gross <agross@kernel.org>
Cc: Bjorn Andersson <bjorn.andersson@linaro.org>
Cc: Joerg Roedel <joro@8bytes.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Marc Zyngier <maz@kernel.org>
Cc: Linus Walleij <linus.walleij@linaro.org>
Cc: Vinod Koul <vkoul@kernel.org>
Cc: Kalle Valo <kvalo@codeaurora.org>
Cc: Maulik Shah <mkshah@codeaurora.org>
Cc: Lina Iyer <ilina@codeaurora.org>
Cc: Saravana Kannan <saravanak@google.com>
Cc: Todd Kjos <tkjos@google.com>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: linux-arm-msm@vger.kernel.org
Cc: iommu@lists.linux-foundation.org
Cc: linux-gpio@vger.kernel.org
Link: https://lore.kernel.org/r/20201106042710.55979-1-john.stultz@linaro.orgSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
parent 39cc1d33
...@@ -483,6 +483,7 @@ CONFIG_PINCTRL_IMX8MP=y ...@@ -483,6 +483,7 @@ CONFIG_PINCTRL_IMX8MP=y
CONFIG_PINCTRL_IMX8MQ=y CONFIG_PINCTRL_IMX8MQ=y
CONFIG_PINCTRL_IMX8QXP=y CONFIG_PINCTRL_IMX8QXP=y
CONFIG_PINCTRL_IMX8DXL=y CONFIG_PINCTRL_IMX8DXL=y
CONFIG_PINCTRL_MSM=y
CONFIG_PINCTRL_IPQ8074=y CONFIG_PINCTRL_IPQ8074=y
CONFIG_PINCTRL_IPQ6018=y CONFIG_PINCTRL_IPQ6018=y
CONFIG_PINCTRL_MSM8916=y CONFIG_PINCTRL_MSM8916=y
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
if (ARCH_QCOM || COMPILE_TEST) if (ARCH_QCOM || COMPILE_TEST)
config PINCTRL_MSM config PINCTRL_MSM
bool bool "Qualcomm core pin controller driver"
select PINMUX select PINMUX
select PINCONF select PINCONF
select GENERIC_PINCONF select GENERIC_PINCONF
...@@ -13,7 +13,7 @@ config PINCTRL_MSM ...@@ -13,7 +13,7 @@ config PINCTRL_MSM
config PINCTRL_APQ8064 config PINCTRL_APQ8064
tristate "Qualcomm APQ8064 pin controller driver" tristate "Qualcomm APQ8064 pin controller driver"
depends on GPIOLIB && OF depends on GPIOLIB && OF
select PINCTRL_MSM depends on PINCTRL_MSM
help help
This is the pinctrl, pinmux, pinconf and gpiolib driver for the This is the pinctrl, pinmux, pinconf and gpiolib driver for the
Qualcomm TLMM block found in the Qualcomm APQ8064 platform. Qualcomm TLMM block found in the Qualcomm APQ8064 platform.
...@@ -21,7 +21,7 @@ config PINCTRL_APQ8064 ...@@ -21,7 +21,7 @@ config PINCTRL_APQ8064
config PINCTRL_APQ8084 config PINCTRL_APQ8084
tristate "Qualcomm APQ8084 pin controller driver" tristate "Qualcomm APQ8084 pin controller driver"
depends on GPIOLIB && OF depends on GPIOLIB && OF
select PINCTRL_MSM depends on PINCTRL_MSM
help help
This is the pinctrl, pinmux, pinconf and gpiolib driver for the This is the pinctrl, pinmux, pinconf and gpiolib driver for the
Qualcomm TLMM block found in the Qualcomm APQ8084 platform. Qualcomm TLMM block found in the Qualcomm APQ8084 platform.
...@@ -29,7 +29,7 @@ config PINCTRL_APQ8084 ...@@ -29,7 +29,7 @@ config PINCTRL_APQ8084
config PINCTRL_IPQ4019 config PINCTRL_IPQ4019
tristate "Qualcomm IPQ4019 pin controller driver" tristate "Qualcomm IPQ4019 pin controller driver"
depends on GPIOLIB && OF depends on GPIOLIB && OF
select PINCTRL_MSM depends on PINCTRL_MSM
help help
This is the pinctrl, pinmux, pinconf and gpiolib driver for the This is the pinctrl, pinmux, pinconf and gpiolib driver for the
Qualcomm TLMM block found in the Qualcomm IPQ4019 platform. Qualcomm TLMM block found in the Qualcomm IPQ4019 platform.
...@@ -37,7 +37,7 @@ config PINCTRL_IPQ4019 ...@@ -37,7 +37,7 @@ config PINCTRL_IPQ4019
config PINCTRL_IPQ8064 config PINCTRL_IPQ8064
tristate "Qualcomm IPQ8064 pin controller driver" tristate "Qualcomm IPQ8064 pin controller driver"
depends on GPIOLIB && OF depends on GPIOLIB && OF
select PINCTRL_MSM depends on PINCTRL_MSM
help help
This is the pinctrl, pinmux, pinconf and gpiolib driver for the This is the pinctrl, pinmux, pinconf and gpiolib driver for the
Qualcomm TLMM block found in the Qualcomm IPQ8064 platform. Qualcomm TLMM block found in the Qualcomm IPQ8064 platform.
...@@ -45,7 +45,7 @@ config PINCTRL_IPQ8064 ...@@ -45,7 +45,7 @@ config PINCTRL_IPQ8064
config PINCTRL_IPQ8074 config PINCTRL_IPQ8074
tristate "Qualcomm Technologies, Inc. IPQ8074 pin controller driver" tristate "Qualcomm Technologies, Inc. IPQ8074 pin controller driver"
depends on GPIOLIB && OF depends on GPIOLIB && OF
select PINCTRL_MSM depends on PINCTRL_MSM
help help
This is the pinctrl, pinmux, pinconf and gpiolib driver for This is the pinctrl, pinmux, pinconf and gpiolib driver for
the Qualcomm Technologies Inc. TLMM block found on the the Qualcomm Technologies Inc. TLMM block found on the
...@@ -55,7 +55,7 @@ config PINCTRL_IPQ8074 ...@@ -55,7 +55,7 @@ config PINCTRL_IPQ8074
config PINCTRL_IPQ6018 config PINCTRL_IPQ6018
tristate "Qualcomm Technologies, Inc. IPQ6018 pin controller driver" tristate "Qualcomm Technologies, Inc. IPQ6018 pin controller driver"
depends on GPIOLIB && OF depends on GPIOLIB && OF
select PINCTRL_MSM depends on PINCTRL_MSM
help help
This is the pinctrl, pinmux, pinconf and gpiolib driver for This is the pinctrl, pinmux, pinconf and gpiolib driver for
the Qualcomm Technologies Inc. TLMM block found on the the Qualcomm Technologies Inc. TLMM block found on the
...@@ -65,7 +65,7 @@ config PINCTRL_IPQ6018 ...@@ -65,7 +65,7 @@ config PINCTRL_IPQ6018
config PINCTRL_MSM8226 config PINCTRL_MSM8226
tristate "Qualcomm 8226 pin controller driver" tristate "Qualcomm 8226 pin controller driver"
depends on GPIOLIB && OF depends on GPIOLIB && OF
select PINCTRL_MSM depends on PINCTRL_MSM
help help
This is the pinctrl, pinmux, pinconf and gpiolib driver for the This is the pinctrl, pinmux, pinconf and gpiolib driver for the
Qualcomm Technologies Inc TLMM block found on the Qualcomm Qualcomm Technologies Inc TLMM block found on the Qualcomm
...@@ -74,7 +74,7 @@ config PINCTRL_MSM8226 ...@@ -74,7 +74,7 @@ config PINCTRL_MSM8226
config PINCTRL_MSM8660 config PINCTRL_MSM8660
tristate "Qualcomm 8660 pin controller driver" tristate "Qualcomm 8660 pin controller driver"
depends on GPIOLIB && OF depends on GPIOLIB && OF
select PINCTRL_MSM depends on PINCTRL_MSM
help help
This is the pinctrl, pinmux, pinconf and gpiolib driver for the This is the pinctrl, pinmux, pinconf and gpiolib driver for the
Qualcomm TLMM block found in the Qualcomm 8660 platform. Qualcomm TLMM block found in the Qualcomm 8660 platform.
...@@ -82,7 +82,7 @@ config PINCTRL_MSM8660 ...@@ -82,7 +82,7 @@ config PINCTRL_MSM8660
config PINCTRL_MSM8960 config PINCTRL_MSM8960
tristate "Qualcomm 8960 pin controller driver" tristate "Qualcomm 8960 pin controller driver"
depends on GPIOLIB && OF depends on GPIOLIB && OF
select PINCTRL_MSM depends on PINCTRL_MSM
help help
This is the pinctrl, pinmux, pinconf and gpiolib driver for the This is the pinctrl, pinmux, pinconf and gpiolib driver for the
Qualcomm TLMM block found in the Qualcomm 8960 platform. Qualcomm TLMM block found in the Qualcomm 8960 platform.
...@@ -90,7 +90,7 @@ config PINCTRL_MSM8960 ...@@ -90,7 +90,7 @@ config PINCTRL_MSM8960
config PINCTRL_MDM9615 config PINCTRL_MDM9615
tristate "Qualcomm 9615 pin controller driver" tristate "Qualcomm 9615 pin controller driver"
depends on GPIOLIB && OF depends on GPIOLIB && OF
select PINCTRL_MSM depends on PINCTRL_MSM
help help
This is the pinctrl, pinmux, pinconf and gpiolib driver for the This is the pinctrl, pinmux, pinconf and gpiolib driver for the
Qualcomm TLMM block found in the Qualcomm 9615 platform. Qualcomm TLMM block found in the Qualcomm 9615 platform.
...@@ -98,7 +98,7 @@ config PINCTRL_MDM9615 ...@@ -98,7 +98,7 @@ config PINCTRL_MDM9615
config PINCTRL_MSM8X74 config PINCTRL_MSM8X74
tristate "Qualcomm 8x74 pin controller driver" tristate "Qualcomm 8x74 pin controller driver"
depends on GPIOLIB && OF depends on GPIOLIB && OF
select PINCTRL_MSM depends on PINCTRL_MSM
help help
This is the pinctrl, pinmux, pinconf and gpiolib driver for the This is the pinctrl, pinmux, pinconf and gpiolib driver for the
Qualcomm TLMM block found in the Qualcomm 8974 platform. Qualcomm TLMM block found in the Qualcomm 8974 platform.
...@@ -106,7 +106,7 @@ config PINCTRL_MSM8X74 ...@@ -106,7 +106,7 @@ config PINCTRL_MSM8X74
config PINCTRL_MSM8916 config PINCTRL_MSM8916
tristate "Qualcomm 8916 pin controller driver" tristate "Qualcomm 8916 pin controller driver"
depends on GPIOLIB && OF depends on GPIOLIB && OF
select PINCTRL_MSM depends on PINCTRL_MSM
help help
This is the pinctrl, pinmux, pinconf and gpiolib driver for the This is the pinctrl, pinmux, pinconf and gpiolib driver for the
Qualcomm TLMM block found on the Qualcomm 8916 platform. Qualcomm TLMM block found on the Qualcomm 8916 platform.
...@@ -124,7 +124,7 @@ config PINCTRL_MSM8953 ...@@ -124,7 +124,7 @@ config PINCTRL_MSM8953
config PINCTRL_MSM8976 config PINCTRL_MSM8976
tristate "Qualcomm 8976 pin controller driver" tristate "Qualcomm 8976 pin controller driver"
depends on GPIOLIB && OF depends on GPIOLIB && OF
select PINCTRL_MSM depends on PINCTRL_MSM
help help
This is the pinctrl, pinmux, pinconf and gpiolib driver for the This is the pinctrl, pinmux, pinconf and gpiolib driver for the
Qualcomm TLMM block found on the Qualcomm MSM8976 platform. Qualcomm TLMM block found on the Qualcomm MSM8976 platform.
...@@ -134,7 +134,7 @@ config PINCTRL_MSM8976 ...@@ -134,7 +134,7 @@ config PINCTRL_MSM8976
config PINCTRL_MSM8994 config PINCTRL_MSM8994
tristate "Qualcomm 8994 pin controller driver" tristate "Qualcomm 8994 pin controller driver"
depends on GPIOLIB && OF depends on GPIOLIB && OF
select PINCTRL_MSM depends on PINCTRL_MSM
help help
This is the pinctrl, pinmux, pinconf and gpiolib driver for the This is the pinctrl, pinmux, pinconf and gpiolib driver for the
Qualcomm TLMM block found in the Qualcomm 8994 platform. The Qualcomm TLMM block found in the Qualcomm 8994 platform. The
...@@ -143,7 +143,7 @@ config PINCTRL_MSM8994 ...@@ -143,7 +143,7 @@ config PINCTRL_MSM8994
config PINCTRL_MSM8996 config PINCTRL_MSM8996
tristate "Qualcomm MSM8996 pin controller driver" tristate "Qualcomm MSM8996 pin controller driver"
depends on GPIOLIB && OF depends on GPIOLIB && OF
select PINCTRL_MSM depends on PINCTRL_MSM
help help
This is the pinctrl, pinmux, pinconf and gpiolib driver for the This is the pinctrl, pinmux, pinconf and gpiolib driver for the
Qualcomm TLMM block found in the Qualcomm MSM8996 platform. Qualcomm TLMM block found in the Qualcomm MSM8996 platform.
...@@ -151,7 +151,7 @@ config PINCTRL_MSM8996 ...@@ -151,7 +151,7 @@ config PINCTRL_MSM8996
config PINCTRL_MSM8998 config PINCTRL_MSM8998
tristate "Qualcomm MSM8998 pin controller driver" tristate "Qualcomm MSM8998 pin controller driver"
depends on GPIOLIB && OF depends on GPIOLIB && OF
select PINCTRL_MSM depends on PINCTRL_MSM
help help
This is the pinctrl, pinmux, pinconf and gpiolib driver for the This is the pinctrl, pinmux, pinconf and gpiolib driver for the
Qualcomm TLMM block found in the Qualcomm MSM8998 platform. Qualcomm TLMM block found in the Qualcomm MSM8998 platform.
...@@ -159,7 +159,7 @@ config PINCTRL_MSM8998 ...@@ -159,7 +159,7 @@ config PINCTRL_MSM8998
config PINCTRL_QCS404 config PINCTRL_QCS404
tristate "Qualcomm QCS404 pin controller driver" tristate "Qualcomm QCS404 pin controller driver"
depends on GPIOLIB && OF depends on GPIOLIB && OF
select PINCTRL_MSM depends on PINCTRL_MSM
help help
This is the pinctrl, pinmux, pinconf and gpiolib driver for the This is the pinctrl, pinmux, pinconf and gpiolib driver for the
TLMM block found in the Qualcomm QCS404 platform. TLMM block found in the Qualcomm QCS404 platform.
...@@ -167,7 +167,7 @@ config PINCTRL_QCS404 ...@@ -167,7 +167,7 @@ config PINCTRL_QCS404
config PINCTRL_QDF2XXX config PINCTRL_QDF2XXX
tristate "Qualcomm Technologies QDF2xxx pin controller driver" tristate "Qualcomm Technologies QDF2xxx pin controller driver"
depends on GPIOLIB && ACPI depends on GPIOLIB && ACPI
select PINCTRL_MSM depends on PINCTRL_MSM
help help
This is the GPIO driver for the TLMM block found on the This is the GPIO driver for the TLMM block found on the
Qualcomm Technologies QDF2xxx SOCs. Qualcomm Technologies QDF2xxx SOCs.
...@@ -204,7 +204,7 @@ config PINCTRL_QCOM_SSBI_PMIC ...@@ -204,7 +204,7 @@ config PINCTRL_QCOM_SSBI_PMIC
config PINCTRL_SC7180 config PINCTRL_SC7180
tristate "Qualcomm Technologies Inc SC7180 pin controller driver" tristate "Qualcomm Technologies Inc SC7180 pin controller driver"
depends on GPIOLIB && OF depends on GPIOLIB && OF
select PINCTRL_MSM depends on PINCTRL_MSM
help help
This is the pinctrl, pinmux, pinconf and gpiolib driver for the This is the pinctrl, pinmux, pinconf and gpiolib driver for the
Qualcomm Technologies Inc TLMM block found on the Qualcomm Qualcomm Technologies Inc TLMM block found on the Qualcomm
...@@ -213,7 +213,7 @@ config PINCTRL_SC7180 ...@@ -213,7 +213,7 @@ config PINCTRL_SC7180
config PINCTRL_SDM660 config PINCTRL_SDM660
tristate "Qualcomm Technologies Inc SDM660 pin controller driver" tristate "Qualcomm Technologies Inc SDM660 pin controller driver"
depends on GPIOLIB && OF depends on GPIOLIB && OF
select PINCTRL_MSM depends on PINCTRL_MSM
help help
This is the pinctrl, pinmux, pinconf and gpiolib driver for the This is the pinctrl, pinmux, pinconf and gpiolib driver for the
Qualcomm Technologies Inc TLMM block found on the Qualcomm Qualcomm Technologies Inc TLMM block found on the Qualcomm
...@@ -222,7 +222,7 @@ config PINCTRL_SDM660 ...@@ -222,7 +222,7 @@ config PINCTRL_SDM660
config PINCTRL_SDM845 config PINCTRL_SDM845
tristate "Qualcomm Technologies Inc SDM845 pin controller driver" tristate "Qualcomm Technologies Inc SDM845 pin controller driver"
depends on GPIOLIB && (OF || ACPI) depends on GPIOLIB && (OF || ACPI)
select PINCTRL_MSM depends on PINCTRL_MSM
help help
This is the pinctrl, pinmux, pinconf and gpiolib driver for the This is the pinctrl, pinmux, pinconf and gpiolib driver for the
Qualcomm Technologies Inc TLMM block found on the Qualcomm Qualcomm Technologies Inc TLMM block found on the Qualcomm
...@@ -231,7 +231,7 @@ config PINCTRL_SDM845 ...@@ -231,7 +231,7 @@ config PINCTRL_SDM845
config PINCTRL_SM8150 config PINCTRL_SM8150
tristate "Qualcomm Technologies Inc SM8150 pin controller driver" tristate "Qualcomm Technologies Inc SM8150 pin controller driver"
depends on GPIOLIB && OF depends on GPIOLIB && OF
select PINCTRL_MSM depends on PINCTRL_MSM
help help
This is the pinctrl, pinmux, pinconf and gpiolib driver for the This is the pinctrl, pinmux, pinconf and gpiolib driver for the
Qualcomm Technologies Inc TLMM block found on the Qualcomm Qualcomm Technologies Inc TLMM block found on the Qualcomm
...@@ -240,7 +240,7 @@ config PINCTRL_SM8150 ...@@ -240,7 +240,7 @@ config PINCTRL_SM8150
config PINCTRL_SM8250 config PINCTRL_SM8250
tristate "Qualcomm Technologies Inc SM8250 pin controller driver" tristate "Qualcomm Technologies Inc SM8250 pin controller driver"
depends on GPIOLIB && OF depends on GPIOLIB && OF
select PINCTRL_MSM depends on PINCTRL_MSM
help help
This is the pinctrl, pinmux, pinconf and gpiolib driver for the This is the pinctrl, pinmux, pinconf and gpiolib driver for the
Qualcomm Technologies Inc TLMM block found on the Qualcomm Qualcomm Technologies Inc TLMM block found on the Qualcomm
......
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