1/*
2 * Copyright (c) 2022, NXP
3 * SPDX-License-Identifier: Apache-2.0
4 *
5 * Note: File generated by gen_board_pinctrl.py
6 * from mimxrt1020_evk.mex
7 */
8
9#include <nxp/nxp_imx/rt/mimxrt1021dag5a-pinctrl.dtsi>
10
11&pinctrl {
12	/* ADC1 inputs 10 and 11 */
13	pinmux_adc1: pinmux_adc1 {
14		group0 {
15			pinmux = <&iomuxc_gpio_ad_b1_10_adc1_in10>,
16				<&iomuxc_gpio_ad_b1_11_adc1_in11>;
17			drive-strength = "r0-6";
18			slew-rate = "slow";
19			nxp,speed = "100-mhz";
20		};
21	};
22
23	/* Note: USER_LED conflicts with ENET_RST */
24	pinmux_enet: pinmux_enet {
25		group0 {
26			pinmux = <&iomuxc_gpio_ad_b0_08_enet_ref_clk>;
27			bias-disable;
28			drive-strength = "r0-6";
29			slew-rate = "fast";
30			nxp,speed = "50-mhz";
31			input-enable;
32		};
33		group1 {
34			pinmux = <&iomuxc_gpio_ad_b0_09_enet_rx_data1>,
35				<&iomuxc_gpio_ad_b0_11_enet_rx_en>,
36				<&iomuxc_gpio_ad_b0_14_enet_tx_data0>,
37				<&iomuxc_gpio_ad_b0_15_enet_tx_data1>,
38				<&iomuxc_gpio_ad_b0_13_enet_tx_en>,
39				<&iomuxc_gpio_ad_b0_12_enet_rx_er>;
40			drive-strength = "r0-5";
41			bias-pull-up;
42			bias-pull-up-value = "100k";
43			slew-rate = "fast";
44			nxp,speed = "200-mhz";
45		};
46		group2 {
47			pinmux = <&iomuxc_gpio_ad_b0_10_enet_rx_data0>;
48			drive-strength = "r0-6";
49			slew-rate = "slow";
50			nxp,speed = "100-mhz";
51		};
52	};
53
54	pinmux_enet_mdio: pinmux_enet_mdio {
55		group0 {
56			pinmux = <&iomuxc_gpio_emc_40_enet_mdio>,
57				<&iomuxc_gpio_emc_41_enet_mdc>;
58			drive-strength = "r0-5";
59			bias-pull-up;
60			bias-pull-up-value = "100k";
61			slew-rate = "fast";
62			nxp,speed = "200-mhz";
63		};
64		group1 {
65			pinmux = <&iomuxc_gpio_ad_b1_06_gpio1_io22>;
66			drive-strength = "r0-5";
67			bias-pull-up;
68			bias-pull-up-value = "100k";
69			slew-rate = "slow";
70			nxp,speed = "100-mhz";
71		};
72		group2 {
73			pinmux = <&iomuxc_gpio_ad_b0_04_gpio1_io04>;
74			drive-strength = "r0-5";
75			bias-pull-up;
76			bias-pull-up-value = "100k";
77			slew-rate = "fast";
78			nxp,speed = "100-mhz";
79		};
80	};
81
82	pinmux_ptp: pinmux_ptp {
83		/* Intentionally empty */
84	};
85
86	pinmux_flexcan1: pinmux_flexcan1 {
87		group0 {
88			pinmux = <&iomuxc_gpio_sd_b1_00_flexcan1_tx>,
89				<&iomuxc_gpio_sd_b1_01_flexcan1_rx>;
90			drive-strength = "r0-6";
91			slew-rate = "slow";
92			nxp,speed = "100-mhz";
93			input-enable;
94		};
95	};
96
97	pinmux_lpi2c1: pinmux_lpi2c1 {
98		group0 {
99			pinmux = <&iomuxc_gpio_ad_b1_14_lpi2c1_scl>,
100				<&iomuxc_gpio_ad_b1_15_lpi2c1_sda>;
101			drive-strength = "r0-6";
102			drive-open-drain;
103			slew-rate = "slow";
104			nxp,speed = "100-mhz";
105			input-enable;
106		};
107	};
108
109	pinmux_lpi2c4: pinmux_lpi2c4 {
110		group0 {
111			pinmux = <&iomuxc_gpio_sd_b1_03_lpi2c4_sda>,
112				<&iomuxc_gpio_sd_b1_02_lpi2c4_scl>;
113			drive-strength = "r0-6";
114			drive-open-drain;
115			slew-rate = "slow";
116			nxp,speed = "100-mhz";
117			input-enable;
118		};
119	};
120
121	/* conflicts with enet pinmux */
122	pinmux_lpspi1: pinmux_lpspi1 {
123		group0 {
124			pinmux = <&iomuxc_gpio_ad_b0_10_lpspi1_sck>,
125				<&iomuxc_gpio_ad_b0_11_lpspi1_pcs0>,
126				<&iomuxc_gpio_ad_b0_12_lpspi1_sdo>,
127				<&iomuxc_gpio_ad_b0_13_lpspi1_sdi>;
128			drive-strength = "r0-6";
129			slew-rate = "slow";
130			nxp,speed = "100-mhz";
131		};
132	};
133
134	pinmux_lpuart1: pinmux_lpuart1 {
135		group0 {
136			pinmux = <&iomuxc_gpio_ad_b0_07_lpuart1_rx>,
137				<&iomuxc_gpio_ad_b0_06_lpuart1_tx>;
138			drive-strength = "r0-6";
139			slew-rate = "slow";
140			nxp,speed = "100-mhz";
141		};
142	};
143
144	pinmux_lpuart1_sleep: pinmux_lpuart1_sleep {
145		group0 {
146			pinmux = <&iomuxc_gpio_ad_b0_07_gpio1_io07>;
147			drive-strength = "r0-6";
148			bias-pull-up;
149			bias-pull-up-value = "100k";
150			slew-rate = "slow";
151			nxp,speed = "100-mhz";
152		};
153		group1 {
154			pinmux = <&iomuxc_gpio_ad_b0_06_lpuart1_tx>;
155			drive-strength = "r0-6";
156			slew-rate = "slow";
157			nxp,speed = "100-mhz";
158		};
159	};
160
161	/* conflicts with user led */
162	pinmux_lpuart2: pinmux_lpuart2 {
163		group0 {
164			pinmux = <&iomuxc_gpio_ad_b1_09_lpuart2_rx>,
165				<&iomuxc_gpio_ad_b1_08_lpuart2_tx>;
166			drive-strength = "r0-6";
167			slew-rate = "slow";
168			nxp,speed = "100-mhz";
169		};
170	};
171
172	/* conflicts with user led */
173	pinmux_lpuart2_sleep: pinmux_lpuart2_sleep {
174		group0 {
175			pinmux = <&iomuxc_gpio_ad_b1_09_gpio1_io25>;
176			drive-strength = "r0-6";
177			bias-pull-up;
178			bias-pull-up-value = "100k";
179			slew-rate = "slow";
180			nxp,speed = "100-mhz";
181		};
182		group1 {
183			pinmux = <&iomuxc_gpio_ad_b1_08_lpuart2_tx>;
184			drive-strength = "r0-6";
185			slew-rate = "slow";
186			nxp,speed = "100-mhz";
187		};
188	};
189
190
191
192	pinmux_sai3: pinmux_sai3 {
193		group0 {
194			pinmux = <&iomuxc_gpio_sd_b1_06_sai3_tx_bclk>,
195				<&iomuxc_gpio_sd_b1_07_sai3_tx_sync>,
196				<&iomuxc_gpio_sd_b1_08_sai3_tx_data>,
197				<&iomuxc_gpio_sd_b1_11_sai3_rx_data>,
198				<&iomuxc_gpio_emc_28_sai3_mclk>;
199			drive-strength = "r0-6";
200			slew-rate = "slow";
201			nxp,speed = "100-mhz";
202		};
203	};
204
205	pinmux_usdhc1: pinmux_usdhc1 {
206		group0 {
207			pinmux = <&iomuxc_gpio_sd_b0_03_usdhc1_clk>;
208			bias-disable;
209			drive-strength = "r0";
210			input-schmitt-enable;
211			slew-rate = "fast";
212			nxp,speed = "100-mhz";
213		};
214		group1 {
215			pinmux = <&iomuxc_gpio_sd_b0_02_usdhc1_cmd>,
216				<&iomuxc_gpio_sd_b0_04_usdhc1_data0>,
217				<&iomuxc_gpio_sd_b0_05_usdhc1_data1>,
218				<&iomuxc_gpio_sd_b0_00_usdhc1_data2>,
219				<&iomuxc_gpio_sd_b0_01_usdhc1_data3>,
220				<&iomuxc_gpio_sd_b0_06_gpio3_io19>;
221			drive-strength = "r0";
222			input-schmitt-enable;
223			bias-pull-up;
224			bias-pull-up-value = "47k";
225			slew-rate = "fast";
226			nxp,speed = "100-mhz";
227		};
228		group2 {
229			pinmux = <&iomuxc_gpio_ad_b1_07_usdhc1_vselect>;
230			drive-strength = "r0-4";
231			input-schmitt-enable;
232			bias-pull-up;
233			bias-pull-up-value = "47k";
234			slew-rate = "fast";
235			nxp,speed = "100-mhz";
236		};
237		group3 {
238			pinmux = <&iomuxc_gpio_sd_b1_04_gpio3_io24>;
239			drive-strength = "r0-6";
240			slew-rate = "slow";
241			nxp,speed = "100-mhz";
242		};
243	};
244
245	/* fast pinmux settings for USDHC (over 100 Mhz) */
246	pinmux_usdhc1_fast: pinmux_usdhc1_fast {
247		group0 {
248			pinmux = <&iomuxc_gpio_sd_b0_03_usdhc1_clk>;
249			bias-disable;
250			drive-strength = "r0-7";
251			input-schmitt-enable;
252			slew-rate = "fast";
253			nxp,speed = "200-mhz";
254		};
255		group1 {
256			pinmux = <&iomuxc_gpio_sd_b0_02_usdhc1_cmd>,
257				<&iomuxc_gpio_sd_b0_04_usdhc1_data0>,
258				<&iomuxc_gpio_sd_b0_05_usdhc1_data1>,
259				<&iomuxc_gpio_sd_b0_00_usdhc1_data2>,
260				<&iomuxc_gpio_sd_b0_01_usdhc1_data3>;
261			drive-strength = "r0-7";
262			input-schmitt-enable;
263			bias-pull-up;
264			bias-pull-up-value = "47k";
265			slew-rate = "fast";
266			nxp,speed = "200-mhz";
267		};
268	};
269
270	/* medium pinmux settings for USDHC (under 100 Mhz) */
271	pinmux_usdhc1_med: pinmux_usdhc1_med {
272		group0 {
273			pinmux = <&iomuxc_gpio_sd_b0_03_usdhc1_clk>;
274			bias-disable;
275			drive-strength = "r0-7";
276			input-schmitt-enable;
277			slew-rate = "fast";
278			nxp,speed = "100-mhz";
279		};
280		group1 {
281			pinmux = <&iomuxc_gpio_sd_b0_02_usdhc1_cmd>,
282				<&iomuxc_gpio_sd_b0_04_usdhc1_data0>,
283				<&iomuxc_gpio_sd_b0_05_usdhc1_data1>,
284				<&iomuxc_gpio_sd_b0_00_usdhc1_data2>,
285				<&iomuxc_gpio_sd_b0_01_usdhc1_data3>;
286			drive-strength = "r0-7";
287			input-schmitt-enable;
288			bias-pull-up;
289			bias-pull-up-value = "47k";
290			slew-rate = "fast";
291			nxp,speed = "100-mhz";
292		};
293	};
294
295	/* slow pinmux settings for USDHC (under 50 Mhz) */
296	pinmux_usdhc1_slow: pinmux_usdhc1_slow {
297		group0 {
298			pinmux = <&iomuxc_gpio_sd_b0_03_usdhc1_clk>;
299			bias-disable;
300			drive-strength = "r0-7";
301			input-schmitt-enable;
302			slew-rate = "fast";
303			nxp,speed = "50-mhz";
304		};
305		group1 {
306			pinmux = <&iomuxc_gpio_sd_b0_02_usdhc1_cmd>,
307				<&iomuxc_gpio_sd_b0_04_usdhc1_data0>,
308				<&iomuxc_gpio_sd_b0_05_usdhc1_data1>,
309				<&iomuxc_gpio_sd_b0_00_usdhc1_data2>,
310				<&iomuxc_gpio_sd_b0_01_usdhc1_data3>;
311			drive-strength = "r0-7";
312			input-schmitt-enable;
313			bias-pull-up;
314			bias-pull-up-value = "47k";
315			slew-rate = "fast";
316			nxp,speed = "50-mhz";
317		};
318	};
319
320	/* user led and board SW0 */
321	pinmux_user: pinmux_user {
322		group0 {
323			pinmux = <&iomuxc_snvs_wakeup_gpio5_io00>;
324			drive-strength = "r0-4";
325			input-schmitt-enable;
326			bias-pull-up;
327			bias-pull-up-value = "100k";
328			slew-rate = "slow";
329		};
330		group1 {
331			pinmux = <&iomuxc_gpio_ad_b0_05_gpio1_io05>;
332			drive-strength = "r0-6";
333			slew-rate = "slow";
334			nxp,speed = "100-mhz";
335		};
336	};
337
338};
339
340