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