18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only
28c2ecf20Sopenharmony_ciif (ARCH_QCOM || COMPILE_TEST)
38c2ecf20Sopenharmony_ci
48c2ecf20Sopenharmony_ciconfig PINCTRL_MSM
58c2ecf20Sopenharmony_ci	bool
68c2ecf20Sopenharmony_ci	select PINMUX
78c2ecf20Sopenharmony_ci	select PINCONF
88c2ecf20Sopenharmony_ci	select GENERIC_PINCONF
98c2ecf20Sopenharmony_ci	select GPIOLIB_IRQCHIP
108c2ecf20Sopenharmony_ci	select IRQ_DOMAIN_HIERARCHY
118c2ecf20Sopenharmony_ci	select IRQ_FASTEOI_HIERARCHY_HANDLERS
128c2ecf20Sopenharmony_ci
138c2ecf20Sopenharmony_ciconfig PINCTRL_APQ8064
148c2ecf20Sopenharmony_ci	tristate "Qualcomm APQ8064 pin controller driver"
158c2ecf20Sopenharmony_ci	depends on GPIOLIB && OF
168c2ecf20Sopenharmony_ci	select PINCTRL_MSM
178c2ecf20Sopenharmony_ci	help
188c2ecf20Sopenharmony_ci	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
198c2ecf20Sopenharmony_ci	  Qualcomm TLMM block found in the Qualcomm APQ8064 platform.
208c2ecf20Sopenharmony_ci
218c2ecf20Sopenharmony_ciconfig PINCTRL_APQ8084
228c2ecf20Sopenharmony_ci	tristate "Qualcomm APQ8084 pin controller driver"
238c2ecf20Sopenharmony_ci	depends on GPIOLIB && OF
248c2ecf20Sopenharmony_ci	select PINCTRL_MSM
258c2ecf20Sopenharmony_ci	help
268c2ecf20Sopenharmony_ci	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
278c2ecf20Sopenharmony_ci	  Qualcomm TLMM block found in the Qualcomm APQ8084 platform.
288c2ecf20Sopenharmony_ci
298c2ecf20Sopenharmony_ciconfig PINCTRL_IPQ4019
308c2ecf20Sopenharmony_ci	tristate "Qualcomm IPQ4019 pin controller driver"
318c2ecf20Sopenharmony_ci	depends on GPIOLIB && OF
328c2ecf20Sopenharmony_ci	select PINCTRL_MSM
338c2ecf20Sopenharmony_ci	help
348c2ecf20Sopenharmony_ci	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
358c2ecf20Sopenharmony_ci	  Qualcomm TLMM block found in the Qualcomm IPQ4019 platform.
368c2ecf20Sopenharmony_ci
378c2ecf20Sopenharmony_ciconfig PINCTRL_IPQ8064
388c2ecf20Sopenharmony_ci	tristate "Qualcomm IPQ8064 pin controller driver"
398c2ecf20Sopenharmony_ci	depends on GPIOLIB && OF
408c2ecf20Sopenharmony_ci	select PINCTRL_MSM
418c2ecf20Sopenharmony_ci	help
428c2ecf20Sopenharmony_ci	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
438c2ecf20Sopenharmony_ci	  Qualcomm TLMM block found in the Qualcomm IPQ8064 platform.
448c2ecf20Sopenharmony_ci
458c2ecf20Sopenharmony_ciconfig PINCTRL_IPQ8074
468c2ecf20Sopenharmony_ci	tristate "Qualcomm Technologies, Inc. IPQ8074 pin controller driver"
478c2ecf20Sopenharmony_ci	depends on GPIOLIB && OF
488c2ecf20Sopenharmony_ci	select PINCTRL_MSM
498c2ecf20Sopenharmony_ci	help
508c2ecf20Sopenharmony_ci	  This is the pinctrl, pinmux, pinconf and gpiolib driver for
518c2ecf20Sopenharmony_ci	  the Qualcomm Technologies Inc. TLMM block found on the
528c2ecf20Sopenharmony_ci	  Qualcomm Technologies Inc. IPQ8074 platform. Select this for
538c2ecf20Sopenharmony_ci	  IPQ8074.
548c2ecf20Sopenharmony_ci
558c2ecf20Sopenharmony_ciconfig PINCTRL_IPQ6018
568c2ecf20Sopenharmony_ci	tristate "Qualcomm Technologies, Inc. IPQ6018 pin controller driver"
578c2ecf20Sopenharmony_ci	depends on GPIOLIB && OF
588c2ecf20Sopenharmony_ci	select PINCTRL_MSM
598c2ecf20Sopenharmony_ci	help
608c2ecf20Sopenharmony_ci	  This is the pinctrl, pinmux, pinconf and gpiolib driver for
618c2ecf20Sopenharmony_ci	  the Qualcomm Technologies Inc. TLMM block found on the
628c2ecf20Sopenharmony_ci	  Qualcomm Technologies Inc. IPQ6018 platform. Select this for
638c2ecf20Sopenharmony_ci	  IPQ6018.
648c2ecf20Sopenharmony_ci
658c2ecf20Sopenharmony_ciconfig PINCTRL_MSM8226
668c2ecf20Sopenharmony_ci	tristate "Qualcomm 8226 pin controller driver"
678c2ecf20Sopenharmony_ci	depends on GPIOLIB && OF
688c2ecf20Sopenharmony_ci	select PINCTRL_MSM
698c2ecf20Sopenharmony_ci	help
708c2ecf20Sopenharmony_ci	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
718c2ecf20Sopenharmony_ci	  Qualcomm Technologies Inc TLMM block found on the Qualcomm
728c2ecf20Sopenharmony_ci	  Technologies Inc MSM8226 platform.
738c2ecf20Sopenharmony_ci
748c2ecf20Sopenharmony_ciconfig PINCTRL_MSM8660
758c2ecf20Sopenharmony_ci	tristate "Qualcomm 8660 pin controller driver"
768c2ecf20Sopenharmony_ci	depends on GPIOLIB && OF
778c2ecf20Sopenharmony_ci	select PINCTRL_MSM
788c2ecf20Sopenharmony_ci	help
798c2ecf20Sopenharmony_ci	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
808c2ecf20Sopenharmony_ci	  Qualcomm TLMM block found in the Qualcomm 8660 platform.
818c2ecf20Sopenharmony_ci
828c2ecf20Sopenharmony_ciconfig PINCTRL_MSM8960
838c2ecf20Sopenharmony_ci	tristate "Qualcomm 8960 pin controller driver"
848c2ecf20Sopenharmony_ci	depends on GPIOLIB && OF
858c2ecf20Sopenharmony_ci	select PINCTRL_MSM
868c2ecf20Sopenharmony_ci	help
878c2ecf20Sopenharmony_ci	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
888c2ecf20Sopenharmony_ci	  Qualcomm TLMM block found in the Qualcomm 8960 platform.
898c2ecf20Sopenharmony_ci
908c2ecf20Sopenharmony_ciconfig PINCTRL_MDM9615
918c2ecf20Sopenharmony_ci	tristate "Qualcomm 9615 pin controller driver"
928c2ecf20Sopenharmony_ci	depends on GPIOLIB && OF
938c2ecf20Sopenharmony_ci	select PINCTRL_MSM
948c2ecf20Sopenharmony_ci	help
958c2ecf20Sopenharmony_ci	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
968c2ecf20Sopenharmony_ci	  Qualcomm TLMM block found in the Qualcomm 9615 platform.
978c2ecf20Sopenharmony_ci
988c2ecf20Sopenharmony_ciconfig PINCTRL_MSM8X74
998c2ecf20Sopenharmony_ci	tristate "Qualcomm 8x74 pin controller driver"
1008c2ecf20Sopenharmony_ci	depends on GPIOLIB && OF
1018c2ecf20Sopenharmony_ci	select PINCTRL_MSM
1028c2ecf20Sopenharmony_ci	help
1038c2ecf20Sopenharmony_ci	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
1048c2ecf20Sopenharmony_ci	  Qualcomm TLMM block found in the Qualcomm 8974 platform.
1058c2ecf20Sopenharmony_ci
1068c2ecf20Sopenharmony_ciconfig PINCTRL_MSM8916
1078c2ecf20Sopenharmony_ci	tristate "Qualcomm 8916 pin controller driver"
1088c2ecf20Sopenharmony_ci	depends on GPIOLIB && OF
1098c2ecf20Sopenharmony_ci	select PINCTRL_MSM
1108c2ecf20Sopenharmony_ci	help
1118c2ecf20Sopenharmony_ci	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
1128c2ecf20Sopenharmony_ci	  Qualcomm TLMM block found on the Qualcomm 8916 platform.
1138c2ecf20Sopenharmony_ci
1148c2ecf20Sopenharmony_ciconfig PINCTRL_MSM8976
1158c2ecf20Sopenharmony_ci	tristate "Qualcomm 8976 pin controller driver"
1168c2ecf20Sopenharmony_ci	depends on GPIOLIB && OF
1178c2ecf20Sopenharmony_ci	select PINCTRL_MSM
1188c2ecf20Sopenharmony_ci	help
1198c2ecf20Sopenharmony_ci	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
1208c2ecf20Sopenharmony_ci	  Qualcomm TLMM block found on the Qualcomm MSM8976 platform.
1218c2ecf20Sopenharmony_ci	  The Qualcomm MSM8956, APQ8056, APQ8076 platforms are also
1228c2ecf20Sopenharmony_ci	  supported by this driver.
1238c2ecf20Sopenharmony_ci
1248c2ecf20Sopenharmony_ciconfig PINCTRL_MSM8994
1258c2ecf20Sopenharmony_ci	tristate "Qualcomm 8994 pin controller driver"
1268c2ecf20Sopenharmony_ci	depends on GPIOLIB && OF
1278c2ecf20Sopenharmony_ci	select PINCTRL_MSM
1288c2ecf20Sopenharmony_ci	help
1298c2ecf20Sopenharmony_ci	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
1308c2ecf20Sopenharmony_ci	  Qualcomm TLMM block found in the Qualcomm 8994 platform. The
1318c2ecf20Sopenharmony_ci	  Qualcomm 8992 platform is also supported by this driver.
1328c2ecf20Sopenharmony_ci
1338c2ecf20Sopenharmony_ciconfig PINCTRL_MSM8996
1348c2ecf20Sopenharmony_ci	tristate "Qualcomm MSM8996 pin controller driver"
1358c2ecf20Sopenharmony_ci	depends on GPIOLIB && OF
1368c2ecf20Sopenharmony_ci	select PINCTRL_MSM
1378c2ecf20Sopenharmony_ci	help
1388c2ecf20Sopenharmony_ci	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
1398c2ecf20Sopenharmony_ci	  Qualcomm TLMM block found in the Qualcomm MSM8996 platform.
1408c2ecf20Sopenharmony_ci
1418c2ecf20Sopenharmony_ciconfig PINCTRL_MSM8998
1428c2ecf20Sopenharmony_ci	tristate "Qualcomm MSM8998 pin controller driver"
1438c2ecf20Sopenharmony_ci	depends on GPIOLIB && OF
1448c2ecf20Sopenharmony_ci	select PINCTRL_MSM
1458c2ecf20Sopenharmony_ci	help
1468c2ecf20Sopenharmony_ci	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
1478c2ecf20Sopenharmony_ci	  Qualcomm TLMM block found in the Qualcomm MSM8998 platform.
1488c2ecf20Sopenharmony_ci
1498c2ecf20Sopenharmony_ciconfig PINCTRL_QCS404
1508c2ecf20Sopenharmony_ci	tristate "Qualcomm QCS404 pin controller driver"
1518c2ecf20Sopenharmony_ci	depends on GPIOLIB && OF
1528c2ecf20Sopenharmony_ci	select PINCTRL_MSM
1538c2ecf20Sopenharmony_ci	help
1548c2ecf20Sopenharmony_ci	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
1558c2ecf20Sopenharmony_ci	  TLMM block found in the Qualcomm QCS404 platform.
1568c2ecf20Sopenharmony_ci
1578c2ecf20Sopenharmony_ciconfig PINCTRL_QDF2XXX
1588c2ecf20Sopenharmony_ci	tristate "Qualcomm Technologies QDF2xxx pin controller driver"
1598c2ecf20Sopenharmony_ci	depends on GPIOLIB && ACPI
1608c2ecf20Sopenharmony_ci	select PINCTRL_MSM
1618c2ecf20Sopenharmony_ci	help
1628c2ecf20Sopenharmony_ci	  This is the GPIO driver for the TLMM block found on the
1638c2ecf20Sopenharmony_ci	  Qualcomm Technologies QDF2xxx SOCs.
1648c2ecf20Sopenharmony_ci
1658c2ecf20Sopenharmony_ciconfig PINCTRL_QCOM_SPMI_PMIC
1668c2ecf20Sopenharmony_ci	tristate "Qualcomm SPMI PMIC pin controller driver"
1678c2ecf20Sopenharmony_ci	depends on GPIOLIB && OF && SPMI
1688c2ecf20Sopenharmony_ci	select REGMAP_SPMI
1698c2ecf20Sopenharmony_ci	select PINMUX
1708c2ecf20Sopenharmony_ci	select PINCONF
1718c2ecf20Sopenharmony_ci	select GENERIC_PINCONF
1728c2ecf20Sopenharmony_ci	select GPIOLIB_IRQCHIP
1738c2ecf20Sopenharmony_ci	select IRQ_DOMAIN_HIERARCHY
1748c2ecf20Sopenharmony_ci	help
1758c2ecf20Sopenharmony_ci	 This is the pinctrl, pinmux, pinconf and gpiolib driver for the
1768c2ecf20Sopenharmony_ci	 Qualcomm GPIO and MPP blocks found in the Qualcomm PMIC's chips,
1778c2ecf20Sopenharmony_ci	 which are using SPMI for communication with SoC. Example PMIC's
1788c2ecf20Sopenharmony_ci	 devices are pm8841, pm8941 and pma8084.
1798c2ecf20Sopenharmony_ci
1808c2ecf20Sopenharmony_ciconfig PINCTRL_QCOM_SSBI_PMIC
1818c2ecf20Sopenharmony_ci	tristate "Qualcomm SSBI PMIC pin controller driver"
1828c2ecf20Sopenharmony_ci	depends on GPIOLIB && OF
1838c2ecf20Sopenharmony_ci	select PINMUX
1848c2ecf20Sopenharmony_ci	select PINCONF
1858c2ecf20Sopenharmony_ci	select GENERIC_PINCONF
1868c2ecf20Sopenharmony_ci	select GPIOLIB_IRQCHIP
1878c2ecf20Sopenharmony_ci	select IRQ_DOMAIN_HIERARCHY
1888c2ecf20Sopenharmony_ci	help
1898c2ecf20Sopenharmony_ci	 This is the pinctrl, pinmux, pinconf and gpiolib driver for the
1908c2ecf20Sopenharmony_ci	 Qualcomm GPIO and MPP blocks found in the Qualcomm PMIC's chips,
1918c2ecf20Sopenharmony_ci	 which are using SSBI for communication with SoC. Example PMIC's
1928c2ecf20Sopenharmony_ci	 devices are pm8058 and pm8921.
1938c2ecf20Sopenharmony_ci
1948c2ecf20Sopenharmony_ciconfig PINCTRL_SC7180
1958c2ecf20Sopenharmony_ci	tristate "Qualcomm Technologies Inc SC7180 pin controller driver"
1968c2ecf20Sopenharmony_ci	depends on GPIOLIB && OF
1978c2ecf20Sopenharmony_ci	select PINCTRL_MSM
1988c2ecf20Sopenharmony_ci	help
1998c2ecf20Sopenharmony_ci	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
2008c2ecf20Sopenharmony_ci	  Qualcomm Technologies Inc TLMM block found on the Qualcomm
2018c2ecf20Sopenharmony_ci	  Technologies Inc SC7180 platform.
2028c2ecf20Sopenharmony_ci
2038c2ecf20Sopenharmony_ciconfig PINCTRL_SDM660
2048c2ecf20Sopenharmony_ci	tristate "Qualcomm Technologies Inc SDM660 pin controller driver"
2058c2ecf20Sopenharmony_ci	depends on GPIOLIB && OF
2068c2ecf20Sopenharmony_ci	select PINCTRL_MSM
2078c2ecf20Sopenharmony_ci	help
2088c2ecf20Sopenharmony_ci	 This is the pinctrl, pinmux, pinconf and gpiolib driver for the
2098c2ecf20Sopenharmony_ci	 Qualcomm Technologies Inc TLMM block found on the Qualcomm
2108c2ecf20Sopenharmony_ci	 Technologies Inc SDM660 platform.
2118c2ecf20Sopenharmony_ci
2128c2ecf20Sopenharmony_ciconfig PINCTRL_SDM845
2138c2ecf20Sopenharmony_ci	tristate "Qualcomm Technologies Inc SDM845 pin controller driver"
2148c2ecf20Sopenharmony_ci	depends on GPIOLIB && (OF || ACPI)
2158c2ecf20Sopenharmony_ci	select PINCTRL_MSM
2168c2ecf20Sopenharmony_ci	help
2178c2ecf20Sopenharmony_ci	 This is the pinctrl, pinmux, pinconf and gpiolib driver for the
2188c2ecf20Sopenharmony_ci	 Qualcomm Technologies Inc TLMM block found on the Qualcomm
2198c2ecf20Sopenharmony_ci	 Technologies Inc SDM845 platform.
2208c2ecf20Sopenharmony_ci
2218c2ecf20Sopenharmony_ciconfig PINCTRL_SM8150
2228c2ecf20Sopenharmony_ci	tristate "Qualcomm Technologies Inc SM8150 pin controller driver"
2238c2ecf20Sopenharmony_ci	depends on GPIOLIB && OF
2248c2ecf20Sopenharmony_ci	select PINCTRL_MSM
2258c2ecf20Sopenharmony_ci	help
2268c2ecf20Sopenharmony_ci	 This is the pinctrl, pinmux, pinconf and gpiolib driver for the
2278c2ecf20Sopenharmony_ci	 Qualcomm Technologies Inc TLMM block found on the Qualcomm
2288c2ecf20Sopenharmony_ci	 Technologies Inc SM8150 platform.
2298c2ecf20Sopenharmony_ci
2308c2ecf20Sopenharmony_ciconfig PINCTRL_SM8250
2318c2ecf20Sopenharmony_ci	tristate "Qualcomm Technologies Inc SM8250 pin controller driver"
2328c2ecf20Sopenharmony_ci	depends on GPIOLIB && OF
2338c2ecf20Sopenharmony_ci	select PINCTRL_MSM
2348c2ecf20Sopenharmony_ci	help
2358c2ecf20Sopenharmony_ci	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
2368c2ecf20Sopenharmony_ci	  Qualcomm Technologies Inc TLMM block found on the Qualcomm
2378c2ecf20Sopenharmony_ci	  Technologies Inc SM8250 platform.
2388c2ecf20Sopenharmony_ci
2398c2ecf20Sopenharmony_ciendif
240