1# SPDX-License-Identifier: GPL-2.0-only
2config PINCTRL_IMX
3	tristate
4	depends on OF
5	select GENERIC_PINCTRL_GROUPS
6	select GENERIC_PINMUX_FUNCTIONS
7	select PINCONF
8	select REGMAP
9
10config PINCTRL_IMX_SCMI
11	tristate "i.MX95 pinctrl driver using SCMI protocol interface"
12	depends on ARM_SCMI_PROTOCOL && OF || COMPILE_TEST
13	select PINMUX
14	select GENERIC_PINCONF
15	select GENERIC_PINCTRL_GROUPS
16	select GENERIC_PINMUX_FUNCTIONS
17	help
18	  i.MX95 SCMI firmware provides pinctrl protocol. This driver
19	  utilizes the SCMI interface to do pinctrl configuration.
20
21config PINCTRL_IMX_SCU
22	tristate
23	depends on IMX_SCU
24	select PINCTRL_IMX
25
26config PINCTRL_IMX1_CORE
27	bool
28	select PINMUX
29	select PINCONF
30
31config PINCTRL_IMX1
32	bool "IMX1 pinctrl driver"
33	depends on SOC_IMX1
34	default SOC_IMX1
35	select PINCTRL_IMX1_CORE
36	help
37	  Say Y here to enable the imx1 pinctrl driver
38
39config PINCTRL_IMX27
40	bool "IMX27 pinctrl driver"
41	depends on SOC_IMX27
42	default SOC_IMX27
43	select PINCTRL_IMX1_CORE
44	help
45	  Say Y here to enable the imx27 pinctrl driver
46
47
48config PINCTRL_IMX25
49	bool "IMX25 pinctrl driver"
50	depends on OF
51	depends on SOC_IMX25
52	default SOC_IMX25
53	select PINCTRL_IMX
54	help
55	  Say Y here to enable the imx25 pinctrl driver
56
57config PINCTRL_IMX35
58	bool "IMX35 pinctrl driver"
59	depends on SOC_IMX35
60	default SOC_IMX35
61	select PINCTRL_IMX
62	help
63	  Say Y here to enable the imx35 pinctrl driver
64
65config PINCTRL_IMX50
66	bool "IMX50 pinctrl driver"
67	depends on SOC_IMX50
68	default SOC_IMX50
69	select PINCTRL_IMX
70	help
71	  Say Y here to enable the imx50 pinctrl driver
72
73config PINCTRL_IMX51
74	bool "IMX51 pinctrl driver"
75	depends on SOC_IMX51
76	default SOC_IMX51
77	select PINCTRL_IMX
78	help
79	  Say Y here to enable the imx51 pinctrl driver
80
81config PINCTRL_IMX53
82	bool "IMX53 pinctrl driver"
83	depends on SOC_IMX53
84	default SOC_IMX53
85	select PINCTRL_IMX
86	help
87	  Say Y here to enable the imx53 pinctrl driver
88
89config PINCTRL_IMX6Q
90	bool "IMX6Q/DL pinctrl driver"
91	depends on SOC_IMX6Q
92	default SOC_IMX6Q
93	select PINCTRL_IMX
94	help
95	  Say Y here to enable the imx6q/dl pinctrl driver
96
97config PINCTRL_IMX6SL
98	bool "IMX6SL pinctrl driver"
99	depends on SOC_IMX6SL
100	default SOC_IMX6SL
101	select PINCTRL_IMX
102	help
103	  Say Y here to enable the imx6sl pinctrl driver
104
105config PINCTRL_IMX6SLL
106	bool "IMX6SLL pinctrl driver"
107	depends on SOC_IMX6SLL
108	default SOC_IMX6SLL
109	select PINCTRL_IMX
110	help
111	  Say Y here to enable the imx6sll pinctrl driver
112
113config PINCTRL_IMX6SX
114	bool "IMX6SX pinctrl driver"
115	depends on SOC_IMX6SX
116	default SOC_IMX6SX
117	select PINCTRL_IMX
118	help
119	  Say Y here to enable the imx6sx pinctrl driver
120
121config PINCTRL_IMX6UL
122	bool "IMX6UL pinctrl driver"
123	depends on SOC_IMX6UL
124	default SOC_IMX6UL
125	select PINCTRL_IMX
126	help
127	  Say Y here to enable the imx6ul pinctrl driver
128
129config PINCTRL_IMX7D
130	bool "IMX7D pinctrl driver"
131	depends on SOC_IMX7D
132	default SOC_IMX7D
133	select PINCTRL_IMX
134	help
135	  Say Y here to enable the imx7d pinctrl driver
136
137config PINCTRL_IMX7ULP
138	bool "IMX7ULP pinctrl driver"
139	depends on SOC_IMX7ULP
140	default SOC_IMX7ULP
141	select PINCTRL_IMX
142	help
143	  Say Y here to enable the imx7ulp pinctrl driver
144
145config PINCTRL_IMX8MM
146	tristate "IMX8MM pinctrl driver"
147	depends on OF
148	depends on SOC_IMX8M
149	select PINCTRL_IMX
150	help
151	  Say Y here to enable the imx8mm pinctrl driver
152
153config PINCTRL_IMX8MN
154	tristate "IMX8MN pinctrl driver"
155	depends on OF
156	depends on SOC_IMX8M
157	select PINCTRL_IMX
158	help
159	  Say Y here to enable the imx8mn pinctrl driver
160
161config PINCTRL_IMX8MP
162	tristate "IMX8MP pinctrl driver"
163	depends on OF
164	depends on SOC_IMX8M
165	select PINCTRL_IMX
166	help
167	  Say Y here to enable the imx8mp pinctrl driver
168
169config PINCTRL_IMX8MQ
170	tristate "IMX8MQ pinctrl driver"
171	depends on OF
172	depends on SOC_IMX8M
173	select PINCTRL_IMX
174	help
175	  Say Y here to enable the imx8mq pinctrl driver
176
177config PINCTRL_IMX8QM
178	tristate "IMX8QM pinctrl driver"
179	depends on IMX_SCU && ARCH_MXC && ARM64
180	select PINCTRL_IMX_SCU
181	help
182	  Say Y here to enable the imx8qm pinctrl driver
183
184config PINCTRL_IMX8QXP
185	tristate "IMX8QXP pinctrl driver"
186	depends on IMX_SCU && ARCH_MXC && ARM64
187	select PINCTRL_IMX_SCU
188	help
189	  Say Y here to enable the imx8qxp pinctrl driver
190
191config PINCTRL_IMX8DXL
192	tristate "IMX8DXL pinctrl driver"
193	depends on IMX_SCU && ARCH_MXC && ARM64
194	select PINCTRL_IMX_SCU
195	help
196	  Say Y here to enable the imx8dxl pinctrl driver
197
198config PINCTRL_IMX8ULP
199	tristate "IMX8ULP pinctrl driver"
200	depends on ARCH_MXC
201	select PINCTRL_IMX
202	help
203	  Say Y here to enable the imx8ulp pinctrl driver
204
205config PINCTRL_IMXRT1050
206	bool "IMXRT1050 pinctrl driver"
207	depends on SOC_IMXRT
208	default SOC_IMXRT
209	select PINCTRL_IMX
210	help
211	  Say Y here to enable the imxrt1050 pinctrl driver
212
213config PINCTRL_IMX91
214	tristate "IMX91 pinctrl driver"
215	depends on ARCH_MXC
216	select PINCTRL_IMX
217	help
218	  Say Y here to enable the imx91 pinctrl driver
219
220config PINCTRL_IMX93
221	tristate "IMX93 pinctrl driver"
222	depends on ARCH_MXC
223	select PINCTRL_IMX
224	help
225	  Say Y here to enable the imx93 pinctrl driver
226
227config PINCTRL_VF610
228	bool "Freescale Vybrid VF610 pinctrl driver"
229	depends on SOC_VF610
230	default SOC_VF610
231	select PINCTRL_IMX
232	help
233	  Say Y here to enable the Freescale Vybrid VF610 pinctrl driver
234
235config PINCTRL_MXS
236	bool
237	select PINMUX
238	select PINCONF
239
240config PINCTRL_IMX23
241	bool
242	select PINCTRL_MXS
243
244config PINCTRL_IMX28
245	bool
246	select PINCTRL_MXS
247
248config PINCTRL_IMXRT1170
249	bool "IMXRT1170 pinctrl driver"
250	depends on SOC_IMXRT
251	select PINCTRL_IMX
252	help
253	  Say Y here to enable the imxrt1170 pinctrl driver
254