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