Skip to content

Commit fff6522

Browse files
Mr-BossmanLinus Walleij
authored andcommitted
pinctrl: freescale: Add i.MXRT1170 pinctrl driver support
Add the pinctrl driver support for i.MXRT1170. Cc: Giulio Benetti <giulio.benetti@benettiengineering.com> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Dong Aisheng <aisheng.dong@nxp.com> Link: https://lore.kernel.org/r/20220517032802.451743-11-Mr.Bossman075@gmail.com Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
1 parent 0dfd7fc commit fff6522

3 files changed

Lines changed: 357 additions & 0 deletions

File tree

drivers/pinctrl/freescale/Kconfig

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -206,3 +206,10 @@ config PINCTRL_IMX23
206206
config PINCTRL_IMX28
207207
bool
208208
select PINCTRL_MXS
209+
210+
config PINCTRL_IMXRT1170
211+
bool "IMXRT1170 pinctrl driver"
212+
depends on ARCH_MXC
213+
select PINCTRL_IMX
214+
help
215+
Say Y here to enable the imxrt1170 pinctrl driver

drivers/pinctrl/freescale/Makefile

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

0 commit comments

Comments
 (0)