xref: /linux/drivers/pinctrl/qcom/Kconfig (revision 8dfce8991b95d8625d0a1d2896e42f93b9d7f68d)
1# SPDX-License-Identifier: GPL-2.0-only
2if (ARCH_QCOM || COMPILE_TEST)
3
4config PINCTRL_MSM
5	tristate "Qualcomm core pin controller driver"
6	depends on GPIOLIB
7	# OF for pinconf_generic_dt_node_to_map_group() from GENERIC_PINCONF
8	depends on OF
9	select QCOM_SCM
10	select PINMUX
11	select GENERIC_PINMUX_FUNCTIONS
12	select PINCONF
13	select GENERIC_PINCONF
14	select GPIOLIB_IRQCHIP
15	select IRQ_DOMAIN_HIERARCHY
16	select IRQ_FASTEOI_HIERARCHY_HANDLERS
17
18source "drivers/pinctrl/qcom/Kconfig.msm"
19
20config PINCTRL_QCOM_SPMI_PMIC
21	tristate "Qualcomm SPMI PMIC pin controller driver"
22	depends on OF && SPMI
23	select REGMAP_SPMI
24	select PINMUX
25	select PINCONF
26	select GENERIC_PINCONF
27	select GPIOLIB
28	select GPIOLIB_IRQCHIP
29	select IRQ_DOMAIN_HIERARCHY
30	help
31	 This is the pinctrl, pinmux, pinconf and gpiolib driver for the
32	 Qualcomm GPIO and MPP blocks found in the Qualcomm PMIC's chips,
33	 which are using SPMI for communication with SoC. Example PMIC's
34	 devices are pm8841, pm8941 and pma8084.
35
36config PINCTRL_QCOM_SSBI_PMIC
37	tristate "Qualcomm SSBI PMIC pin controller driver"
38	depends on OF
39	select PINMUX
40	select PINCONF
41	select GENERIC_PINCONF
42	select GPIOLIB
43	select GPIOLIB_IRQCHIP
44	select IRQ_DOMAIN_HIERARCHY
45	help
46	 This is the pinctrl, pinmux, pinconf and gpiolib driver for the
47	 Qualcomm GPIO and MPP blocks found in the Qualcomm PMIC's chips,
48	 which are using SSBI for communication with SoC. Example PMIC's
49	 devices are pm8058 and pm8921.
50
51config PINCTRL_LPASS_LPI
52	tristate "Qualcomm Technologies Inc LPASS LPI pin controller driver"
53	select PINMUX
54	select PINCONF
55	select GENERIC_PINCONF
56	select GENERIC_PINCTRL_GROUPS
57	depends on GPIOLIB
58	help
59	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
60	  Qualcomm Technologies Inc LPASS (Low Power Audio SubSystem) LPI
61	  (Low Power Island) found on the Qualcomm Technologies Inc SoCs.
62
63config PINCTRL_SC7280_LPASS_LPI
64	tristate "Qualcomm Technologies Inc SC7280 and SM8350 LPASS LPI pin controller driver"
65	depends on ARM64 || COMPILE_TEST
66	depends on PINCTRL_LPASS_LPI
67	help
68	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
69	  Qualcomm Technologies Inc LPASS (Low Power Audio SubSystem) LPI
70	  (Low Power Island) found on the Qualcomm Technologies Inc SC7280
71	  and SM8350 platforms.
72
73config PINCTRL_SDM660_LPASS_LPI
74	tristate "Qualcomm Technologies Inc SDM660 LPASS LPI pin controller driver"
75	depends on GPIOLIB
76	depends on ARM64 || COMPILE_TEST
77	depends on PINCTRL_LPASS_LPI
78	help
79	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
80	  Qualcomm Technologies Inc LPASS (Low Power Audio SubSystem) LPI
81	  (Low Power Island) found on the Qualcomm Technologies Inc SDM660 platform.
82
83config PINCTRL_SM4250_LPASS_LPI
84	tristate "Qualcomm Technologies Inc SM4250 LPASS LPI pin controller driver"
85	depends on ARM64 || COMPILE_TEST
86	depends on PINCTRL_LPASS_LPI
87	help
88	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
89	  Qualcomm Technologies Inc LPASS (Low Power Audio SubSystem) LPI
90	  (Low Power Island) found on the Qualcomm Technologies Inc SM4250 platform.
91
92config PINCTRL_SM6115_LPASS_LPI
93	tristate "Qualcomm Technologies Inc SM6115 LPASS LPI pin controller driver"
94	depends on ARM64 || COMPILE_TEST
95	depends on PINCTRL_LPASS_LPI
96	help
97	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
98	  Qualcomm Technologies Inc LPASS (Low Power Audio SubSystem) LPI
99	  (Low Power Island) found on the Qualcomm Technologies Inc SM6115 platform.
100
101config PINCTRL_SM8250_LPASS_LPI
102	tristate "Qualcomm Technologies Inc SM8250 LPASS LPI pin controller driver"
103	depends on ARM64 || COMPILE_TEST
104	depends on PINCTRL_LPASS_LPI
105	help
106	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
107	  Qualcomm Technologies Inc LPASS (Low Power Audio SubSystem) LPI
108	  (Low Power Island) found on the Qualcomm Technologies Inc SM8250 platform.
109
110config PINCTRL_SM8450_LPASS_LPI
111	tristate "Qualcomm Technologies Inc SM8450 LPASS LPI pin controller driver"
112	depends on ARM64 || COMPILE_TEST
113	depends on PINCTRL_LPASS_LPI
114	help
115	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
116	  Qualcomm Technologies Inc LPASS (Low Power Audio SubSystem) LPI
117	  (Low Power Island) found on the Qualcomm Technologies Inc SM8450 platform.
118
119config PINCTRL_SC8280XP_LPASS_LPI
120	tristate "Qualcomm Technologies Inc SC8280XP LPASS LPI pin controller driver"
121	depends on ARM64 || COMPILE_TEST
122	depends on PINCTRL_LPASS_LPI
123	help
124	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
125	  Qualcomm Technologies Inc LPASS (Low Power Audio SubSystem) LPI
126	  (Low Power Island) found on the Qualcomm Technologies Inc SC8280XP platform.
127
128config PINCTRL_SM8550_LPASS_LPI
129	tristate "Qualcomm Technologies Inc SM8550 LPASS LPI pin controller driver"
130	depends on ARM64 || COMPILE_TEST
131	depends on PINCTRL_LPASS_LPI
132	help
133	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
134	  Qualcomm Technologies Inc LPASS (Low Power Audio SubSystem) LPI
135	  (Low Power Island) found on the Qualcomm Technologies Inc SM8550
136	  platform.
137
138config PINCTRL_SM8650_LPASS_LPI
139	tristate "Qualcomm Technologies Inc SM8650 LPASS LPI pin controller driver"
140	depends on ARM64 || COMPILE_TEST
141	depends on PINCTRL_LPASS_LPI
142	help
143	  This is the pinctrl, pinmux, pinconf and gpiolib driver for the
144	  Qualcomm Technologies Inc LPASS (Low Power Audio SubSystem) LPI
145	  (Low Power Island) found on the Qualcomm Technologies Inc SM8650
146	  platform.
147
148endif
149