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