Loading...
1// SPDX-License-Identifier: GPL-2.0
2#include "tegra20.dtsi"
3
4/ {
5 model = "Toradex Colibri T20 512MB";
6 compatible = "toradex,colibri_t20-512", "nvidia,tegra20";
7
8 aliases {
9 rtc0 = "/i2c@7000d000/tps6586x@34";
10 rtc1 = "/rtc@7000e000";
11 };
12
13 memory {
14 reg = <0x00000000 0x20000000>;
15 };
16
17 host1x@50000000 {
18 hdmi@54280000 {
19 vdd-supply = <&hdmi_vdd_reg>;
20 pll-supply = <&hdmi_pll_reg>;
21
22 nvidia,ddc-i2c-bus = <&i2c_ddc>;
23 nvidia,hpd-gpio = <&gpio TEGRA_GPIO(N, 7)
24 GPIO_ACTIVE_HIGH>;
25 };
26 };
27
28 pinmux@70000014 {
29 pinctrl-names = "default";
30 pinctrl-0 = <&state_default>;
31
32 state_default: pinmux {
33 audio_refclk {
34 nvidia,pins = "cdev1";
35 nvidia,function = "plla_out";
36 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
37 nvidia,tristate = <TEGRA_PIN_DISABLE>;
38 };
39 crt {
40 nvidia,pins = "crtp";
41 nvidia,function = "crt";
42 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
43 nvidia,tristate = <TEGRA_PIN_ENABLE>;
44 };
45 dap3 {
46 nvidia,pins = "dap3";
47 nvidia,function = "dap3";
48 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
49 nvidia,tristate = <TEGRA_PIN_DISABLE>;
50 };
51 displaya {
52 nvidia,pins = "ld0", "ld1", "ld2", "ld3",
53 "ld4", "ld5", "ld6", "ld7", "ld8",
54 "ld9", "ld10", "ld11", "ld12", "ld13",
55 "ld14", "ld15", "ld16", "ld17",
56 "lhs", "lpw0", "lpw2", "lsc0",
57 "lsc1", "lsck", "lsda", "lspi", "lvs";
58 nvidia,function = "displaya";
59 nvidia,tristate = <TEGRA_PIN_ENABLE>;
60 };
61 gpio_dte {
62 nvidia,pins = "dte";
63 nvidia,function = "rsvd1";
64 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
65 nvidia,tristate = <TEGRA_PIN_DISABLE>;
66 };
67 gpio_gmi {
68 nvidia,pins = "ata", "atc", "atd", "ate",
69 "dap1", "dap2", "dap4", "gpu", "irrx",
70 "irtx", "spia", "spib", "spic";
71 nvidia,function = "gmi";
72 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
73 nvidia,tristate = <TEGRA_PIN_DISABLE>;
74 };
75 gpio_pta {
76 nvidia,pins = "pta";
77 nvidia,function = "rsvd4";
78 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
79 nvidia,tristate = <TEGRA_PIN_DISABLE>;
80 };
81 gpio_uac {
82 nvidia,pins = "uac";
83 nvidia,function = "rsvd2";
84 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
85 nvidia,tristate = <TEGRA_PIN_DISABLE>;
86 };
87 hdint {
88 nvidia,pins = "hdint";
89 nvidia,function = "hdmi";
90 nvidia,tristate = <TEGRA_PIN_ENABLE>;
91 };
92 i2c1 {
93 nvidia,pins = "rm";
94 nvidia,function = "i2c1";
95 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
96 nvidia,tristate = <TEGRA_PIN_ENABLE>;
97 };
98 i2c3 {
99 nvidia,pins = "dtf";
100 nvidia,function = "i2c3";
101 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
102 nvidia,tristate = <TEGRA_PIN_ENABLE>;
103 };
104 i2cddc {
105 nvidia,pins = "ddc";
106 nvidia,function = "i2c2";
107 nvidia,pull = <TEGRA_PIN_PULL_UP>;
108 nvidia,tristate = <TEGRA_PIN_ENABLE>;
109 };
110 i2cp {
111 nvidia,pins = "i2cp";
112 nvidia,function = "i2cp";
113 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
114 nvidia,tristate = <TEGRA_PIN_DISABLE>;
115 };
116 irda {
117 nvidia,pins = "uad";
118 nvidia,function = "irda";
119 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
120 nvidia,tristate = <TEGRA_PIN_ENABLE>;
121 };
122 nand {
123 nvidia,pins = "kbca", "kbcc", "kbcd",
124 "kbce", "kbcf";
125 nvidia,function = "nand";
126 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
127 nvidia,tristate = <TEGRA_PIN_DISABLE>;
128 };
129 owc {
130 nvidia,pins = "owc";
131 nvidia,function = "owr";
132 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
133 nvidia,tristate = <TEGRA_PIN_ENABLE>;
134 };
135 pmc {
136 nvidia,pins = "pmc";
137 nvidia,function = "pwr_on";
138 nvidia,tristate = <TEGRA_PIN_DISABLE>;
139 };
140 pwm {
141 nvidia,pins = "sdb", "sdc", "sdd";
142 nvidia,function = "pwm";
143 nvidia,tristate = <TEGRA_PIN_ENABLE>;
144 };
145 sdio4 {
146 nvidia,pins = "atb", "gma", "gme";
147 nvidia,function = "sdio4";
148 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
149 nvidia,tristate = <TEGRA_PIN_ENABLE>;
150 };
151 spi1 {
152 nvidia,pins = "spid", "spie", "spif";
153 nvidia,function = "spi1";
154 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
155 nvidia,tristate = <TEGRA_PIN_ENABLE>;
156 };
157 spi4 {
158 nvidia,pins = "slxa", "slxc", "slxd", "slxk";
159 nvidia,function = "spi4";
160 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
161 nvidia,tristate = <TEGRA_PIN_ENABLE>;
162 };
163 uarta {
164 nvidia,pins = "sdio1";
165 nvidia,function = "uarta";
166 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
167 nvidia,tristate = <TEGRA_PIN_ENABLE>;
168 };
169 uartd {
170 nvidia,pins = "gmc";
171 nvidia,function = "uartd";
172 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
173 nvidia,tristate = <TEGRA_PIN_ENABLE>;
174 };
175 ulpi {
176 nvidia,pins = "uaa", "uab", "uda";
177 nvidia,function = "ulpi";
178 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
179 nvidia,tristate = <TEGRA_PIN_DISABLE>;
180 };
181 ulpi_refclk {
182 nvidia,pins = "cdev2";
183 nvidia,function = "pllp_out4";
184 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
185 nvidia,tristate = <TEGRA_PIN_DISABLE>;
186 };
187 usb_gpio {
188 nvidia,pins = "spig", "spih";
189 nvidia,function = "spi2_alt";
190 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
191 nvidia,tristate = <TEGRA_PIN_DISABLE>;
192 };
193 vi {
194 nvidia,pins = "dta", "dtb", "dtc", "dtd";
195 nvidia,function = "vi";
196 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
197 nvidia,tristate = <TEGRA_PIN_ENABLE>;
198 };
199 vi_sc {
200 nvidia,pins = "csus";
201 nvidia,function = "vi_sensor_clk";
202 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
203 nvidia,tristate = <TEGRA_PIN_ENABLE>;
204 };
205 };
206 };
207
208 ac97: ac97@70002000 {
209 status = "okay";
210 nvidia,codec-reset-gpio = <&gpio TEGRA_GPIO(V, 0)
211 GPIO_ACTIVE_HIGH>;
212 nvidia,codec-sync-gpio = <&gpio TEGRA_GPIO(P, 0)
213 GPIO_ACTIVE_HIGH>;
214 };
215
216 /*
217 * GEN1_I2C: I2C_SDA/SCL on SODIMM pin 194/196 (e.g. RTC on carrier
218 * board)
219 */
220 i2c@7000c000 {
221 clock-frequency = <400000>;
222 };
223
224 /* DDC_SCL/SDA on X3 pin 15/16 (e.g. display EDID) */
225 i2c_ddc: i2c@7000c400 {
226 clock-frequency = <10000>;
227 };
228
229 /* GEN2_I2C: unused */
230
231 /* CAM/GEN3_I2C: used as EXT_IO1/2 GPIOs on SODIMM pin 133/127 */
232
233 /* PWR_I2C: power I2C to PMIC and temperature sensor (On-module) */
234 i2c@7000d000 {
235 status = "okay";
236 clock-frequency = <100000>;
237
238 pmic: tps6586x@34 {
239 compatible = "ti,tps6586x";
240 reg = <0x34>;
241 interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
242
243 ti,system-power-controller;
244
245 #gpio-cells = <2>;
246 gpio-controller;
247
248 sys-supply = <&vdd_3v3_reg>;
249 vin-sm0-supply = <&sys_reg>;
250 vin-sm1-supply = <&sys_reg>;
251 vin-sm2-supply = <&sys_reg>;
252 vinldo01-supply = <&sm2_reg>;
253 vinldo23-supply = <&vdd_3v3_reg>;
254 vinldo4-supply = <&vdd_3v3_reg>;
255 vinldo678-supply = <&vdd_3v3_reg>;
256 vinldo9-supply = <&vdd_3v3_reg>;
257
258 regulators {
259 #address-cells = <1>;
260 #size-cells = <0>;
261
262 sys_reg: regulator@0 {
263 reg = <0>;
264 regulator-compatible = "sys";
265 regulator-name = "vdd_sys";
266 regulator-always-on;
267 };
268
269 regulator@1 {
270 reg = <1>;
271 regulator-compatible = "sm0";
272 regulator-name = "vdd_sm0,vdd_core";
273 regulator-min-microvolt = <1200000>;
274 regulator-max-microvolt = <1200000>;
275 regulator-always-on;
276 };
277
278 regulator@2 {
279 reg = <2>;
280 regulator-compatible = "sm1";
281 regulator-name = "vdd_sm1,vdd_cpu";
282 regulator-min-microvolt = <1000000>;
283 regulator-max-microvolt = <1000000>;
284 regulator-always-on;
285 };
286
287 sm2_reg: regulator@3 {
288 reg = <3>;
289 regulator-compatible = "sm2";
290 regulator-name = "vdd_sm2,vin_ldo*";
291 regulator-min-microvolt = <1800000>;
292 regulator-max-microvolt = <1800000>;
293 regulator-always-on;
294 };
295
296 /* LDO0 is not connected to anything */
297
298 regulator@5 {
299 reg = <5>;
300 regulator-compatible = "ldo1";
301 regulator-name = "vdd_ldo1,avdd_pll*";
302 regulator-min-microvolt = <1100000>;
303 regulator-max-microvolt = <1100000>;
304 regulator-always-on;
305 };
306
307 regulator@6 {
308 reg = <6>;
309 regulator-compatible = "ldo2";
310 regulator-name = "vdd_ldo2,vdd_rtc";
311 regulator-min-microvolt = <1200000>;
312 regulator-max-microvolt = <1200000>;
313 };
314
315 /* LDO3 is not connected to anything */
316
317 regulator@8 {
318 reg = <8>;
319 regulator-compatible = "ldo4";
320 regulator-name = "vdd_ldo4,avdd_osc,vddio_sys";
321 regulator-min-microvolt = <1800000>;
322 regulator-max-microvolt = <1800000>;
323 regulator-always-on;
324 };
325
326 ldo5_reg: regulator@9 {
327 reg = <9>;
328 regulator-compatible = "ldo5";
329 regulator-name = "vdd_ldo5,vdd_fuse";
330 regulator-min-microvolt = <3300000>;
331 regulator-max-microvolt = <3300000>;
332 regulator-always-on;
333 };
334
335 regulator@10 {
336 reg = <10>;
337 regulator-compatible = "ldo6";
338 regulator-name = "vdd_ldo6,avdd_vdac,vddio_vi,vddio_cam";
339 regulator-min-microvolt = <2850000>;
340 regulator-max-microvolt = <2850000>;
341 };
342
343 hdmi_vdd_reg: regulator@11 {
344 reg = <11>;
345 regulator-compatible = "ldo7";
346 regulator-name = "vdd_ldo7,avdd_hdmi";
347 regulator-min-microvolt = <3300000>;
348 regulator-max-microvolt = <3300000>;
349 };
350
351 hdmi_pll_reg: regulator@12 {
352 reg = <12>;
353 regulator-compatible = "ldo8";
354 regulator-name = "vdd_ldo8,avdd_hdmi_pll";
355 regulator-min-microvolt = <1800000>;
356 regulator-max-microvolt = <1800000>;
357 };
358
359 regulator@13 {
360 reg = <13>;
361 regulator-compatible = "ldo9";
362 regulator-name = "vdd_ldo9,avdd_2v85,vdd_ddr_rx";
363 regulator-min-microvolt = <2850000>;
364 regulator-max-microvolt = <2850000>;
365 regulator-always-on;
366 };
367
368 regulator@14 {
369 reg = <14>;
370 regulator-compatible = "ldo_rtc";
371 regulator-name = "vdd_rtc_out,vdd_cell";
372 regulator-min-microvolt = <3300000>;
373 regulator-max-microvolt = <3300000>;
374 regulator-always-on;
375 };
376 };
377 };
378
379 temperature-sensor@4c {
380 compatible = "national,lm95245";
381 reg = <0x4c>;
382 };
383 };
384
385 pmc@7000e400 {
386 nvidia,suspend-mode = <1>;
387 nvidia,cpu-pwr-good-time = <5000>;
388 nvidia,cpu-pwr-off-time = <5000>;
389 nvidia,core-pwr-good-time = <3845 3845>;
390 nvidia,core-pwr-off-time = <3875>;
391 nvidia,sys-clock-req-active-high;
392 };
393
394 memory-controller@7000f400 {
395 emc-table@83250 {
396 reg = <83250>;
397 compatible = "nvidia,tegra20-emc-table";
398 clock-frequency = <83250>;
399 nvidia,emc-registers = <0x00000005 0x00000011
400 0x00000004 0x00000002 0x00000004 0x00000004
401 0x00000001 0x0000000a 0x00000002 0x00000002
402 0x00000001 0x00000001 0x00000003 0x00000004
403 0x00000003 0x00000009 0x0000000c 0x0000025f
404 0x00000000 0x00000003 0x00000003 0x00000002
405 0x00000002 0x00000001 0x00000008 0x000000c8
406 0x00000003 0x00000005 0x00000003 0x0000000c
407 0x00000002 0x00000000 0x00000000 0x00000002
408 0x00000000 0x00000000 0x00000083 0x00520006
409 0x00000010 0x00000008 0x00000000 0x00000000
410 0x00000000 0x00000000 0x00000000 0x00000000>;
411 };
412 emc-table@133200 {
413 reg = <133200>;
414 compatible = "nvidia,tegra20-emc-table";
415 clock-frequency = <133200>;
416 nvidia,emc-registers = <0x00000008 0x00000019
417 0x00000006 0x00000002 0x00000004 0x00000004
418 0x00000001 0x0000000a 0x00000002 0x00000002
419 0x00000002 0x00000001 0x00000003 0x00000004
420 0x00000003 0x00000009 0x0000000c 0x0000039f
421 0x00000000 0x00000003 0x00000003 0x00000002
422 0x00000002 0x00000001 0x00000008 0x000000c8
423 0x00000003 0x00000007 0x00000003 0x0000000c
424 0x00000002 0x00000000 0x00000000 0x00000002
425 0x00000000 0x00000000 0x00000083 0x00510006
426 0x00000010 0x00000008 0x00000000 0x00000000
427 0x00000000 0x00000000 0x00000000 0x00000000>;
428 };
429 emc-table@166500 {
430 reg = <166500>;
431 compatible = "nvidia,tegra20-emc-table";
432 clock-frequency = <166500>;
433 nvidia,emc-registers = <0x0000000a 0x00000021
434 0x00000008 0x00000003 0x00000004 0x00000004
435 0x00000002 0x0000000a 0x00000003 0x00000003
436 0x00000002 0x00000001 0x00000003 0x00000004
437 0x00000003 0x00000009 0x0000000c 0x000004df
438 0x00000000 0x00000003 0x00000003 0x00000003
439 0x00000003 0x00000001 0x00000009 0x000000c8
440 0x00000003 0x00000009 0x00000004 0x0000000c
441 0x00000002 0x00000000 0x00000000 0x00000002
442 0x00000000 0x00000000 0x00000083 0x004f0006
443 0x00000010 0x00000008 0x00000000 0x00000000
444 0x00000000 0x00000000 0x00000000 0x00000000>;
445 };
446 emc-table@333000 {
447 reg = <333000>;
448 compatible = "nvidia,tegra20-emc-table";
449 clock-frequency = <333000>;
450 nvidia,emc-registers = <0x00000014 0x00000041
451 0x0000000f 0x00000005 0x00000004 0x00000005
452 0x00000003 0x0000000a 0x00000005 0x00000005
453 0x00000004 0x00000001 0x00000003 0x00000004
454 0x00000003 0x00000009 0x0000000c 0x000009ff
455 0x00000000 0x00000003 0x00000003 0x00000005
456 0x00000005 0x00000001 0x0000000e 0x000000c8
457 0x00000003 0x00000011 0x00000006 0x0000000c
458 0x00000002 0x00000000 0x00000000 0x00000002
459 0x00000000 0x00000000 0x00000083 0x00380006
460 0x00000010 0x00000008 0x00000000 0x00000000
461 0x00000000 0x00000000 0x00000000 0x00000000>;
462 };
463 };
464
465 usb@c5004000 {
466 status = "okay";
467 nvidia,phy-reset-gpio = <&gpio TEGRA_GPIO(V, 1)
468 GPIO_ACTIVE_LOW>;
469 };
470
471 usb-phy@c5004000 {
472 status = "okay";
473 nvidia,phy-reset-gpio = <&gpio TEGRA_GPIO(V, 1)
474 GPIO_ACTIVE_LOW>;
475 };
476
477 sdhci@c8000600 {
478 cd-gpios = <&gpio TEGRA_GPIO(C, 7) GPIO_ACTIVE_LOW>;
479 };
480
481 clocks {
482 compatible = "simple-bus";
483 #address-cells = <1>;
484 #size-cells = <0>;
485
486 clk32k_in: clock@0 {
487 compatible = "fixed-clock";
488 reg = <0>;
489 #clock-cells = <0>;
490 clock-frequency = <32768>;
491 };
492 };
493
494 regulators {
495 compatible = "simple-bus";
496 #address-cells = <1>;
497 #size-cells = <0>;
498
499 vdd_3v3_reg: regulator@100 {
500 compatible = "regulator-fixed";
501 reg = <100>;
502 regulator-name = "vdd_3v3";
503 regulator-min-microvolt = <3300000>;
504 regulator-max-microvolt = <3300000>;
505 regulator-always-on;
506 };
507
508 regulator@101 {
509 compatible = "regulator-fixed";
510 reg = <101>;
511 regulator-name = "internal_usb";
512 regulator-min-microvolt = <5000000>;
513 regulator-max-microvolt = <5000000>;
514 enable-active-high;
515 regulator-boot-on;
516 regulator-always-on;
517 gpio = <&gpio TEGRA_GPIO(BB, 1) GPIO_ACTIVE_HIGH>;
518 };
519 };
520
521 sound {
522 compatible = "nvidia,tegra-audio-wm9712-colibri_t20",
523 "nvidia,tegra-audio-wm9712";
524 nvidia,model = "Colibri T20 AC97 Audio";
525
526 nvidia,audio-routing =
527 "Headphone", "HPOUTL",
528 "Headphone", "HPOUTR",
529 "LineIn", "LINEINL",
530 "LineIn", "LINEINR",
531 "Mic", "MIC1";
532
533 nvidia,ac97-controller = <&ac97>;
534
535 clocks = <&tegra_car TEGRA20_CLK_PLL_A>,
536 <&tegra_car TEGRA20_CLK_PLL_A_OUT0>,
537 <&tegra_car TEGRA20_CLK_CDEV1>;
538 clock-names = "pll_a", "pll_a_out0", "mclk";
539 };
540};
1#include "tegra20.dtsi"
2
3/ {
4 model = "Toradex Colibri T20 512MB";
5 compatible = "toradex,colibri_t20-512", "nvidia,tegra20";
6
7 aliases {
8 rtc0 = "/i2c@7000d000/tps6586x@34";
9 rtc1 = "/rtc@7000e000";
10 };
11
12 memory {
13 reg = <0x00000000 0x20000000>;
14 };
15
16 host1x@50000000 {
17 hdmi@54280000 {
18 vdd-supply = <&hdmi_vdd_reg>;
19 pll-supply = <&hdmi_pll_reg>;
20
21 nvidia,ddc-i2c-bus = <&i2c_ddc>;
22 nvidia,hpd-gpio = <&gpio TEGRA_GPIO(N, 7)
23 GPIO_ACTIVE_HIGH>;
24 };
25 };
26
27 pinmux@70000014 {
28 pinctrl-names = "default";
29 pinctrl-0 = <&state_default>;
30
31 state_default: pinmux {
32 audio_refclk {
33 nvidia,pins = "cdev1";
34 nvidia,function = "plla_out";
35 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
36 nvidia,tristate = <TEGRA_PIN_DISABLE>;
37 };
38 crt {
39 nvidia,pins = "crtp";
40 nvidia,function = "crt";
41 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
42 nvidia,tristate = <TEGRA_PIN_ENABLE>;
43 };
44 dap3 {
45 nvidia,pins = "dap3";
46 nvidia,function = "dap3";
47 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
48 nvidia,tristate = <TEGRA_PIN_DISABLE>;
49 };
50 displaya {
51 nvidia,pins = "ld0", "ld1", "ld2", "ld3",
52 "ld4", "ld5", "ld6", "ld7", "ld8",
53 "ld9", "ld10", "ld11", "ld12", "ld13",
54 "ld14", "ld15", "ld16", "ld17",
55 "lhs", "lpw0", "lpw2", "lsc0",
56 "lsc1", "lsck", "lsda", "lspi", "lvs";
57 nvidia,function = "displaya";
58 nvidia,tristate = <TEGRA_PIN_ENABLE>;
59 };
60 gpio_dte {
61 nvidia,pins = "dte";
62 nvidia,function = "rsvd1";
63 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
64 nvidia,tristate = <TEGRA_PIN_DISABLE>;
65 };
66 gpio_gmi {
67 nvidia,pins = "ata", "atc", "atd", "ate",
68 "dap1", "dap2", "dap4", "gpu", "irrx",
69 "irtx", "spia", "spib", "spic";
70 nvidia,function = "gmi";
71 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
72 nvidia,tristate = <TEGRA_PIN_DISABLE>;
73 };
74 gpio_pta {
75 nvidia,pins = "pta";
76 nvidia,function = "rsvd4";
77 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
78 nvidia,tristate = <TEGRA_PIN_DISABLE>;
79 };
80 gpio_uac {
81 nvidia,pins = "uac";
82 nvidia,function = "rsvd2";
83 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
84 nvidia,tristate = <TEGRA_PIN_DISABLE>;
85 };
86 hdint {
87 nvidia,pins = "hdint";
88 nvidia,function = "hdmi";
89 nvidia,tristate = <TEGRA_PIN_ENABLE>;
90 };
91 i2c1 {
92 nvidia,pins = "rm";
93 nvidia,function = "i2c1";
94 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
95 nvidia,tristate = <TEGRA_PIN_ENABLE>;
96 };
97 i2c3 {
98 nvidia,pins = "dtf";
99 nvidia,function = "i2c3";
100 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
101 nvidia,tristate = <TEGRA_PIN_ENABLE>;
102 };
103 i2cddc {
104 nvidia,pins = "ddc";
105 nvidia,function = "i2c2";
106 nvidia,pull = <TEGRA_PIN_PULL_UP>;
107 nvidia,tristate = <TEGRA_PIN_ENABLE>;
108 };
109 i2cp {
110 nvidia,pins = "i2cp";
111 nvidia,function = "i2cp";
112 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
113 nvidia,tristate = <TEGRA_PIN_DISABLE>;
114 };
115 irda {
116 nvidia,pins = "uad";
117 nvidia,function = "irda";
118 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
119 nvidia,tristate = <TEGRA_PIN_ENABLE>;
120 };
121 nand {
122 nvidia,pins = "kbca", "kbcc", "kbcd",
123 "kbce", "kbcf";
124 nvidia,function = "nand";
125 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
126 nvidia,tristate = <TEGRA_PIN_DISABLE>;
127 };
128 owc {
129 nvidia,pins = "owc";
130 nvidia,function = "owr";
131 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
132 nvidia,tristate = <TEGRA_PIN_ENABLE>;
133 };
134 pmc {
135 nvidia,pins = "pmc";
136 nvidia,function = "pwr_on";
137 nvidia,tristate = <TEGRA_PIN_DISABLE>;
138 };
139 pwm {
140 nvidia,pins = "sdb", "sdc", "sdd";
141 nvidia,function = "pwm";
142 nvidia,tristate = <TEGRA_PIN_ENABLE>;
143 };
144 sdio4 {
145 nvidia,pins = "atb", "gma", "gme";
146 nvidia,function = "sdio4";
147 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
148 nvidia,tristate = <TEGRA_PIN_ENABLE>;
149 };
150 spi1 {
151 nvidia,pins = "spid", "spie", "spif";
152 nvidia,function = "spi1";
153 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
154 nvidia,tristate = <TEGRA_PIN_ENABLE>;
155 };
156 spi4 {
157 nvidia,pins = "slxa", "slxc", "slxd", "slxk";
158 nvidia,function = "spi4";
159 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
160 nvidia,tristate = <TEGRA_PIN_ENABLE>;
161 };
162 uarta {
163 nvidia,pins = "sdio1";
164 nvidia,function = "uarta";
165 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
166 nvidia,tristate = <TEGRA_PIN_ENABLE>;
167 };
168 uartd {
169 nvidia,pins = "gmc";
170 nvidia,function = "uartd";
171 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
172 nvidia,tristate = <TEGRA_PIN_ENABLE>;
173 };
174 ulpi {
175 nvidia,pins = "uaa", "uab", "uda";
176 nvidia,function = "ulpi";
177 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
178 nvidia,tristate = <TEGRA_PIN_DISABLE>;
179 };
180 ulpi_refclk {
181 nvidia,pins = "cdev2";
182 nvidia,function = "pllp_out4";
183 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
184 nvidia,tristate = <TEGRA_PIN_DISABLE>;
185 };
186 usb_gpio {
187 nvidia,pins = "spig", "spih";
188 nvidia,function = "spi2_alt";
189 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
190 nvidia,tristate = <TEGRA_PIN_DISABLE>;
191 };
192 vi {
193 nvidia,pins = "dta", "dtb", "dtc", "dtd";
194 nvidia,function = "vi";
195 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
196 nvidia,tristate = <TEGRA_PIN_ENABLE>;
197 };
198 vi_sc {
199 nvidia,pins = "csus";
200 nvidia,function = "vi_sensor_clk";
201 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
202 nvidia,tristate = <TEGRA_PIN_ENABLE>;
203 };
204 };
205 };
206
207 ac97: ac97@70002000 {
208 status = "okay";
209 nvidia,codec-reset-gpio = <&gpio TEGRA_GPIO(V, 0)
210 GPIO_ACTIVE_HIGH>;
211 nvidia,codec-sync-gpio = <&gpio TEGRA_GPIO(P, 0)
212 GPIO_ACTIVE_HIGH>;
213 };
214
215 i2c@7000c000 {
216 clock-frequency = <400000>;
217 };
218
219 i2c_ddc: i2c@7000c400 {
220 clock-frequency = <100000>;
221 };
222
223 i2c@7000c500 {
224 clock-frequency = <400000>;
225 };
226
227 i2c@7000d000 {
228 status = "okay";
229 clock-frequency = <400000>;
230
231 pmic: tps6586x@34 {
232 compatible = "ti,tps6586x";
233 reg = <0x34>;
234 interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
235
236 ti,system-power-controller;
237
238 #gpio-cells = <2>;
239 gpio-controller;
240
241 sys-supply = <&vdd_3v3_reg>;
242 vin-sm0-supply = <&sys_reg>;
243 vin-sm1-supply = <&sys_reg>;
244 vin-sm2-supply = <&sys_reg>;
245 vinldo01-supply = <&sm2_reg>;
246 vinldo23-supply = <&vdd_3v3_reg>;
247 vinldo4-supply = <&vdd_3v3_reg>;
248 vinldo678-supply = <&vdd_3v3_reg>;
249 vinldo9-supply = <&vdd_3v3_reg>;
250
251 regulators {
252 #address-cells = <1>;
253 #size-cells = <0>;
254
255 sys_reg: regulator@0 {
256 reg = <0>;
257 regulator-compatible = "sys";
258 regulator-name = "vdd_sys";
259 regulator-always-on;
260 };
261
262 regulator@1 {
263 reg = <1>;
264 regulator-compatible = "sm0";
265 regulator-name = "vdd_sm0,vdd_core";
266 regulator-min-microvolt = <1200000>;
267 regulator-max-microvolt = <1200000>;
268 regulator-always-on;
269 };
270
271 regulator@2 {
272 reg = <2>;
273 regulator-compatible = "sm1";
274 regulator-name = "vdd_sm1,vdd_cpu";
275 regulator-min-microvolt = <1000000>;
276 regulator-max-microvolt = <1000000>;
277 regulator-always-on;
278 };
279
280 sm2_reg: regulator@3 {
281 reg = <3>;
282 regulator-compatible = "sm2";
283 regulator-name = "vdd_sm2,vin_ldo*";
284 regulator-min-microvolt = <1800000>;
285 regulator-max-microvolt = <1800000>;
286 regulator-always-on;
287 };
288
289 /* LDO0 is not connected to anything */
290
291 regulator@5 {
292 reg = <5>;
293 regulator-compatible = "ldo1";
294 regulator-name = "vdd_ldo1,avdd_pll*";
295 regulator-min-microvolt = <1100000>;
296 regulator-max-microvolt = <1100000>;
297 regulator-always-on;
298 };
299
300 regulator@6 {
301 reg = <6>;
302 regulator-compatible = "ldo2";
303 regulator-name = "vdd_ldo2,vdd_rtc";
304 regulator-min-microvolt = <1200000>;
305 regulator-max-microvolt = <1200000>;
306 };
307
308 /* LDO3 is not connected to anything */
309
310 regulator@8 {
311 reg = <8>;
312 regulator-compatible = "ldo4";
313 regulator-name = "vdd_ldo4,avdd_osc,vddio_sys";
314 regulator-min-microvolt = <1800000>;
315 regulator-max-microvolt = <1800000>;
316 regulator-always-on;
317 };
318
319 ldo5_reg: regulator@9 {
320 reg = <9>;
321 regulator-compatible = "ldo5";
322 regulator-name = "vdd_ldo5,vdd_fuse";
323 regulator-min-microvolt = <3300000>;
324 regulator-max-microvolt = <3300000>;
325 regulator-always-on;
326 };
327
328 regulator@10 {
329 reg = <10>;
330 regulator-compatible = "ldo6";
331 regulator-name = "vdd_ldo6,avdd_vdac,vddio_vi,vddio_cam";
332 regulator-min-microvolt = <2850000>;
333 regulator-max-microvolt = <2850000>;
334 };
335
336 hdmi_vdd_reg: regulator@11 {
337 reg = <11>;
338 regulator-compatible = "ldo7";
339 regulator-name = "vdd_ldo7,avdd_hdmi";
340 regulator-min-microvolt = <3300000>;
341 regulator-max-microvolt = <3300000>;
342 };
343
344 hdmi_pll_reg: regulator@12 {
345 reg = <12>;
346 regulator-compatible = "ldo8";
347 regulator-name = "vdd_ldo8,avdd_hdmi_pll";
348 regulator-min-microvolt = <1800000>;
349 regulator-max-microvolt = <1800000>;
350 };
351
352 regulator@13 {
353 reg = <13>;
354 regulator-compatible = "ldo9";
355 regulator-name = "vdd_ldo9,avdd_2v85,vdd_ddr_rx";
356 regulator-min-microvolt = <2850000>;
357 regulator-max-microvolt = <2850000>;
358 regulator-always-on;
359 };
360
361 regulator@14 {
362 reg = <14>;
363 regulator-compatible = "ldo_rtc";
364 regulator-name = "vdd_rtc_out,vdd_cell";
365 regulator-min-microvolt = <3300000>;
366 regulator-max-microvolt = <3300000>;
367 regulator-always-on;
368 };
369 };
370 };
371
372 temperature-sensor@4c {
373 compatible = "national,lm95245";
374 reg = <0x4c>;
375 };
376 };
377
378 pmc@7000e400 {
379 nvidia,suspend-mode = <1>;
380 nvidia,cpu-pwr-good-time = <5000>;
381 nvidia,cpu-pwr-off-time = <5000>;
382 nvidia,core-pwr-good-time = <3845 3845>;
383 nvidia,core-pwr-off-time = <3875>;
384 nvidia,sys-clock-req-active-high;
385 };
386
387 memory-controller@7000f400 {
388 emc-table@83250 {
389 reg = <83250>;
390 compatible = "nvidia,tegra20-emc-table";
391 clock-frequency = <83250>;
392 nvidia,emc-registers = <0x00000005 0x00000011
393 0x00000004 0x00000002 0x00000004 0x00000004
394 0x00000001 0x0000000a 0x00000002 0x00000002
395 0x00000001 0x00000001 0x00000003 0x00000004
396 0x00000003 0x00000009 0x0000000c 0x0000025f
397 0x00000000 0x00000003 0x00000003 0x00000002
398 0x00000002 0x00000001 0x00000008 0x000000c8
399 0x00000003 0x00000005 0x00000003 0x0000000c
400 0x00000002 0x00000000 0x00000000 0x00000002
401 0x00000000 0x00000000 0x00000083 0x00520006
402 0x00000010 0x00000008 0x00000000 0x00000000
403 0x00000000 0x00000000 0x00000000 0x00000000>;
404 };
405 emc-table@133200 {
406 reg = <133200>;
407 compatible = "nvidia,tegra20-emc-table";
408 clock-frequency = <133200>;
409 nvidia,emc-registers = <0x00000008 0x00000019
410 0x00000006 0x00000002 0x00000004 0x00000004
411 0x00000001 0x0000000a 0x00000002 0x00000002
412 0x00000002 0x00000001 0x00000003 0x00000004
413 0x00000003 0x00000009 0x0000000c 0x0000039f
414 0x00000000 0x00000003 0x00000003 0x00000002
415 0x00000002 0x00000001 0x00000008 0x000000c8
416 0x00000003 0x00000007 0x00000003 0x0000000c
417 0x00000002 0x00000000 0x00000000 0x00000002
418 0x00000000 0x00000000 0x00000083 0x00510006
419 0x00000010 0x00000008 0x00000000 0x00000000
420 0x00000000 0x00000000 0x00000000 0x00000000>;
421 };
422 emc-table@166500 {
423 reg = <166500>;
424 compatible = "nvidia,tegra20-emc-table";
425 clock-frequency = <166500>;
426 nvidia,emc-registers = <0x0000000a 0x00000021
427 0x00000008 0x00000003 0x00000004 0x00000004
428 0x00000002 0x0000000a 0x00000003 0x00000003
429 0x00000002 0x00000001 0x00000003 0x00000004
430 0x00000003 0x00000009 0x0000000c 0x000004df
431 0x00000000 0x00000003 0x00000003 0x00000003
432 0x00000003 0x00000001 0x00000009 0x000000c8
433 0x00000003 0x00000009 0x00000004 0x0000000c
434 0x00000002 0x00000000 0x00000000 0x00000002
435 0x00000000 0x00000000 0x00000083 0x004f0006
436 0x00000010 0x00000008 0x00000000 0x00000000
437 0x00000000 0x00000000 0x00000000 0x00000000>;
438 };
439 emc-table@333000 {
440 reg = <333000>;
441 compatible = "nvidia,tegra20-emc-table";
442 clock-frequency = <333000>;
443 nvidia,emc-registers = <0x00000014 0x00000041
444 0x0000000f 0x00000005 0x00000004 0x00000005
445 0x00000003 0x0000000a 0x00000005 0x00000005
446 0x00000004 0x00000001 0x00000003 0x00000004
447 0x00000003 0x00000009 0x0000000c 0x000009ff
448 0x00000000 0x00000003 0x00000003 0x00000005
449 0x00000005 0x00000001 0x0000000e 0x000000c8
450 0x00000003 0x00000011 0x00000006 0x0000000c
451 0x00000002 0x00000000 0x00000000 0x00000002
452 0x00000000 0x00000000 0x00000083 0x00380006
453 0x00000010 0x00000008 0x00000000 0x00000000
454 0x00000000 0x00000000 0x00000000 0x00000000>;
455 };
456 };
457
458 usb@c5004000 {
459 status = "okay";
460 nvidia,phy-reset-gpio = <&gpio TEGRA_GPIO(V, 1)
461 GPIO_ACTIVE_LOW>;
462 };
463
464 usb-phy@c5004000 {
465 status = "okay";
466 nvidia,phy-reset-gpio = <&gpio TEGRA_GPIO(V, 1)
467 GPIO_ACTIVE_LOW>;
468 };
469
470 sdhci@c8000600 {
471 cd-gpios = <&gpio TEGRA_GPIO(C, 7) GPIO_ACTIVE_LOW>;
472 };
473
474 clocks {
475 compatible = "simple-bus";
476 #address-cells = <1>;
477 #size-cells = <0>;
478
479 clk32k_in: clock@0 {
480 compatible = "fixed-clock";
481 reg = <0>;
482 #clock-cells = <0>;
483 clock-frequency = <32768>;
484 };
485 };
486
487 regulators {
488 compatible = "simple-bus";
489 #address-cells = <1>;
490 #size-cells = <0>;
491
492 vdd_3v3_reg: regulator@100 {
493 compatible = "regulator-fixed";
494 reg = <100>;
495 regulator-name = "vdd_3v3";
496 regulator-min-microvolt = <3300000>;
497 regulator-max-microvolt = <3300000>;
498 regulator-always-on;
499 };
500
501 regulator@101 {
502 compatible = "regulator-fixed";
503 reg = <101>;
504 regulator-name = "internal_usb";
505 regulator-min-microvolt = <5000000>;
506 regulator-max-microvolt = <5000000>;
507 enable-active-high;
508 regulator-boot-on;
509 regulator-always-on;
510 gpio = <&gpio TEGRA_GPIO(BB, 1) GPIO_ACTIVE_HIGH>;
511 };
512 };
513
514 sound {
515 compatible = "nvidia,tegra-audio-wm9712-colibri_t20",
516 "nvidia,tegra-audio-wm9712";
517 nvidia,model = "Colibri T20 AC97 Audio";
518
519 nvidia,audio-routing =
520 "Headphone", "HPOUTL",
521 "Headphone", "HPOUTR",
522 "LineIn", "LINEINL",
523 "LineIn", "LINEINR",
524 "Mic", "MIC1";
525
526 nvidia,ac97-controller = <&ac97>;
527
528 clocks = <&tegra_car TEGRA20_CLK_PLL_A>,
529 <&tegra_car TEGRA20_CLK_PLL_A_OUT0>,
530 <&tegra_car TEGRA20_CLK_CDEV1>;
531 clock-names = "pll_a", "pll_a_out0", "mclk";
532 };
533};