blob: d22c0cabec7a0c84f84c49e4785a739664567e98 [file] [log] [blame]
Peter Chubbb6152672016-08-30 22:54:46 +00001/dts-v1/;
2
3#include "tegra124.dtsi"
4
5/ {
6 model = "Colorado Engineering TK1-SOM";
7 compatible = "nvidia,cei-tk1-som", "nvidia,tegra124";
8
9 chosen {
10 stdout-path = &uartd;
11 };
12
13 aliases {
14 i2c0 = "/i2c@7000d000";
15 i2c1 = "/i2c@7000c000";
16 i2c2 = "/i2c@7000c400";
17 i2c3 = "/i2c@7000c500";
18 i2c4 = "/i2c@7000c700";
19 sdhci0 = "/sdhci@700b0600";
20 sdhci1 = "/sdhci@700b0400";
21 spi0 = "/spi@7000d400";
22 spi1 = "/spi@7000da00";
23 usb0 = "/usb@7d000000";
24 usb1 = "/usb@7d008000";
25 };
26
27 memory {
28 device_type = "memory";
29 reg = <0x80000000 0x80000000>;
30 };
31
32 pcie-controller@01003000 {
33 status = "okay";
34
35 avddio-pex-supply = <&vdd_1v05_run>;
36 dvddio-pex-supply = <&vdd_1v05_run>;
37 avdd-pex-pll-supply = <&vdd_1v05_run>;
38 hvdd-pex-supply = <&vdd_3v3_lp0>;
39 hvdd-pex-pll-e-supply = <&vdd_3v3_lp0>;
40 vddio-pex-ctl-supply = <&vdd_3v3_lp0>;
41 avdd-pll-erefe-supply = <&avdd_1v05_run>;
42
43 pci@1,0 {
44 status = "okay";
45 nvidia,num-lanes = <4>;
46 };
47
48 pci@2,0 {
49 status = "okay";
50 };
51 };
52
53 i2c@7000c000 {
54 status = "okay";
55 clock-frequency = <100000>;
56 };
57
58 i2c@7000c400 {
59 status = "okay";
60 clock-frequency = <100000>;
61 };
62
63 i2c@7000c500 {
64 status = "okay";
65 clock-frequency = <100000>;
66 };
67
68 i2c@7000c700 {
69 status = "okay";
70 clock-frequency = <100000>;
71 };
72
73 /* Expansion PWR_I2C_*, on-board components */
74 i2c@7000d000 {
75 status = "okay";
76 clock-frequency = <400000>;
77
78 pmic: pmic@40 {
79 compatible = "ams,as3722";
80 reg = <0x40>;
81 interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>;
82
83 ams,system-power-controller;
84
85 #interrupt-cells = <2>;
86 interrupt-controller;
87
88 gpio-controller;
89 #gpio-cells = <2>;
90
91 pinctrl-names = "default";
92 pinctrl-0 = <&as3722_default>;
93
94 as3722_default: pinmux {
95 gpio0 {
96 pins = "gpio0";
97 function = "gpio";
98 bias-pull-down;
99 };
100
101 gpio1_2_4_7 {
102 pins = "gpio1", "gpio2", "gpio4", "gpio7";
103 function = "gpio";
104 bias-pull-up;
105 };
106
107 gpio3_5_6 {
108 pins = "gpio3", "gpio5", "gpio6";
109 bias-high-impedance;
110 };
111 };
112
113 regulators {
114 vsup-sd2-supply = <&vdd_5v0_sys>;
115 vsup-sd3-supply = <&vdd_5v0_sys>;
116 vsup-sd4-supply = <&vdd_5v0_sys>;
117 vsup-sd5-supply = <&vdd_5v0_sys>;
118 vin-ldo0-supply = <&vdd_1v35_lp0>;
119 vin-ldo1-6-supply = <&vdd_3v3_run>;
120 vin-ldo2-5-7-supply = <&vddio_1v8>;
121 vin-ldo3-4-supply = <&vdd_3v3_sys>;
122 vin-ldo9-10-supply = <&vdd_5v0_sys>;
123 vin-ldo11-supply = <&vdd_3v3_run>;
124
125 sd0 {
126 regulator-name = "+VDD_CPU_AP";
127 regulator-min-microvolt = <700000>;
128 regulator-max-microvolt = <1400000>;
129 regulator-min-microamp = <3500000>;
130 regulator-max-microamp = <3500000>;
131 regulator-always-on;
132 regulator-boot-on;
133 ams,ext-control = <2>;
134 };
135
136 sd1 {
137 regulator-name = "+VDD_CORE";
138 regulator-min-microvolt = <700000>;
139 regulator-max-microvolt = <1350000>;
140 regulator-min-microamp = <2500000>;
141 regulator-max-microamp = <2500000>;
142 regulator-always-on;
143 regulator-boot-on;
144 ams,ext-control = <1>;
145 };
146
147 vdd_1v35_lp0: sd2 {
148 regulator-name = "+1.35V_LP0(sd2)";
149 regulator-min-microvolt = <1350000>;
150 regulator-max-microvolt = <1350000>;
151 regulator-always-on;
152 regulator-boot-on;
153 };
154
155 sd3 {
156 regulator-name = "+1.35V_LP0(sd3)";
157 regulator-min-microvolt = <1350000>;
158 regulator-max-microvolt = <1350000>;
159 regulator-always-on;
160 regulator-boot-on;
161 };
162
163 vdd_1v05_run: sd4 {
164 regulator-name = "+1.05V_RUN";
165 regulator-min-microvolt = <1050000>;
166 regulator-max-microvolt = <1050000>;
167 };
168
169 vddio_1v8: sd5 {
170 regulator-name = "+1.8V_VDDIO";
171 regulator-min-microvolt = <1800000>;
172 regulator-max-microvolt = <1800000>;
173 regulator-boot-on;
174 regulator-always-on;
175 };
176
177 vdd_gpu: sd6 {
178 regulator-name = "+VDD_GPU_AP";
179 regulator-min-microvolt = <650000>;
180 regulator-max-microvolt = <1200000>;
181 regulator-min-microamp = <3500000>;
182 regulator-max-microamp = <3500000>;
183 regulator-boot-on;
184 regulator-always-on;
185 };
186
187 avdd_1v05_run: ldo0 {
188 regulator-name = "+1.05V_RUN_AVDD";
189 regulator-min-microvolt = <1050000>;
190 regulator-max-microvolt = <1050000>;
191 regulator-boot-on;
192 regulator-always-on;
193 ams,ext-control = <1>;
194 };
195
196 ldo1 {
197 regulator-name = "+1.8V_RUN_CAM";
198 regulator-min-microvolt = <1800000>;
199 regulator-max-microvolt = <1800000>;
200 };
201
202 ldo2 {
203 regulator-name = "+1.2V_GEN_AVDD";
204 regulator-min-microvolt = <1200000>;
205 regulator-max-microvolt = <1200000>;
206 regulator-boot-on;
207 regulator-always-on;
208 };
209
210 ldo3 {
211 regulator-name = "+1.05V_LP0_VDD_RTC";
212 regulator-min-microvolt = <1000000>;
213 regulator-max-microvolt = <1000000>;
214 regulator-boot-on;
215 regulator-always-on;
216 ams,enable-tracking;
217 };
218
219 ldo4 {
220 regulator-name = "+2.8V_RUN_CAM";
221 regulator-min-microvolt = <2800000>;
222 regulator-max-microvolt = <2800000>;
223 };
224
225 ldo5 {
226 regulator-name = "+1.2V_RUN_CAM_FRONT";
227 regulator-min-microvolt = <1200000>;
228 regulator-max-microvolt = <1200000>;
229 };
230
231 vddio_sdmmc3: ldo6 {
232 regulator-name = "+VDDIO_SDMMC3";
233 regulator-min-microvolt = <1800000>;
234 regulator-max-microvolt = <3300000>;
235 };
236
237 ldo7 {
238 regulator-name = "+1.05V_RUN_CAM_REAR";
239 regulator-min-microvolt = <1050000>;
240 regulator-max-microvolt = <1050000>;
241 };
242
243 ldo9 {
244 regulator-name = "+3.3V_RUN_TOUCH";
245 regulator-min-microvolt = <2800000>;
246 regulator-max-microvolt = <2800000>;
247 };
248
249 ldo10 {
250 regulator-name = "+2.8V_RUN_CAM_AF";
251 regulator-min-microvolt = <2800000>;
252 regulator-max-microvolt = <2800000>;
253 };
254
255 ldo11 {
256 regulator-name = "+1.8V_RUN_VPP_FUSE";
257 regulator-min-microvolt = <1800000>;
258 regulator-max-microvolt = <1800000>;
259 };
260 };
261 };
262 };
263
264 i2c@7000d100 {
265 status = "okay";
266 clock-frequency = <400000>;
267 };
268
269 spi@7000d400 {
270 status = "okay";
271 spi-max-frequency = <25000000>;
272 };
273
274 spi@7000da00 {
275 status = "okay";
276 spi-max-frequency = <25000000>;
277 };
278
279 padctl@7009f000 {
280 pinctrl-0 = <&padctl_default>;
281 pinctrl-names = "default";
282
283 padctl_default: pinmux {
284 usb3 {
285 nvidia,lanes = "sata-0";
286 nvidia,function = "usb3";
287 nvidia,iddq = <0>;
288 };
289
290 pcie {
291 nvidia,lanes = "pcie-0", "pcie-1", "pcie-2", "pcie-3",
292 "pcie-4";
293 nvidia,function = "pcie";
294 nvidia,iddq = <0>;
295 };
296
297 };
298 };
299
300 sdhci@700b0400 {
301 status = "okay";
302 cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>;
303 power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>;
304 wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_HIGH>;
305 bus-width = <4>;
306 };
307
308 sdhci@700b0600 {
309 status = "okay";
310 bus-width = <8>;
311 };
312
313 usb@7d000000 {
314 status = "okay";
315 dr_mode = "otg";
316 nvidia,vbus-gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>;
317 };
318
319 usb@7d008000 {
320 status = "okay";
321 nvidia,vbus-gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>;
322 };
323
324 clocks {
325 compatible = "simple-bus";
326 #address-cells = <1>;
327 #size-cells = <0>;
328
329 clk32k_in: clock@0 {
330 compatible = "fixed-clock";
331 reg = <0>;
332 #clock-cells = <0>;
333 clock-frequency = <32768>;
334 };
335 };
336
337 regulators {
338 compatible = "simple-bus";
339 #address-cells = <1>;
340 #size-cells = <0>;
341
342 vdd_mux: regulator@0 {
343 compatible = "regulator-fixed";
344 reg = <0>;
345 regulator-name = "+VDD_MUX";
346 regulator-min-microvolt = <12000000>;
347 regulator-max-microvolt = <12000000>;
348 regulator-always-on;
349 regulator-boot-on;
350 };
351
352 vdd_5v0_sys: regulator@1 {
353 compatible = "regulator-fixed";
354 reg = <1>;
355 regulator-name = "+5V_SYS";
356 regulator-min-microvolt = <5000000>;
357 regulator-max-microvolt = <5000000>;
358 regulator-always-on;
359 regulator-boot-on;
360 vin-supply = <&vdd_mux>;
361 };
362
363 vdd_3v3_sys: regulator@2 {
364 compatible = "regulator-fixed";
365 reg = <2>;
366 regulator-name = "+3.3V_SYS";
367 regulator-min-microvolt = <3300000>;
368 regulator-max-microvolt = <3300000>;
369 regulator-always-on;
370 regulator-boot-on;
371 vin-supply = <&vdd_mux>;
372 };
373
374 vdd_3v3_run: regulator@3 {
375 compatible = "regulator-fixed";
376 reg = <3>;
377 regulator-name = "+3.3V_RUN";
378 regulator-min-microvolt = <3300000>;
379 regulator-max-microvolt = <3300000>;
380 regulator-always-on;
381 regulator-boot-on;
382 gpio = <&pmic 1 GPIO_ACTIVE_HIGH>;
383 enable-active-high;
384 vin-supply = <&vdd_3v3_sys>;
385 };
386
387 vdd_3v3_hdmi: regulator@4 {
388 compatible = "regulator-fixed";
389 reg = <4>;
390 regulator-name = "+3.3V_AVDD_HDMI_AP_GATED";
391 regulator-min-microvolt = <3300000>;
392 regulator-max-microvolt = <3300000>;
393 vin-supply = <&vdd_3v3_run>;
394 };
395
396 vdd_usb1_vbus: regulator@7 {
397 compatible = "regulator-fixed";
398 reg = <7>;
399 regulator-name = "+USB0_VBUS_SW";
400 regulator-min-microvolt = <5000000>;
401 regulator-max-microvolt = <5000000>;
402 gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>;
403 enable-active-high;
404 gpio-open-drain;
405 vin-supply = <&vdd_5v0_sys>;
406 };
407
408 vdd_usb3_vbus: regulator@8 {
409 compatible = "regulator-fixed";
410 reg = <8>;
411 regulator-name = "+5V_USB_HS";
412 regulator-min-microvolt = <5000000>;
413 regulator-max-microvolt = <5000000>;
414 gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>;
415 enable-active-high;
416 gpio-open-drain;
417 vin-supply = <&vdd_5v0_sys>;
418 };
419
420 vdd_3v3_lp0: regulator@10 {
421 compatible = "regulator-fixed";
422 reg = <10>;
423 regulator-name = "+3.3V_LP0";
424 regulator-min-microvolt = <3300000>;
425 regulator-max-microvolt = <3300000>;
426 regulator-always-on;
427 regulator-boot-on;
428 gpio = <&pmic 2 GPIO_ACTIVE_HIGH>;
429 enable-active-high;
430 vin-supply = <&vdd_3v3_sys>;
431 };
432
433 vdd_hdmi_pll: regulator@11 {
434 compatible = "regulator-fixed";
435 reg = <11>;
436 regulator-name = "+1.05V_RUN_AVDD_HDMI_PLL";
437 regulator-min-microvolt = <1050000>;
438 regulator-max-microvolt = <1050000>;
439 gpio = <&gpio TEGRA_GPIO(H, 7) GPIO_ACTIVE_LOW>;
440 vin-supply = <&vdd_1v05_run>;
441 };
442
443 vdd_5v0_hdmi: regulator@12 {
444 compatible = "regulator-fixed";
445 reg = <12>;
446 regulator-name = "+5V_HDMI_CON";
447 regulator-min-microvolt = <5000000>;
448 regulator-max-microvolt = <5000000>;
449 gpio = <&gpio TEGRA_GPIO(K, 6) GPIO_ACTIVE_HIGH>;
450 enable-active-high;
451 vin-supply = <&vdd_5v0_sys>;
452 };
453
454 /* Molex power connector */
455 vdd_5v0_sata: regulator@13 {
456 compatible = "regulator-fixed";
457 reg = <13>;
458 regulator-name = "+5V_SATA";
459 regulator-min-microvolt = <5000000>;
460 regulator-max-microvolt = <5000000>;
461 gpio = <&gpio TEGRA_GPIO(EE, 2) GPIO_ACTIVE_HIGH>;
462 enable-active-high;
463 vin-supply = <&vdd_5v0_sys>;
464 };
465
466 vdd_12v0_sata: regulator@14 {
467 compatible = "regulator-fixed";
468 reg = <14>;
469 regulator-name = "+12V_SATA";
470 regulator-min-microvolt = <12000000>;
471 regulator-max-microvolt = <12000000>;
472 gpio = <&gpio TEGRA_GPIO(EE, 2) GPIO_ACTIVE_HIGH>;
473 enable-active-high;
474 vin-supply = <&vdd_mux>;
475 };
476 };
477};