]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blob - arch/arm/boot/dts/tegra20-seaboard.dts
Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git...
[mirror_ubuntu-bionic-kernel.git] / arch / arm / boot / dts / tegra20-seaboard.dts
1 /dts-v1/;
2
3 #include <dt-bindings/input/input.h>
4 #include "tegra20.dtsi"
5
6 / {
7 model = "NVIDIA Seaboard";
8 compatible = "nvidia,seaboard", "nvidia,tegra20";
9
10 aliases {
11 rtc0 = "/i2c@7000d000/tps6586x@34";
12 rtc1 = "/rtc@7000e000";
13 };
14
15 memory {
16 reg = <0x00000000 0x40000000>;
17 };
18
19 host1x@50000000 {
20 dc@54200000 {
21 rgb {
22 status = "okay";
23
24 nvidia,panel = <&panel>;
25 };
26 };
27
28 hdmi@54280000 {
29 status = "okay";
30
31 vdd-supply = <&hdmi_vdd_reg>;
32 pll-supply = <&hdmi_pll_reg>;
33
34 nvidia,ddc-i2c-bus = <&hdmi_ddc>;
35 nvidia,hpd-gpio = <&gpio TEGRA_GPIO(N, 7)
36 GPIO_ACTIVE_HIGH>;
37 };
38 };
39
40 pinmux@70000014 {
41 pinctrl-names = "default";
42 pinctrl-0 = <&state_default>;
43
44 state_default: pinmux {
45 ata {
46 nvidia,pins = "ata";
47 nvidia,function = "ide";
48 };
49 atb {
50 nvidia,pins = "atb", "gma", "gme";
51 nvidia,function = "sdio4";
52 };
53 atc {
54 nvidia,pins = "atc";
55 nvidia,function = "nand";
56 };
57 atd {
58 nvidia,pins = "atd", "ate", "gmb", "spia",
59 "spib", "spic";
60 nvidia,function = "gmi";
61 };
62 cdev1 {
63 nvidia,pins = "cdev1";
64 nvidia,function = "plla_out";
65 };
66 cdev2 {
67 nvidia,pins = "cdev2";
68 nvidia,function = "pllp_out4";
69 };
70 crtp {
71 nvidia,pins = "crtp", "lm1";
72 nvidia,function = "crt";
73 };
74 csus {
75 nvidia,pins = "csus";
76 nvidia,function = "vi_sensor_clk";
77 };
78 dap1 {
79 nvidia,pins = "dap1";
80 nvidia,function = "dap1";
81 };
82 dap2 {
83 nvidia,pins = "dap2";
84 nvidia,function = "dap2";
85 };
86 dap3 {
87 nvidia,pins = "dap3";
88 nvidia,function = "dap3";
89 };
90 dap4 {
91 nvidia,pins = "dap4";
92 nvidia,function = "dap4";
93 };
94 dta {
95 nvidia,pins = "dta", "dtb", "dtc", "dtd", "dte";
96 nvidia,function = "vi";
97 };
98 dtf {
99 nvidia,pins = "dtf";
100 nvidia,function = "i2c3";
101 };
102 gmc {
103 nvidia,pins = "gmc";
104 nvidia,function = "uartd";
105 };
106 gmd {
107 nvidia,pins = "gmd";
108 nvidia,function = "sflash";
109 };
110 gpu {
111 nvidia,pins = "gpu";
112 nvidia,function = "pwm";
113 };
114 gpu7 {
115 nvidia,pins = "gpu7";
116 nvidia,function = "rtck";
117 };
118 gpv {
119 nvidia,pins = "gpv", "slxa", "slxk";
120 nvidia,function = "pcie";
121 };
122 hdint {
123 nvidia,pins = "hdint", "lpw0", "lpw2", "lsc1",
124 "lsck", "lsda";
125 nvidia,function = "hdmi";
126 };
127 i2cp {
128 nvidia,pins = "i2cp";
129 nvidia,function = "i2cp";
130 };
131 irrx {
132 nvidia,pins = "irrx", "irtx";
133 nvidia,function = "uartb";
134 };
135 kbca {
136 nvidia,pins = "kbca", "kbcb", "kbcc", "kbcd",
137 "kbce", "kbcf";
138 nvidia,function = "kbc";
139 };
140 lcsn {
141 nvidia,pins = "lcsn", "ldc", "lm0", "lpw1",
142 "lsdi", "lvp0";
143 nvidia,function = "rsvd4";
144 };
145 ld0 {
146 nvidia,pins = "ld0", "ld1", "ld2", "ld3", "ld4",
147 "ld5", "ld6", "ld7", "ld8", "ld9",
148 "ld10", "ld11", "ld12", "ld13", "ld14",
149 "ld15", "ld16", "ld17", "ldi", "lhp0",
150 "lhp1", "lhp2", "lhs", "lpp", "lsc0",
151 "lspi", "lvp1", "lvs";
152 nvidia,function = "displaya";
153 };
154 owc {
155 nvidia,pins = "owc", "spdi", "spdo", "uac";
156 nvidia,function = "rsvd2";
157 };
158 pmc {
159 nvidia,pins = "pmc";
160 nvidia,function = "pwr_on";
161 };
162 rm {
163 nvidia,pins = "rm";
164 nvidia,function = "i2c1";
165 };
166 sdb {
167 nvidia,pins = "sdb", "sdc", "sdd";
168 nvidia,function = "sdio3";
169 };
170 sdio1 {
171 nvidia,pins = "sdio1";
172 nvidia,function = "sdio1";
173 };
174 slxc {
175 nvidia,pins = "slxc", "slxd";
176 nvidia,function = "spdif";
177 };
178 spid {
179 nvidia,pins = "spid", "spie", "spif";
180 nvidia,function = "spi1";
181 };
182 spig {
183 nvidia,pins = "spig", "spih";
184 nvidia,function = "spi2_alt";
185 };
186 uaa {
187 nvidia,pins = "uaa", "uab", "uda";
188 nvidia,function = "ulpi";
189 };
190 uad {
191 nvidia,pins = "uad";
192 nvidia,function = "irda";
193 };
194 uca {
195 nvidia,pins = "uca", "ucb";
196 nvidia,function = "uartc";
197 };
198 conf_ata {
199 nvidia,pins = "ata", "atb", "atc", "atd",
200 "cdev1", "cdev2", "dap1", "dap2",
201 "dap4", "ddc", "dtf", "gma", "gmc", "gmd",
202 "gme", "gpu", "gpu7", "i2cp", "irrx",
203 "irtx", "pta", "rm", "sdc", "sdd",
204 "slxd", "slxk", "spdi", "spdo", "uac",
205 "uad", "uca", "ucb", "uda";
206 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
207 nvidia,tristate = <TEGRA_PIN_DISABLE>;
208 };
209 conf_ate {
210 nvidia,pins = "ate", "csus", "dap3",
211 "gpv", "owc", "slxc", "spib", "spid",
212 "spie";
213 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
214 nvidia,tristate = <TEGRA_PIN_ENABLE>;
215 };
216 conf_ck32 {
217 nvidia,pins = "ck32", "ddrc", "pmca", "pmcb",
218 "pmcc", "pmcd", "pmce", "xm2c", "xm2d";
219 nvidia,pull = <TEGRA_PIN_PULL_NONE>;
220 };
221 conf_crtp {
222 nvidia,pins = "crtp", "gmb", "slxa", "spia",
223 "spig", "spih";
224 nvidia,pull = <TEGRA_PIN_PULL_UP>;
225 nvidia,tristate = <TEGRA_PIN_ENABLE>;
226 };
227 conf_dta {
228 nvidia,pins = "dta", "dtb", "dtc", "dtd";
229 nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
230 nvidia,tristate = <TEGRA_PIN_DISABLE>;
231 };
232 conf_dte {
233 nvidia,pins = "dte", "spif";
234 nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
235 nvidia,tristate = <TEGRA_PIN_ENABLE>;
236 };
237 conf_hdint {
238 nvidia,pins = "hdint", "lcsn", "ldc", "lm1",
239 "lpw1", "lsc1", "lsck", "lsda", "lsdi",
240 "lvp0";
241 nvidia,tristate = <TEGRA_PIN_ENABLE>;
242 };
243 conf_kbca {
244 nvidia,pins = "kbca", "kbcb", "kbcc", "kbcd",
245 "kbce", "kbcf", "sdio1", "spic", "uaa",
246 "uab";
247 nvidia,pull = <TEGRA_PIN_PULL_UP>;
248 nvidia,tristate = <TEGRA_PIN_DISABLE>;
249 };
250 conf_lc {
251 nvidia,pins = "lc", "ls";
252 nvidia,pull = <TEGRA_PIN_PULL_UP>;
253 };
254 conf_ld0 {
255 nvidia,pins = "ld0", "ld1", "ld2", "ld3", "ld4",
256 "ld5", "ld6", "ld7", "ld8", "ld9",
257 "ld10", "ld11", "ld12", "ld13", "ld14",
258 "ld15", "ld16", "ld17", "ldi", "lhp0",
259 "lhp1", "lhp2", "lhs", "lm0", "lpp",
260 "lpw0", "lpw2", "lsc0", "lspi", "lvp1",
261 "lvs", "pmc", "sdb";
262 nvidia,tristate = <TEGRA_PIN_DISABLE>;
263 };
264 conf_ld17_0 {
265 nvidia,pins = "ld17_0", "ld19_18", "ld21_20",
266 "ld23_22";
267 nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
268 };
269 drive_sdio1 {
270 nvidia,pins = "drive_sdio1";
271 nvidia,high-speed-mode = <TEGRA_PIN_DISABLE>;
272 nvidia,schmitt = <TEGRA_PIN_DISABLE>;
273 nvidia,low-power-mode = <TEGRA_PIN_LP_DRIVE_DIV_1>;
274 nvidia,pull-down-strength = <31>;
275 nvidia,pull-up-strength = <31>;
276 nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_SLOWEST>;
277 nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_SLOWEST>;
278 };
279 };
280
281 state_i2cmux_ddc: pinmux_i2cmux_ddc {
282 ddc {
283 nvidia,pins = "ddc";
284 nvidia,function = "i2c2";
285 };
286 pta {
287 nvidia,pins = "pta";
288 nvidia,function = "rsvd4";
289 };
290 };
291
292 state_i2cmux_pta: pinmux_i2cmux_pta {
293 ddc {
294 nvidia,pins = "ddc";
295 nvidia,function = "rsvd4";
296 };
297 pta {
298 nvidia,pins = "pta";
299 nvidia,function = "i2c2";
300 };
301 };
302
303 state_i2cmux_idle: pinmux_i2cmux_idle {
304 ddc {
305 nvidia,pins = "ddc";
306 nvidia,function = "rsvd4";
307 };
308 pta {
309 nvidia,pins = "pta";
310 nvidia,function = "rsvd4";
311 };
312 };
313 };
314
315 i2s@70002800 {
316 status = "okay";
317 };
318
319 serial@70006300 {
320 status = "okay";
321 };
322
323 pwm: pwm@7000a000 {
324 status = "okay";
325 };
326
327 i2c@7000c000 {
328 status = "okay";
329 clock-frequency = <400000>;
330
331 wm8903: wm8903@1a {
332 compatible = "wlf,wm8903";
333 reg = <0x1a>;
334 interrupt-parent = <&gpio>;
335 interrupts = <TEGRA_GPIO(X, 3) IRQ_TYPE_LEVEL_HIGH>;
336
337 gpio-controller;
338 #gpio-cells = <2>;
339
340 micdet-cfg = <0>;
341 micdet-delay = <100>;
342 gpio-cfg = <0xffffffff 0xffffffff 0 0xffffffff 0xffffffff>;
343 };
344
345 /* ALS and proximity sensor */
346 isl29018@44 {
347 compatible = "isil,isl29018";
348 reg = <0x44>;
349 interrupt-parent = <&gpio>;
350 interrupts = <TEGRA_GPIO(Z, 2) IRQ_TYPE_LEVEL_HIGH>;
351 };
352
353 gyrometer@68 {
354 compatible = "invn,mpu3050";
355 reg = <0x68>;
356 interrupt-parent = <&gpio>;
357 interrupts = <TEGRA_GPIO(Z, 4) IRQ_TYPE_LEVEL_HIGH>;
358 };
359 };
360
361 i2c@7000c400 {
362 status = "okay";
363 clock-frequency = <100000>;
364 };
365
366 i2cmux {
367 compatible = "i2c-mux-pinctrl";
368 #address-cells = <1>;
369 #size-cells = <0>;
370
371 i2c-parent = <&{/i2c@7000c400}>;
372
373 pinctrl-names = "ddc", "pta", "idle";
374 pinctrl-0 = <&state_i2cmux_ddc>;
375 pinctrl-1 = <&state_i2cmux_pta>;
376 pinctrl-2 = <&state_i2cmux_idle>;
377
378 hdmi_ddc: i2c@0 {
379 reg = <0>;
380 #address-cells = <1>;
381 #size-cells = <0>;
382 };
383
384 lvds_ddc: i2c@1 {
385 reg = <1>;
386 #address-cells = <1>;
387 #size-cells = <0>;
388
389 smart-battery@b {
390 compatible = "ti,bq20z75", "smart-battery-1.1";
391 reg = <0xb>;
392 ti,i2c-retry-count = <2>;
393 ti,poll-retry-count = <10>;
394 };
395 };
396 };
397
398 i2c@7000c500 {
399 status = "okay";
400 clock-frequency = <400000>;
401 };
402
403 i2c@7000d000 {
404 status = "okay";
405 clock-frequency = <400000>;
406
407 magnetometer@c {
408 compatible = "ak,ak8975";
409 reg = <0xc>;
410 interrupt-parent = <&gpio>;
411 interrupts = <TEGRA_GPIO(N, 5) IRQ_TYPE_LEVEL_HIGH>;
412 };
413
414 pmic: tps6586x@34 {
415 compatible = "ti,tps6586x";
416 reg = <0x34>;
417 interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
418
419 ti,system-power-controller;
420
421 #gpio-cells = <2>;
422 gpio-controller;
423
424 sys-supply = <&vdd_5v0_reg>;
425 vin-sm0-supply = <&sys_reg>;
426 vin-sm1-supply = <&sys_reg>;
427 vin-sm2-supply = <&sys_reg>;
428 vinldo01-supply = <&sm2_reg>;
429 vinldo23-supply = <&sm2_reg>;
430 vinldo4-supply = <&sm2_reg>;
431 vinldo678-supply = <&sm2_reg>;
432 vinldo9-supply = <&sm2_reg>;
433
434 regulators {
435 sys_reg: sys {
436 regulator-name = "vdd_sys";
437 regulator-always-on;
438 };
439
440 sm0 {
441 regulator-name = "vdd_sm0,vdd_core";
442 regulator-min-microvolt = <1300000>;
443 regulator-max-microvolt = <1300000>;
444 regulator-always-on;
445 };
446
447 sm1 {
448 regulator-name = "vdd_sm1,vdd_cpu";
449 regulator-min-microvolt = <1125000>;
450 regulator-max-microvolt = <1125000>;
451 regulator-always-on;
452 };
453
454 sm2_reg: sm2 {
455 regulator-name = "vdd_sm2,vin_ldo*";
456 regulator-min-microvolt = <3700000>;
457 regulator-max-microvolt = <3700000>;
458 regulator-always-on;
459 };
460
461 /* LDO0 is not connected to anything */
462
463 ldo1 {
464 regulator-name = "vdd_ldo1,avdd_pll*";
465 regulator-min-microvolt = <1100000>;
466 regulator-max-microvolt = <1100000>;
467 regulator-always-on;
468 };
469
470 ldo2 {
471 regulator-name = "vdd_ldo2,vdd_rtc";
472 regulator-min-microvolt = <1200000>;
473 regulator-max-microvolt = <1200000>;
474 };
475
476 ldo3 {
477 regulator-name = "vdd_ldo3,avdd_usb*";
478 regulator-min-microvolt = <3300000>;
479 regulator-max-microvolt = <3300000>;
480 regulator-always-on;
481 };
482
483 ldo4 {
484 regulator-name = "vdd_ldo4,avdd_osc,vddio_sys";
485 regulator-min-microvolt = <1800000>;
486 regulator-max-microvolt = <1800000>;
487 regulator-always-on;
488 };
489
490 ldo5 {
491 regulator-name = "vdd_ldo5,vcore_mmc";
492 regulator-min-microvolt = <2850000>;
493 regulator-max-microvolt = <2850000>;
494 regulator-always-on;
495 };
496
497 ldo6 {
498 regulator-name = "vdd_ldo6,avdd_vdac,vddio_vi,vddio_cam";
499 regulator-min-microvolt = <1800000>;
500 regulator-max-microvolt = <1800000>;
501 };
502
503 hdmi_vdd_reg: ldo7 {
504 regulator-name = "vdd_ldo7,avdd_hdmi,vdd_fuse";
505 regulator-min-microvolt = <3300000>;
506 regulator-max-microvolt = <3300000>;
507 };
508
509 hdmi_pll_reg: ldo8 {
510 regulator-name = "vdd_ldo8,avdd_hdmi_pll";
511 regulator-min-microvolt = <1800000>;
512 regulator-max-microvolt = <1800000>;
513 };
514
515 ldo9 {
516 regulator-name = "vdd_ldo9,avdd_2v85,vdd_ddr_rx";
517 regulator-min-microvolt = <2850000>;
518 regulator-max-microvolt = <2850000>;
519 regulator-always-on;
520 };
521
522 ldo_rtc {
523 regulator-name = "vdd_rtc_out,vdd_cell";
524 regulator-min-microvolt = <3300000>;
525 regulator-max-microvolt = <3300000>;
526 regulator-always-on;
527 };
528 };
529 };
530
531 temperature-sensor@4c {
532 compatible = "onnn,nct1008";
533 reg = <0x4c>;
534 };
535 };
536
537 kbc@7000e200 {
538 status = "okay";
539 nvidia,debounce-delay-ms = <32>;
540 nvidia,repeat-delay-ms = <160>;
541 nvidia,ghost-filter;
542 nvidia,kbc-row-pins = <0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15>;
543 nvidia,kbc-col-pins = <16 17 18 19 20 21 22 23>;
544 linux,keymap = <MATRIX_KEY(0x00, 0x02, KEY_W)
545 MATRIX_KEY(0x00, 0x03, KEY_S)
546 MATRIX_KEY(0x00, 0x04, KEY_A)
547 MATRIX_KEY(0x00, 0x05, KEY_Z)
548 MATRIX_KEY(0x00, 0x07, KEY_FN)
549
550 MATRIX_KEY(0x01, 0x07, KEY_LEFTMETA)
551 MATRIX_KEY(0x02, 0x06, KEY_RIGHTALT)
552 MATRIX_KEY(0x02, 0x07, KEY_LEFTALT)
553
554 MATRIX_KEY(0x03, 0x00, KEY_5)
555 MATRIX_KEY(0x03, 0x01, KEY_4)
556 MATRIX_KEY(0x03, 0x02, KEY_R)
557 MATRIX_KEY(0x03, 0x03, KEY_E)
558 MATRIX_KEY(0x03, 0x04, KEY_F)
559 MATRIX_KEY(0x03, 0x05, KEY_D)
560 MATRIX_KEY(0x03, 0x06, KEY_X)
561
562 MATRIX_KEY(0x04, 0x00, KEY_7)
563 MATRIX_KEY(0x04, 0x01, KEY_6)
564 MATRIX_KEY(0x04, 0x02, KEY_T)
565 MATRIX_KEY(0x04, 0x03, KEY_H)
566 MATRIX_KEY(0x04, 0x04, KEY_G)
567 MATRIX_KEY(0x04, 0x05, KEY_V)
568 MATRIX_KEY(0x04, 0x06, KEY_C)
569 MATRIX_KEY(0x04, 0x07, KEY_SPACE)
570
571 MATRIX_KEY(0x05, 0x00, KEY_9)
572 MATRIX_KEY(0x05, 0x01, KEY_8)
573 MATRIX_KEY(0x05, 0x02, KEY_U)
574 MATRIX_KEY(0x05, 0x03, KEY_Y)
575 MATRIX_KEY(0x05, 0x04, KEY_J)
576 MATRIX_KEY(0x05, 0x05, KEY_N)
577 MATRIX_KEY(0x05, 0x06, KEY_B)
578 MATRIX_KEY(0x05, 0x07, KEY_BACKSLASH)
579
580 MATRIX_KEY(0x06, 0x00, KEY_MINUS)
581 MATRIX_KEY(0x06, 0x01, KEY_0)
582 MATRIX_KEY(0x06, 0x02, KEY_O)
583 MATRIX_KEY(0x06, 0x03, KEY_I)
584 MATRIX_KEY(0x06, 0x04, KEY_L)
585 MATRIX_KEY(0x06, 0x05, KEY_K)
586 MATRIX_KEY(0x06, 0x06, KEY_COMMA)
587 MATRIX_KEY(0x06, 0x07, KEY_M)
588
589 MATRIX_KEY(0x07, 0x01, KEY_EQUAL)
590 MATRIX_KEY(0x07, 0x02, KEY_RIGHTBRACE)
591 MATRIX_KEY(0x07, 0x03, KEY_ENTER)
592 MATRIX_KEY(0x07, 0x07, KEY_MENU)
593
594 MATRIX_KEY(0x08, 0x04, KEY_RIGHTSHIFT)
595 MATRIX_KEY(0x08, 0x05, KEY_LEFTSHIFT)
596
597 MATRIX_KEY(0x09, 0x05, KEY_RIGHTCTRL)
598 MATRIX_KEY(0x09, 0x07, KEY_LEFTCTRL)
599
600 MATRIX_KEY(0x0B, 0x00, KEY_LEFTBRACE)
601 MATRIX_KEY(0x0B, 0x01, KEY_P)
602 MATRIX_KEY(0x0B, 0x02, KEY_APOSTROPHE)
603 MATRIX_KEY(0x0B, 0x03, KEY_SEMICOLON)
604 MATRIX_KEY(0x0B, 0x04, KEY_SLASH)
605 MATRIX_KEY(0x0B, 0x05, KEY_DOT)
606
607 MATRIX_KEY(0x0C, 0x00, KEY_F10)
608 MATRIX_KEY(0x0C, 0x01, KEY_F9)
609 MATRIX_KEY(0x0C, 0x02, KEY_BACKSPACE)
610 MATRIX_KEY(0x0C, 0x03, KEY_3)
611 MATRIX_KEY(0x0C, 0x04, KEY_2)
612 MATRIX_KEY(0x0C, 0x05, KEY_UP)
613 MATRIX_KEY(0x0C, 0x06, KEY_PRINT)
614 MATRIX_KEY(0x0C, 0x07, KEY_PAUSE)
615
616 MATRIX_KEY(0x0D, 0x00, KEY_INSERT)
617 MATRIX_KEY(0x0D, 0x01, KEY_DELETE)
618 MATRIX_KEY(0x0D, 0x03, KEY_PAGEUP )
619 MATRIX_KEY(0x0D, 0x04, KEY_PAGEDOWN)
620 MATRIX_KEY(0x0D, 0x05, KEY_RIGHT)
621 MATRIX_KEY(0x0D, 0x06, KEY_DOWN)
622 MATRIX_KEY(0x0D, 0x07, KEY_LEFT)
623
624 MATRIX_KEY(0x0E, 0x00, KEY_F11)
625 MATRIX_KEY(0x0E, 0x01, KEY_F12)
626 MATRIX_KEY(0x0E, 0x02, KEY_F8)
627 MATRIX_KEY(0x0E, 0x03, KEY_Q)
628 MATRIX_KEY(0x0E, 0x04, KEY_F4)
629 MATRIX_KEY(0x0E, 0x05, KEY_F3)
630 MATRIX_KEY(0x0E, 0x06, KEY_1)
631 MATRIX_KEY(0x0E, 0x07, KEY_F7)
632
633 MATRIX_KEY(0x0F, 0x00, KEY_ESC)
634 MATRIX_KEY(0x0F, 0x01, KEY_GRAVE)
635 MATRIX_KEY(0x0F, 0x02, KEY_F5)
636 MATRIX_KEY(0x0F, 0x03, KEY_TAB)
637 MATRIX_KEY(0x0F, 0x04, KEY_F1)
638 MATRIX_KEY(0x0F, 0x05, KEY_F2)
639 MATRIX_KEY(0x0F, 0x06, KEY_CAPSLOCK)
640 MATRIX_KEY(0x0F, 0x07, KEY_F6)
641
642 /* Software Handled Function Keys */
643 MATRIX_KEY(0x14, 0x00, KEY_KP7)
644
645 MATRIX_KEY(0x15, 0x00, KEY_KP9)
646 MATRIX_KEY(0x15, 0x01, KEY_KP8)
647 MATRIX_KEY(0x15, 0x02, KEY_KP4)
648 MATRIX_KEY(0x15, 0x04, KEY_KP1)
649
650 MATRIX_KEY(0x16, 0x01, KEY_KPSLASH)
651 MATRIX_KEY(0x16, 0x02, KEY_KP6)
652 MATRIX_KEY(0x16, 0x03, KEY_KP5)
653 MATRIX_KEY(0x16, 0x04, KEY_KP3)
654 MATRIX_KEY(0x16, 0x05, KEY_KP2)
655 MATRIX_KEY(0x16, 0x07, KEY_KP0)
656
657 MATRIX_KEY(0x1B, 0x01, KEY_KPASTERISK)
658 MATRIX_KEY(0x1B, 0x03, KEY_KPMINUS)
659 MATRIX_KEY(0x1B, 0x04, KEY_KPPLUS)
660 MATRIX_KEY(0x1B, 0x05, KEY_KPDOT)
661
662 MATRIX_KEY(0x1C, 0x05, KEY_VOLUMEUP)
663
664 MATRIX_KEY(0x1D, 0x03, KEY_HOME)
665 MATRIX_KEY(0x1D, 0x04, KEY_END)
666 MATRIX_KEY(0x1D, 0x05, KEY_BRIGHTNESSDOWN)
667 MATRIX_KEY(0x1D, 0x06, KEY_VOLUMEDOWN)
668 MATRIX_KEY(0x1D, 0x07, KEY_BRIGHTNESSUP)
669
670 MATRIX_KEY(0x1E, 0x00, KEY_NUMLOCK)
671 MATRIX_KEY(0x1E, 0x01, KEY_SCROLLLOCK)
672 MATRIX_KEY(0x1E, 0x02, KEY_MUTE)
673
674 MATRIX_KEY(0x1F, 0x04, KEY_HELP)>;
675 };
676
677 pmc@7000e400 {
678 nvidia,invert-interrupt;
679 nvidia,suspend-mode = <1>;
680 nvidia,cpu-pwr-good-time = <5000>;
681 nvidia,cpu-pwr-off-time = <5000>;
682 nvidia,core-pwr-good-time = <3845 3845>;
683 nvidia,core-pwr-off-time = <3875>;
684 nvidia,sys-clock-req-active-high;
685 };
686
687 memory-controller@7000f400 {
688 emc-table@190000 {
689 reg = <190000>;
690 compatible = "nvidia,tegra20-emc-table";
691 clock-frequency = <190000>;
692 nvidia,emc-registers = <0x0000000c 0x00000026
693 0x00000009 0x00000003 0x00000004 0x00000004
694 0x00000002 0x0000000c 0x00000003 0x00000003
695 0x00000002 0x00000001 0x00000004 0x00000005
696 0x00000004 0x00000009 0x0000000d 0x0000059f
697 0x00000000 0x00000003 0x00000003 0x00000003
698 0x00000003 0x00000001 0x0000000b 0x000000c8
699 0x00000003 0x00000007 0x00000004 0x0000000f
700 0x00000002 0x00000000 0x00000000 0x00000002
701 0x00000000 0x00000000 0x00000083 0xa06204ae
702 0x007dc010 0x00000000 0x00000000 0x00000000
703 0x00000000 0x00000000 0x00000000 0x00000000>;
704 };
705
706 emc-table@380000 {
707 reg = <380000>;
708 compatible = "nvidia,tegra20-emc-table";
709 clock-frequency = <380000>;
710 nvidia,emc-registers = <0x00000017 0x0000004b
711 0x00000012 0x00000006 0x00000004 0x00000005
712 0x00000003 0x0000000c 0x00000006 0x00000006
713 0x00000003 0x00000001 0x00000004 0x00000005
714 0x00000004 0x00000009 0x0000000d 0x00000b5f
715 0x00000000 0x00000003 0x00000003 0x00000006
716 0x00000006 0x00000001 0x00000011 0x000000c8
717 0x00000003 0x0000000e 0x00000007 0x0000000f
718 0x00000002 0x00000000 0x00000000 0x00000002
719 0x00000000 0x00000000 0x00000083 0xe044048b
720 0x007d8010 0x00000000 0x00000000 0x00000000
721 0x00000000 0x00000000 0x00000000 0x00000000>;
722 };
723 };
724
725 usb@c5000000 {
726 status = "okay";
727 dr_mode = "otg";
728 };
729
730 usb-phy@c5000000 {
731 status = "okay";
732 vbus-supply = <&vbus_reg>;
733 dr_mode = "otg";
734 };
735
736 usb@c5004000 {
737 status = "okay";
738 nvidia,phy-reset-gpio = <&gpio TEGRA_GPIO(V, 1)
739 GPIO_ACTIVE_LOW>;
740 };
741
742 usb-phy@c5004000 {
743 status = "okay";
744 nvidia,phy-reset-gpio = <&gpio TEGRA_GPIO(V, 1)
745 GPIO_ACTIVE_LOW>;
746 };
747
748 usb@c5008000 {
749 status = "okay";
750 };
751
752 usb-phy@c5008000 {
753 status = "okay";
754 };
755
756 sdhci@c8000000 {
757 status = "okay";
758 power-gpios = <&gpio TEGRA_GPIO(K, 6) GPIO_ACTIVE_HIGH>;
759 bus-width = <4>;
760 keep-power-in-suspend;
761 };
762
763 sdhci@c8000400 {
764 status = "okay";
765 cd-gpios = <&gpio TEGRA_GPIO(I, 5) GPIO_ACTIVE_LOW>;
766 wp-gpios = <&gpio TEGRA_GPIO(H, 1) GPIO_ACTIVE_HIGH>;
767 power-gpios = <&gpio TEGRA_GPIO(I, 6) GPIO_ACTIVE_HIGH>;
768 bus-width = <4>;
769 };
770
771 sdhci@c8000600 {
772 status = "okay";
773 bus-width = <8>;
774 non-removable;
775 };
776
777 backlight: backlight {
778 compatible = "pwm-backlight";
779
780 enable-gpios = <&gpio TEGRA_GPIO(D, 4) GPIO_ACTIVE_HIGH>;
781 power-supply = <&vdd_bl_reg>;
782 pwms = <&pwm 2 5000000>;
783
784 brightness-levels = <0 4 8 16 32 64 128 255>;
785 default-brightness-level = <6>;
786 };
787
788 clocks {
789 compatible = "simple-bus";
790 #address-cells = <1>;
791 #size-cells = <0>;
792
793 clk32k_in: clock@0 {
794 compatible = "fixed-clock";
795 reg=<0>;
796 #clock-cells = <0>;
797 clock-frequency = <32768>;
798 };
799 };
800
801 gpio-keys {
802 compatible = "gpio-keys";
803
804 power {
805 label = "Power";
806 gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>;
807 linux,code = <KEY_POWER>;
808 gpio-key,wakeup;
809 };
810
811 lid {
812 label = "Lid";
813 gpios = <&gpio TEGRA_GPIO(C, 7) GPIO_ACTIVE_HIGH>;
814 linux,input-type = <5>; /* EV_SW */
815 linux,code = <0>; /* SW_LID */
816 debounce-interval = <1>;
817 gpio-key,wakeup;
818 };
819 };
820
821 panel: panel {
822 compatible = "chunghwa,claa101wa01a", "simple-panel";
823
824 power-supply = <&vdd_pnl_reg>;
825 enable-gpios = <&gpio TEGRA_GPIO(B, 2) GPIO_ACTIVE_HIGH>;
826
827 backlight = <&backlight>;
828 ddc-i2c-bus = <&lvds_ddc>;
829 };
830
831 regulators {
832 compatible = "simple-bus";
833 #address-cells = <1>;
834 #size-cells = <0>;
835
836 vdd_5v0_reg: regulator@0 {
837 compatible = "regulator-fixed";
838 reg = <0>;
839 regulator-name = "vdd_5v0";
840 regulator-min-microvolt = <5000000>;
841 regulator-max-microvolt = <5000000>;
842 regulator-always-on;
843 };
844
845 regulator@1 {
846 compatible = "regulator-fixed";
847 reg = <1>;
848 regulator-name = "vdd_1v5";
849 regulator-min-microvolt = <1500000>;
850 regulator-max-microvolt = <1500000>;
851 gpio = <&pmic 0 GPIO_ACTIVE_HIGH>;
852 };
853
854 regulator@2 {
855 compatible = "regulator-fixed";
856 reg = <2>;
857 regulator-name = "vdd_1v2";
858 regulator-min-microvolt = <1200000>;
859 regulator-max-microvolt = <1200000>;
860 gpio = <&pmic 1 GPIO_ACTIVE_HIGH>;
861 enable-active-high;
862 };
863
864 vbus_reg: regulator@3 {
865 compatible = "regulator-fixed";
866 reg = <3>;
867 regulator-name = "vdd_vbus_wup1";
868 regulator-min-microvolt = <5000000>;
869 regulator-max-microvolt = <5000000>;
870 enable-active-high;
871 gpio = <&gpio TEGRA_GPIO(D, 0) 0>;
872 regulator-always-on;
873 regulator-boot-on;
874 };
875
876 vdd_pnl_reg: regulator@4 {
877 compatible = "regulator-fixed";
878 reg = <4>;
879 regulator-name = "vdd_pnl";
880 regulator-min-microvolt = <2800000>;
881 regulator-max-microvolt = <2800000>;
882 gpio = <&gpio TEGRA_GPIO(C, 6) GPIO_ACTIVE_HIGH>;
883 enable-active-high;
884 };
885
886 vdd_bl_reg: regulator@5 {
887 compatible = "regulator-fixed";
888 reg = <5>;
889 regulator-name = "vdd_bl";
890 regulator-min-microvolt = <2800000>;
891 regulator-max-microvolt = <2800000>;
892 gpio = <&gpio TEGRA_GPIO(W, 0) GPIO_ACTIVE_HIGH>;
893 enable-active-high;
894 };
895 };
896
897 sound {
898 compatible = "nvidia,tegra-audio-wm8903-seaboard",
899 "nvidia,tegra-audio-wm8903";
900 nvidia,model = "NVIDIA Tegra Seaboard";
901
902 nvidia,audio-routing =
903 "Headphone Jack", "HPOUTR",
904 "Headphone Jack", "HPOUTL",
905 "Int Spk", "ROP",
906 "Int Spk", "RON",
907 "Int Spk", "LOP",
908 "Int Spk", "LON",
909 "Mic Jack", "MICBIAS",
910 "IN1R", "Mic Jack";
911
912 nvidia,i2s-controller = <&tegra_i2s1>;
913 nvidia,audio-codec = <&wm8903>;
914
915 nvidia,spkr-en-gpios = <&wm8903 2 GPIO_ACTIVE_HIGH>;
916 nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(X, 1) GPIO_ACTIVE_HIGH>;
917
918 clocks = <&tegra_car TEGRA20_CLK_PLL_A>,
919 <&tegra_car TEGRA20_CLK_PLL_A_OUT0>,
920 <&tegra_car TEGRA20_CLK_CDEV1>;
921 clock-names = "pll_a", "pll_a_out0", "mclk";
922 };
923 };