xref: /linux/drivers/pinctrl/freescale/pinctrl-imxrt1170.c (revision a1c613ae4c322ddd58d5a8539dbfba2a0380a8c0)
1fff65226SJesse Taube // SPDX-License-Identifier: GPL-2.0
2fff65226SJesse Taube /*
3fff65226SJesse Taube  * Copyright (C) 2022
4fff65226SJesse Taube  * Author(s): Jesse Taube <Mr.Bossman075@gmail.com>
5fff65226SJesse Taube  */
6fff65226SJesse Taube 
7fff65226SJesse Taube #include <linux/err.h>
8fff65226SJesse Taube #include <linux/init.h>
9*060f03e9SRob Herring #include <linux/of.h>
10fff65226SJesse Taube #include <linux/pinctrl/pinctrl.h>
11fff65226SJesse Taube #include <linux/platform_device.h>
12fff65226SJesse Taube 
13fff65226SJesse Taube #include "pinctrl-imx.h"
14fff65226SJesse Taube 
15fff65226SJesse Taube enum imxrt1170_pads {
16fff65226SJesse Taube 	IMXRT1170_PAD_RESERVE0,
17fff65226SJesse Taube 	IMXRT1170_PAD_RESERVE1,
18fff65226SJesse Taube 	IMXRT1170_PAD_RESERVE2,
19fff65226SJesse Taube 	IMXRT1170_PAD_RESERVE3,
20fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_00,
21fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_01,
22fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_02,
23fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_03,
24fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_04,
25fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_05,
26fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_06,
27fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_07,
28fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_08,
29fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_09,
30fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_10,
31fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_11,
32fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_12,
33fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_13,
34fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_14,
35fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_15,
36fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_16,
37fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_17,
38fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_18,
39fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_19,
40fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_20,
41fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_21,
42fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_22,
43fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_23,
44fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_24,
45fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_25,
46fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_26,
47fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_27,
48fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_28,
49fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_29,
50fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_30,
51fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_31,
52fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_32,
53fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_33,
54fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_34,
55fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_35,
56fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_36,
57fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_37,
58fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_38,
59fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_39,
60fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_40,
61fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B1_41,
62fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B2_00,
63fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B2_01,
64fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B2_02,
65fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B2_03,
66fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B2_04,
67fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B2_05,
68fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B2_06,
69fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B2_07,
70fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B2_08,
71fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B2_09,
72fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B2_10,
73fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B2_11,
74fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B2_12,
75fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B2_13,
76fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B2_14,
77fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B2_15,
78fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B2_16,
79fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B2_17,
80fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B2_18,
81fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B2_19,
82fff65226SJesse Taube 	IMXRT1170_PAD_EMC_B2_20,
83fff65226SJesse Taube 	IMXRT1170_PAD_AD_00,
84fff65226SJesse Taube 	IMXRT1170_PAD_AD_01,
85fff65226SJesse Taube 	IMXRT1170_PAD_AD_02,
86fff65226SJesse Taube 	IMXRT1170_PAD_AD_03,
87fff65226SJesse Taube 	IMXRT1170_PAD_AD_04,
88fff65226SJesse Taube 	IMXRT1170_PAD_AD_05,
89fff65226SJesse Taube 	IMXRT1170_PAD_AD_06,
90fff65226SJesse Taube 	IMXRT1170_PAD_AD_07,
91fff65226SJesse Taube 	IMXRT1170_PAD_AD_08,
92fff65226SJesse Taube 	IMXRT1170_PAD_AD_09,
93fff65226SJesse Taube 	IMXRT1170_PAD_AD_10,
94fff65226SJesse Taube 	IMXRT1170_PAD_AD_11,
95fff65226SJesse Taube 	IMXRT1170_PAD_AD_12,
96fff65226SJesse Taube 	IMXRT1170_PAD_AD_13,
97fff65226SJesse Taube 	IMXRT1170_PAD_AD_14,
98fff65226SJesse Taube 	IMXRT1170_PAD_AD_15,
99fff65226SJesse Taube 	IMXRT1170_PAD_AD_16,
100fff65226SJesse Taube 	IMXRT1170_PAD_AD_17,
101fff65226SJesse Taube 	IMXRT1170_PAD_AD_18,
102fff65226SJesse Taube 	IMXRT1170_PAD_AD_19,
103fff65226SJesse Taube 	IMXRT1170_PAD_AD_20,
104fff65226SJesse Taube 	IMXRT1170_PAD_AD_21,
105fff65226SJesse Taube 	IMXRT1170_PAD_AD_22,
106fff65226SJesse Taube 	IMXRT1170_PAD_AD_23,
107fff65226SJesse Taube 	IMXRT1170_PAD_AD_24,
108fff65226SJesse Taube 	IMXRT1170_PAD_AD_25,
109fff65226SJesse Taube 	IMXRT1170_PAD_AD_26,
110fff65226SJesse Taube 	IMXRT1170_PAD_AD_27,
111fff65226SJesse Taube 	IMXRT1170_PAD_AD_28,
112fff65226SJesse Taube 	IMXRT1170_PAD_AD_29,
113fff65226SJesse Taube 	IMXRT1170_PAD_AD_30,
114fff65226SJesse Taube 	IMXRT1170_PAD_AD_31,
115fff65226SJesse Taube 	IMXRT1170_PAD_AD_32,
116fff65226SJesse Taube 	IMXRT1170_PAD_AD_33,
117fff65226SJesse Taube 	IMXRT1170_PAD_AD_34,
118fff65226SJesse Taube 	IMXRT1170_PAD_AD_35,
119fff65226SJesse Taube 	IMXRT1170_PAD_SD_B1_00,
120fff65226SJesse Taube 	IMXRT1170_PAD_SD_B1_01,
121fff65226SJesse Taube 	IMXRT1170_PAD_SD_B1_02,
122fff65226SJesse Taube 	IMXRT1170_PAD_SD_B1_03,
123fff65226SJesse Taube 	IMXRT1170_PAD_SD_B1_04,
124fff65226SJesse Taube 	IMXRT1170_PAD_SD_B1_05,
125fff65226SJesse Taube 	IMXRT1170_PAD_SD_B2_00,
126fff65226SJesse Taube 	IMXRT1170_PAD_SD_B2_01,
127fff65226SJesse Taube 	IMXRT1170_PAD_SD_B2_02,
128fff65226SJesse Taube 	IMXRT1170_PAD_SD_B2_03,
129fff65226SJesse Taube 	IMXRT1170_PAD_SD_B2_04,
130fff65226SJesse Taube 	IMXRT1170_PAD_SD_B2_05,
131fff65226SJesse Taube 	IMXRT1170_PAD_SD_B2_06,
132fff65226SJesse Taube 	IMXRT1170_PAD_SD_B2_07,
133fff65226SJesse Taube 	IMXRT1170_PAD_SD_B2_08,
134fff65226SJesse Taube 	IMXRT1170_PAD_SD_B2_09,
135fff65226SJesse Taube 	IMXRT1170_PAD_SD_B2_10,
136fff65226SJesse Taube 	IMXRT1170_PAD_SD_B2_11,
137fff65226SJesse Taube 	IMXRT1170_PAD_DISP_B1_00,
138fff65226SJesse Taube 	IMXRT1170_PAD_DISP_B1_01,
139fff65226SJesse Taube 	IMXRT1170_PAD_DISP_B1_02,
140fff65226SJesse Taube 	IMXRT1170_PAD_DISP_B1_03,
141fff65226SJesse Taube 	IMXRT1170_PAD_DISP_B1_04,
142fff65226SJesse Taube 	IMXRT1170_PAD_DISP_B1_05,
143fff65226SJesse Taube 	IMXRT1170_PAD_DISP_B1_06,
144fff65226SJesse Taube 	IMXRT1170_PAD_DISP_B1_07,
145fff65226SJesse Taube 	IMXRT1170_PAD_DISP_B1_08,
146fff65226SJesse Taube 	IMXRT1170_PAD_DISP_B1_09,
147fff65226SJesse Taube 	IMXRT1170_PAD_DISP_B1_10,
148fff65226SJesse Taube 	IMXRT1170_PAD_DISP_B1_11,
149fff65226SJesse Taube 	IMXRT1170_PAD_DISP_B2_00,
150fff65226SJesse Taube 	IMXRT1170_PAD_DISP_B2_01,
151fff65226SJesse Taube 	IMXRT1170_PAD_DISP_B2_02,
152fff65226SJesse Taube 	IMXRT1170_PAD_DISP_B2_03,
153fff65226SJesse Taube 	IMXRT1170_PAD_DISP_B2_04,
154fff65226SJesse Taube 	IMXRT1170_PAD_DISP_B2_05,
155fff65226SJesse Taube 	IMXRT1170_PAD_DISP_B2_06,
156fff65226SJesse Taube 	IMXRT1170_PAD_DISP_B2_07,
157fff65226SJesse Taube 	IMXRT1170_PAD_DISP_B2_08,
158fff65226SJesse Taube 	IMXRT1170_PAD_DISP_B2_09,
159fff65226SJesse Taube 	IMXRT1170_PAD_DISP_B2_10,
160fff65226SJesse Taube 	IMXRT1170_PAD_DISP_B2_11,
161fff65226SJesse Taube 	IMXRT1170_PAD_DISP_B2_12,
162fff65226SJesse Taube 	IMXRT1170_PAD_DISP_B2_13,
163fff65226SJesse Taube 	IMXRT1170_PAD_DISP_B2_14,
164fff65226SJesse Taube 	IMXRT1170_PAD_DISP_B2_15,
165fff65226SJesse Taube };
166fff65226SJesse Taube 
167fff65226SJesse Taube /* Pad names for the pinmux subsystem */
168fff65226SJesse Taube static const struct pinctrl_pin_desc imxrt1170_pinctrl_pads[] = {
169fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_RESERVE0),
170fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_RESERVE1),
171fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_RESERVE2),
172fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_RESERVE3),
173fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_00),
174fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_01),
175fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_02),
176fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_03),
177fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_04),
178fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_05),
179fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_06),
180fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_07),
181fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_08),
182fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_09),
183fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_10),
184fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_11),
185fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_12),
186fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_13),
187fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_14),
188fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_15),
189fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_16),
190fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_17),
191fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_18),
192fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_19),
193fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_20),
194fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_21),
195fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_22),
196fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_23),
197fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_24),
198fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_25),
199fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_26),
200fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_27),
201fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_28),
202fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_29),
203fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_30),
204fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_31),
205fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_32),
206fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_33),
207fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_34),
208fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_35),
209fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_36),
210fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_37),
211fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_38),
212fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_39),
213fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_40),
214fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_41),
215fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_00),
216fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_01),
217fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_02),
218fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_03),
219fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_04),
220fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_05),
221fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_06),
222fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_07),
223fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_08),
224fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_09),
225fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_10),
226fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_11),
227fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_12),
228fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_13),
229fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_14),
230fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_15),
231fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_16),
232fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_17),
233fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_18),
234fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_19),
235fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_20),
236fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_00),
237fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_01),
238fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_02),
239fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_03),
240fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_04),
241fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_05),
242fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_06),
243fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_07),
244fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_08),
245fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_09),
246fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_10),
247fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_11),
248fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_12),
249fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_13),
250fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_14),
251fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_15),
252fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_16),
253fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_17),
254fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_18),
255fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_19),
256fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_20),
257fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_21),
258fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_22),
259fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_23),
260fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_24),
261fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_25),
262fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_26),
263fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_27),
264fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_28),
265fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_29),
266fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_30),
267fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_31),
268fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_32),
269fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_33),
270fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_34),
271fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_35),
272fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B1_00),
273fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B1_01),
274fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B1_02),
275fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B1_03),
276fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B1_04),
277fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B1_05),
278fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B2_00),
279fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B2_01),
280fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B2_02),
281fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B2_03),
282fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B2_04),
283fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B2_05),
284fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B2_06),
285fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B2_07),
286fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B2_08),
287fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B2_09),
288fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B2_10),
289fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B2_11),
290fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B1_00),
291fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B1_01),
292fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B1_02),
293fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B1_03),
294fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B1_04),
295fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B1_05),
296fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B1_06),
297fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B1_07),
298fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B1_08),
299fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B1_09),
300fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B1_10),
301fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B1_11),
302fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_00),
303fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_01),
304fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_02),
305fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_03),
306fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_04),
307fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_05),
308fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_06),
309fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_07),
310fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_08),
311fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_09),
312fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_10),
313fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_11),
314fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_12),
315fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_13),
316fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_14),
317fff65226SJesse Taube 	IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_15),
318fff65226SJesse Taube };
319fff65226SJesse Taube 
320fff65226SJesse Taube static const struct imx_pinctrl_soc_info imxrt1170_pinctrl_info = {
321fff65226SJesse Taube 	.pins = imxrt1170_pinctrl_pads,
322fff65226SJesse Taube 	.npins = ARRAY_SIZE(imxrt1170_pinctrl_pads),
323fff65226SJesse Taube 	.gpr_compatible = "fsl,imxrt1170-iomuxc-gpr",
324fff65226SJesse Taube };
325fff65226SJesse Taube 
326fff65226SJesse Taube static const struct of_device_id imxrt1170_pinctrl_of_match[] = {
327fff65226SJesse Taube 	{ .compatible = "fsl,imxrt1170-iomuxc", .data = &imxrt1170_pinctrl_info, },
328fff65226SJesse Taube 	{ /* sentinel */ }
329fff65226SJesse Taube };
330fff65226SJesse Taube 
imxrt1170_pinctrl_probe(struct platform_device * pdev)331fff65226SJesse Taube static int imxrt1170_pinctrl_probe(struct platform_device *pdev)
332fff65226SJesse Taube {
333fff65226SJesse Taube 	return imx_pinctrl_probe(pdev, &imxrt1170_pinctrl_info);
334fff65226SJesse Taube }
335fff65226SJesse Taube 
336fff65226SJesse Taube static struct platform_driver imxrt1170_pinctrl_driver = {
337fff65226SJesse Taube 	.driver = {
338fff65226SJesse Taube 		.name = "imxrt1170-pinctrl",
339fff65226SJesse Taube 		.of_match_table = of_match_ptr(imxrt1170_pinctrl_of_match),
340fff65226SJesse Taube 		.suppress_bind_attrs = true,
341fff65226SJesse Taube 	},
342fff65226SJesse Taube 	.probe = imxrt1170_pinctrl_probe,
343fff65226SJesse Taube };
344fff65226SJesse Taube 
imxrt1170_pinctrl_init(void)345fff65226SJesse Taube static int __init imxrt1170_pinctrl_init(void)
346fff65226SJesse Taube {
347fff65226SJesse Taube 	return platform_driver_register(&imxrt1170_pinctrl_driver);
348fff65226SJesse Taube }
349fff65226SJesse Taube arch_initcall(imxrt1170_pinctrl_init);
350