blob: c2fd0c0392ce1ee2bf718bba7917192175e55cdf [file] [log] [blame]
Jesse Taubed68abc22022-07-26 01:43:45 -04001// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
2/*
3 * Copyright (C) 2022
4 * Author(s): Jesse Taube <Mr.Bossman075@gmail.com>
5 * Giulio Benetti <giulio.benetti@benettiengineering.com>
6 */
7
8/dts-v1/;
9#include "imxrt1170.dtsi"
10#include "imxrt1170-evk-u-boot.dtsi"
11#include "imxrt1170-pinfunc.h"
12
13/ {
14 model = "NXP imxrt1170-evk board";
15 compatible = "fsl,imxrt1170-evk", "fsl,imxrt1170";
16
17 chosen {
18 stdout-path = "serial0:115200n8";
19 tick-timer = &gpt1;
20 };
21
22 memory {
23 device_type = "memory";
24 reg = <0x20240000 0xf0000 0x80000000 0x4000000>;
25
26 ocram: ocram@20240000 {
27 device_type = "memory";
28 reg = <0x20240000 0xf0000>;
29 };
30
31 sdram: sdram@80000000 {
32 device_type = "memory";
33 reg = <0x80000000 0x4000000>;
34 };
35 };
36};
37
38&lpuart1 { /* console */
39 pinctrl-names = "default";
40 pinctrl-0 = <&pinctrl_lpuart1>;
41 status = "okay";
42};
43
44&semc {
45 /*
46 * Memory configuration from sdram datasheet IS42S16160J-6BLI
47 */
48 fsl,sdram-mux = /bits/ 8 <MUX_A8_SDRAM_A8
49 0
50 0
51 0
52 0
53 0>;
54 fsl,sdram-control = /bits/ 8 <MEM_WIDTH_32BITS
55 BL_8
56 COL_9BITS
57 CL_3>;
58 fsl,sdram-timing = /bits/ 8 <0x2
59 0x2
60 0xd
61 0x0
62 0x8
63 0x7
64
65 0x0d
66 0x0b
67 0x00
68 0x00
69
70 0x00
71 0x0A
72 0x08
73 0x09>;
74
75 bank1: bank@0 {
76 fsl,base-address = <0x80000000>;
77 fsl,memory-size = <MEM_SIZE_64M>;
78 };
79};
80
81&iomuxc {
82 pinctrl-names = "default";
83 pinctrl-0 = <&pinctrl_lpuart1>;
84
85 imxrt1170-evk {
86 pinctrl_lpuart1: lpuart1grp {
87 fsl,pins = <
88 IOMUXC_GPIO_AD_24_LPUART1_TXD 0xf1
89 IOMUXC_GPIO_AD_25_LPUART1_RXD 0xf1
90 >;
91 };
92
93 pinctrl_usdhc0: usdhc0grp {
94 fsl,pins = <
95 IOMUXC_GPIO_AD_32_USDHC1_CD_B
96 0x1B000
97 IOMUXC_GPIO_AD_34_USDHC1_VSELECT
98 0xB069
99 IOMUXC_GPIO_SD_B1_00_USDHC1_CMD
100 0x17061
101 IOMUXC_GPIO_SD_B1_01_USDHC1_CLK
102 0x17061
103 IOMUXC_GPIO_SD_B1_05_USDHC1_DATA3
104 0x17061
105 IOMUXC_GPIO_SD_B1_04_USDHC1_DATA2
106 0x17061
107 IOMUXC_GPIO_SD_B1_03_USDHC1_DATA1
108 0x17061
109 IOMUXC_GPIO_SD_B1_02_USDHC1_DATA0
110 0x17061
111 >;
112 };
113 pinctrl_semc: semcgrp {
114 fsl,pins = <
115 IOMUXC_GPIO_EMC_B1_00_SEMC_DATA00
116 8 /* SEMC_D0 */
117 IOMUXC_GPIO_EMC_B1_01_SEMC_DATA01
118 8 /* SEMC_D1 */
119 IOMUXC_GPIO_EMC_B1_02_SEMC_DATA02
120 8 /* SEMC_D2 */
121 IOMUXC_GPIO_EMC_B1_03_SEMC_DATA03
122 8 /* SEMC_D3 */
123 IOMUXC_GPIO_EMC_B1_04_SEMC_DATA04
124 8 /* SEMC_D4 */
125 IOMUXC_GPIO_EMC_B1_05_SEMC_DATA05
126 8 /* SEMC_D5 */
127 IOMUXC_GPIO_EMC_B1_06_SEMC_DATA06
128 8 /* SEMC_D6 */
129 IOMUXC_GPIO_EMC_B1_07_SEMC_DATA07
130 8 /* SEMC_D7 */
131 IOMUXC_GPIO_EMC_B1_08_SEMC_DM00
132 8 /* SEMC_DM0 */
133 IOMUXC_GPIO_EMC_B1_09_SEMC_ADDR00
134 8 /* SEMC_A0 */
135 IOMUXC_GPIO_EMC_B1_10_SEMC_ADDR01
136 8 /* SEMC_A1 */
137 IOMUXC_GPIO_EMC_B1_11_SEMC_ADDR02
138 8 /* SEMC_A2 */
139 IOMUXC_GPIO_EMC_B1_12_SEMC_ADDR03
140 8 /* SEMC_A3 */
141 IOMUXC_GPIO_EMC_B1_13_SEMC_ADDR04
142 8 /* SEMC_A4 */
143 IOMUXC_GPIO_EMC_B1_14_SEMC_ADDR05
144 8 /* SEMC_A5 */
145 IOMUXC_GPIO_EMC_B1_15_SEMC_ADDR06
146 8 /* SEMC_A6 */
147 IOMUXC_GPIO_EMC_B1_16_SEMC_ADDR07
148 8 /* SEMC_A7 */
149 IOMUXC_GPIO_EMC_B1_17_SEMC_ADDR08
150 8 /* SEMC_A8 */
151 IOMUXC_GPIO_EMC_B1_18_SEMC_ADDR09
152 8 /* SEMC_A9 */
153 IOMUXC_GPIO_EMC_B1_19_SEMC_ADDR11
154 8 /* SEMC_A11 */
155 IOMUXC_GPIO_EMC_B1_20_SEMC_ADDR12
156 8 /* SEMC_A12 */
157 IOMUXC_GPIO_EMC_B1_21_SEMC_BA0
158 8 /* SEMC_BA0 */
159 IOMUXC_GPIO_EMC_B1_22_SEMC_BA1
160 8 /* SEMC_BA1 */
161 IOMUXC_GPIO_EMC_B1_23_SEMC_ADDR10
162 8 /* SEMC_A10 */
163 IOMUXC_GPIO_EMC_B1_24_SEMC_CAS
164 8 /* SEMC_CAS */
165 IOMUXC_GPIO_EMC_B1_25_SEMC_RAS
166 8 /* SEMC_RAS */
167 IOMUXC_GPIO_EMC_B1_26_SEMC_CLK
168 8 /* SEMC_CLK */
169 IOMUXC_GPIO_EMC_B1_27_SEMC_CKE
170 8 /* SEMC_CKE */
171 IOMUXC_GPIO_EMC_B1_28_SEMC_WE
172 8 /* SEMC_WE */
173 IOMUXC_GPIO_EMC_B1_29_SEMC_CS0
174 8 /* SEMC_CS0 */
175 IOMUXC_GPIO_EMC_B1_30_SEMC_DATA08
176 8 /* SEMC_D8 */
177 IOMUXC_GPIO_EMC_B1_31_SEMC_DATA09
178 8 /* SEMC_D9 */
179 IOMUXC_GPIO_EMC_B1_32_SEMC_DATA10
180 8 /* SEMC_D10 */
181 IOMUXC_GPIO_EMC_B1_33_SEMC_DATA11
182 8 /* SEMC_D11 */
183 IOMUXC_GPIO_EMC_B1_34_SEMC_DATA12
184 8 /* SEMC_D12 */
185 IOMUXC_GPIO_EMC_B1_35_SEMC_DATA13
186 8 /* SEMC_D13 */
187 IOMUXC_GPIO_EMC_B1_36_SEMC_DATA14
188 8 /* SEMC_D14 */
189 IOMUXC_GPIO_EMC_B1_37_SEMC_DATA15
190 8 /* SEMC_D15 */
191 IOMUXC_GPIO_EMC_B1_08_SEMC_DM00
192 8 /* SEMC_DM00 */
193 IOMUXC_GPIO_EMC_B1_38_SEMC_DM01
194 8 /* SEMC_DM01 */
195 IOMUXC_GPIO_EMC_B2_08_SEMC_DM02
196 4 /* SEMC_DM02 */
197 IOMUXC_GPIO_EMC_B2_17_SEMC_DM03
198 8 /* SEMC_DM03 */
199 IOMUXC_GPIO_EMC_B2_00_SEMC_DATA16
200 8 /* SEMC_D16 */
201 IOMUXC_GPIO_EMC_B2_01_SEMC_DATA17
202 8 /* SEMC_D17 */
203 IOMUXC_GPIO_EMC_B2_02_SEMC_DATA18
204 8 /* SEMC_D18 */
205 IOMUXC_GPIO_EMC_B2_03_SEMC_DATA19
206 8 /* SEMC_D19 */
207 IOMUXC_GPIO_EMC_B2_04_SEMC_DATA20
208 8 /* SEMC_D20 */
209 IOMUXC_GPIO_EMC_B2_05_SEMC_DATA21
210 8 /* SEMC_D21 */
211 IOMUXC_GPIO_EMC_B2_06_SEMC_DATA22
212 8 /* SEMC_D22 */
213 IOMUXC_GPIO_EMC_B2_07_SEMC_DATA23
214 8 /* SEMC_D23 */
215 IOMUXC_GPIO_EMC_B2_09_SEMC_DATA24
216 8 /* SEMC_D24 */
217 IOMUXC_GPIO_EMC_B2_10_SEMC_DATA25
218 8 /* SEMC_D25 */
219 IOMUXC_GPIO_EMC_B2_11_SEMC_DATA26
220 4 /* SEMC_D26 */
221 IOMUXC_GPIO_EMC_B2_12_SEMC_DATA27
222 8 /* SEMC_D27 */
223 IOMUXC_GPIO_EMC_B2_13_SEMC_DATA28
224 8 /* SEMC_D28 */
225 IOMUXC_GPIO_EMC_B2_14_SEMC_DATA29
226 8 /* SEMC_D29 */
227 IOMUXC_GPIO_EMC_B2_15_SEMC_DATA30
228 8 /* SEMC_D30 */
229 IOMUXC_GPIO_EMC_B2_16_SEMC_DATA31
230 8 /* SEMC_D31 */
231 IOMUXC_GPIO_EMC_B1_39_SEMC_DQS
232 (IMX_PAD_SION | 8) /* SEMC_DQS */
233 >;
234 };
235 };
236};
237
238&gpt1 {
239 status = "okay";
240};
241
242&usdhc1 {
243 pinctrl-names = "default", "state_100mhz", "state_200mhz", "sleep";
244 pinctrl-0 = <&pinctrl_usdhc0>;
245 pinctrl-1 = <&pinctrl_usdhc0>;
246 pinctrl-2 = <&pinctrl_usdhc0>;
247 pinctrl-3 = <&pinctrl_usdhc0>;
248 status = "okay";
249 broken-cd;
250};