162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only
262306a36Sopenharmony_ciif (ARCH_QCOM || COMPILE_TEST)
362306a36Sopenharmony_ci
462306a36Sopenharmony_ciconfig PINCTRL_MSM
562306a36Sopenharmony_ci	tristate "Qualcomm core pin controller driver"
662306a36Sopenharmony_ci	depends on GPIOLIB
762306a36Sopenharmony_ci	# OF for pinconf_generic_dt_node_to_map_group() from GENERIC_PINCONF
862306a36Sopenharmony_ci	depends on OF
962306a36Sopenharmony_ci	select QCOM_SCM
1062306a36Sopenharmony_ci	select PINMUX
1162306a36Sopenharmony_ci	select PINCONF
1262306a36Sopenharmony_ci	select GENERIC_PINCONF
1362306a36Sopenharmony_ci	select GPIOLIB_IRQCHIP
1462306a36Sopenharmony_ci	select IRQ_DOMAIN_HIERARCHY
1562306a36Sopenharmony_ci	select IRQ_FASTEOI_HIERARCHY_HANDLERS
1662306a36Sopenharmony_ci
1762306a36Sopenharmony_cisource "drivers/pinctrl/qcom/Kconfig.msm"
1862306a36Sopenharmony_ci
1962306a36Sopenharmony_ciconfig PINCTRL_QCOM_SPMI_PMIC
2062306a36Sopenharmony_ci	tristate "Qualcomm SPMI PMIC pin controller driver"
2162306a36Sopenharmony_ci	depends on OF && SPMI
2262306a36Sopenharmony_ci	select REGMAP_SPMI
2362306a36Sopenharmony_ci	select PINMUX
2462306a36Sopenharmony_ci	select PINCONF
2562306a36Sopenharmony_ci	select GENERIC_PINCONF
2662306a36Sopenharmony_ci	select GPIOLIB
2762306a36Sopenharmony_ci	select GPIOLIB_IRQCHIP
2862306a36Sopenharmony_ci	select IRQ_DOMAIN_HIERARCHY
2962306a36Sopenharmony_ci	help
3062306a36Sopenharmony_ci	 This is the pinctrl, pinmux, pinconf and gpiolib driver for the
3162306a36Sopenharmony_ci	 Qualcomm GPIO and MPP blocks found in the Qualcomm PMIC's chips,
3262306a36Sopenharmony_ci	 which are using SPMI for communication with SoC. Example PMIC's
3362306a36Sopenharmony_ci	 devices are pm8841, pm8941 and pma8084.
3462306a36Sopenharmony_ci
3562306a36Sopenharmony_ciconfig PINCTRL_QCOM_SSBI_PMIC
3662306a36Sopenharmony_ci	tristate "Qualcomm SSBI PMIC pin controller driver"
3762306a36Sopenharmony_ci	depends on OF
3862306a36Sopenharmony_ci	select PINMUX
3962306a36Sopenharmony_ci	select PINCONF
4062306a36Sopenharmony_ci	select GENERIC_PINCONF
4162306a36Sopenharmony_ci	select GPIOLIB
4262306a36Sopenharmony_ci	select GPIOLIB_IRQCHIP
4362306a36Sopenharmony_ci	select IRQ_DOMAIN_HIERARCHY
4462306a36Sopenharmony_ci	help
4562306a36Sopenharmony_ci	 This is the pinctrl, pinmux, pinconf and gpiolib driver for the
4662306a36Sopenharmony_ci	 Qualcomm GPIO and MPP blocks found in the Qualcomm PMIC's chips,
4762306a36Sopenharmony_ci	 which are using SSBI for communication with SoC. Example PMIC's
4862306a36Sopenharmony_ci	 devices are pm8058 and pm8921.
4962306a36Sopenharmony_ci
5062306a36Sopenharmony_ciconfig PINCTRL_LPASS_LPI
5162306a36Sopenharmony_ci	tristate "Qualcomm Technologies Inc LPASS LPI pin controller driver"
5262306a36Sopenharmony_ci	select PINMUX
5362306a36Sopenharmony_ci	select PINCONF
5462306a36Sopenharmony_ci	select GENERIC_PINCONF
5562306a36Sopenharmony_ci	select GENERIC_PINCTRL_GROUPS
5662306a36Sopenharmony_ci	depends on GPIOLIB
5762306a36Sopenharmony_ci	help
5862306a36Sopenharmony_ci	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
5962306a36Sopenharmony_ci	  Qualcomm Technologies Inc LPASS (Low Power Audio SubSystem) LPI
6062306a36Sopenharmony_ci	  (Low Power Island) found on the Qualcomm Technologies Inc SoCs.
6162306a36Sopenharmony_ci
6262306a36Sopenharmony_ciconfig PINCTRL_SC7280_LPASS_LPI
6362306a36Sopenharmony_ci	tristate "Qualcomm Technologies Inc SC7280 LPASS LPI pin controller driver"
6462306a36Sopenharmony_ci	depends on ARM64 || COMPILE_TEST
6562306a36Sopenharmony_ci	depends on PINCTRL_LPASS_LPI
6662306a36Sopenharmony_ci	help
6762306a36Sopenharmony_ci	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
6862306a36Sopenharmony_ci	  Qualcomm Technologies Inc LPASS (Low Power Audio SubSystem) LPI
6962306a36Sopenharmony_ci	  (Low Power Island) found on the Qualcomm Technologies Inc SC7280 platform.
7062306a36Sopenharmony_ci
7162306a36Sopenharmony_ciconfig PINCTRL_SM6115_LPASS_LPI
7262306a36Sopenharmony_ci	tristate "Qualcomm Technologies Inc SM6115 LPASS LPI pin controller driver"
7362306a36Sopenharmony_ci	depends on ARM64 || COMPILE_TEST
7462306a36Sopenharmony_ci	depends on PINCTRL_LPASS_LPI
7562306a36Sopenharmony_ci	help
7662306a36Sopenharmony_ci	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
7762306a36Sopenharmony_ci	  Qualcomm Technologies Inc LPASS (Low Power Audio SubSystem) LPI
7862306a36Sopenharmony_ci	  (Low Power Island) found on the Qualcomm Technologies Inc SM6115 platform.
7962306a36Sopenharmony_ci
8062306a36Sopenharmony_ciconfig PINCTRL_SM8250_LPASS_LPI
8162306a36Sopenharmony_ci	tristate "Qualcomm Technologies Inc SM8250 LPASS LPI pin controller driver"
8262306a36Sopenharmony_ci	depends on ARM64 || COMPILE_TEST
8362306a36Sopenharmony_ci	depends on PINCTRL_LPASS_LPI
8462306a36Sopenharmony_ci	help
8562306a36Sopenharmony_ci	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
8662306a36Sopenharmony_ci	  Qualcomm Technologies Inc LPASS (Low Power Audio SubSystem) LPI
8762306a36Sopenharmony_ci	  (Low Power Island) found on the Qualcomm Technologies Inc SM8250 platform.
8862306a36Sopenharmony_ci
8962306a36Sopenharmony_ciconfig PINCTRL_SM8350_LPASS_LPI
9062306a36Sopenharmony_ci	tristate "Qualcomm Technologies Inc SM8350 LPASS LPI pin controller driver"
9162306a36Sopenharmony_ci	depends on ARM64 || COMPILE_TEST
9262306a36Sopenharmony_ci	depends on PINCTRL_LPASS_LPI
9362306a36Sopenharmony_ci	help
9462306a36Sopenharmony_ci	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
9562306a36Sopenharmony_ci	  Qualcomm Technologies Inc LPASS (Low Power Audio SubSystem) LPI
9662306a36Sopenharmony_ci	  (Low Power Island) found on the Qualcomm Technologies Inc SM8350
9762306a36Sopenharmony_ci	  platform.
9862306a36Sopenharmony_ci
9962306a36Sopenharmony_ciconfig PINCTRL_SM8450_LPASS_LPI
10062306a36Sopenharmony_ci	tristate "Qualcomm Technologies Inc SM8450 LPASS LPI pin controller driver"
10162306a36Sopenharmony_ci	depends on ARM64 || COMPILE_TEST
10262306a36Sopenharmony_ci	depends on PINCTRL_LPASS_LPI
10362306a36Sopenharmony_ci	help
10462306a36Sopenharmony_ci	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
10562306a36Sopenharmony_ci	  Qualcomm Technologies Inc LPASS (Low Power Audio SubSystem) LPI
10662306a36Sopenharmony_ci	  (Low Power Island) found on the Qualcomm Technologies Inc SM8450 platform.
10762306a36Sopenharmony_ci
10862306a36Sopenharmony_ciconfig PINCTRL_SC8280XP_LPASS_LPI
10962306a36Sopenharmony_ci	tristate "Qualcomm Technologies Inc SC8280XP LPASS LPI pin controller driver"
11062306a36Sopenharmony_ci	depends on ARM64 || COMPILE_TEST
11162306a36Sopenharmony_ci	depends on PINCTRL_LPASS_LPI
11262306a36Sopenharmony_ci	help
11362306a36Sopenharmony_ci	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
11462306a36Sopenharmony_ci	  Qualcomm Technologies Inc LPASS (Low Power Audio SubSystem) LPI
11562306a36Sopenharmony_ci	  (Low Power Island) found on the Qualcomm Technologies Inc SC8280XP platform.
11662306a36Sopenharmony_ci
11762306a36Sopenharmony_ciconfig PINCTRL_SM8550_LPASS_LPI
11862306a36Sopenharmony_ci	tristate "Qualcomm Technologies Inc SM8550 LPASS LPI pin controller driver"
11962306a36Sopenharmony_ci	depends on ARM64 || COMPILE_TEST
12062306a36Sopenharmony_ci	depends on PINCTRL_LPASS_LPI
12162306a36Sopenharmony_ci	help
12262306a36Sopenharmony_ci	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
12362306a36Sopenharmony_ci	  Qualcomm Technologies Inc LPASS (Low Power Audio SubSystem) LPI
12462306a36Sopenharmony_ci	  (Low Power Island) found on the Qualcomm Technologies Inc SM8550
12562306a36Sopenharmony_ci	  platform.
12662306a36Sopenharmony_ci
12762306a36Sopenharmony_ciendif
128