1/dts-v1/; 2 3#include <dt-bindings/input/input.h> 4#include "tegra20.dtsi" 5 6/ { 7 model = "NVIDIA Tegra20 Ventana evaluation board"; 8 compatible = "nvidia,ventana", "nvidia,tegra20"; 9 10 aliases { 11 rtc0 = "/i2c@7000d000/tps6586x@34"; 12 rtc1 = "/rtc@7000e000"; 13 serial0 = &uartd; 14 }; 15 16 memory { 17 reg = <0x00000000 0x40000000>; 18 }; 19 20 host1x@50000000 { 21 dc@54200000 { 22 rgb { 23 status = "okay"; 24 25 nvidia,panel = <&panel>; 26 }; 27 }; 28 29 hdmi@54280000 { 30 status = "okay"; 31 32 vdd-supply = <&hdmi_vdd_reg>; 33 pll-supply = <&hdmi_pll_reg>; 34 35 nvidia,ddc-i2c-bus = <&hdmi_ddc>; 36 nvidia,hpd-gpio = <&gpio TEGRA_GPIO(N, 7) 37 GPIO_ACTIVE_HIGH>; 38 }; 39 }; 40 41 pinmux@70000014 { 42 pinctrl-names = "default"; 43 pinctrl-0 = <&state_default>; 44 45 state_default: pinmux { 46 ata { 47 nvidia,pins = "ata"; 48 nvidia,function = "ide"; 49 }; 50 atb { 51 nvidia,pins = "atb", "gma", "gme"; 52 nvidia,function = "sdio4"; 53 }; 54 atc { 55 nvidia,pins = "atc"; 56 nvidia,function = "nand"; 57 }; 58 atd { 59 nvidia,pins = "atd", "ate", "gmb", "spia", 60 "spib", "spic"; 61 nvidia,function = "gmi"; 62 }; 63 cdev1 { 64 nvidia,pins = "cdev1"; 65 nvidia,function = "plla_out"; 66 }; 67 cdev2 { 68 nvidia,pins = "cdev2"; 69 nvidia,function = "pllp_out4"; 70 }; 71 crtp { 72 nvidia,pins = "crtp", "lm1"; 73 nvidia,function = "crt"; 74 }; 75 csus { 76 nvidia,pins = "csus"; 77 nvidia,function = "vi_sensor_clk"; 78 }; 79 dap1 { 80 nvidia,pins = "dap1"; 81 nvidia,function = "dap1"; 82 }; 83 dap2 { 84 nvidia,pins = "dap2"; 85 nvidia,function = "dap2"; 86 }; 87 dap3 { 88 nvidia,pins = "dap3"; 89 nvidia,function = "dap3"; 90 }; 91 dap4 { 92 nvidia,pins = "dap4"; 93 nvidia,function = "dap4"; 94 }; 95 dta { 96 nvidia,pins = "dta", "dtb", "dtc", "dtd", "dte"; 97 nvidia,function = "vi"; 98 }; 99 dtf { 100 nvidia,pins = "dtf"; 101 nvidia,function = "i2c3"; 102 }; 103 gmc { 104 nvidia,pins = "gmc"; 105 nvidia,function = "uartd"; 106 }; 107 gmd { 108 nvidia,pins = "gmd"; 109 nvidia,function = "sflash"; 110 }; 111 gpu { 112 nvidia,pins = "gpu"; 113 nvidia,function = "pwm"; 114 }; 115 gpu7 { 116 nvidia,pins = "gpu7"; 117 nvidia,function = "rtck"; 118 }; 119 gpv { 120 nvidia,pins = "gpv", "slxa", "slxk"; 121 nvidia,function = "pcie"; 122 }; 123 hdint { 124 nvidia,pins = "hdint"; 125 nvidia,function = "hdmi"; 126 }; 127 i2cp { 128 nvidia,pins = "i2cp"; 129 nvidia,function = "i2cp"; 130 }; 131 irrx { 132 nvidia,pins = "irrx", "irtx"; 133 nvidia,function = "uartb"; 134 }; 135 kbca { 136 nvidia,pins = "kbca", "kbcb", "kbcc", "kbcd", 137 "kbce", "kbcf"; 138 nvidia,function = "kbc"; 139 }; 140 lcsn { 141 nvidia,pins = "lcsn", "ldc", "lm0", "lpw1", 142 "lsdi", "lvp0"; 143 nvidia,function = "rsvd4"; 144 }; 145 ld0 { 146 nvidia,pins = "ld0", "ld1", "ld2", "ld3", "ld4", 147 "ld5", "ld6", "ld7", "ld8", "ld9", 148 "ld10", "ld11", "ld12", "ld13", "ld14", 149 "ld15", "ld16", "ld17", "ldi", "lhp0", 150 "lhp1", "lhp2", "lhs", "lpp", "lpw0", 151 "lpw2", "lsc0", "lsc1", "lsck", "lsda", 152 "lspi", "lvp1", "lvs"; 153 nvidia,function = "displaya"; 154 }; 155 owc { 156 nvidia,pins = "owc", "spdi", "spdo", "uac"; 157 nvidia,function = "rsvd2"; 158 }; 159 pmc { 160 nvidia,pins = "pmc"; 161 nvidia,function = "pwr_on"; 162 }; 163 rm { 164 nvidia,pins = "rm"; 165 nvidia,function = "i2c1"; 166 }; 167 sdb { 168 nvidia,pins = "sdb", "sdc", "sdd", "slxc"; 169 nvidia,function = "sdio3"; 170 }; 171 sdio1 { 172 nvidia,pins = "sdio1"; 173 nvidia,function = "sdio1"; 174 }; 175 slxd { 176 nvidia,pins = "slxd"; 177 nvidia,function = "spdif"; 178 }; 179 spid { 180 nvidia,pins = "spid", "spie", "spif"; 181 nvidia,function = "spi1"; 182 }; 183 spig { 184 nvidia,pins = "spig", "spih"; 185 nvidia,function = "spi2_alt"; 186 }; 187 uaa { 188 nvidia,pins = "uaa", "uab", "uda"; 189 nvidia,function = "ulpi"; 190 }; 191 uad { 192 nvidia,pins = "uad"; 193 nvidia,function = "irda"; 194 }; 195 uca { 196 nvidia,pins = "uca", "ucb"; 197 nvidia,function = "uartc"; 198 }; 199 conf_ata { 200 nvidia,pins = "ata", "atb", "atc", "atd", 201 "cdev1", "cdev2", "dap1", "dap2", 202 "dap4", "ddc", "dtf", "gma", "gmc", 203 "gme", "gpu", "gpu7", "i2cp", "irrx", 204 "irtx", "pta", "rm", "sdc", "sdd", 205 "slxc", "slxd", "slxk", "spdi", "spdo", 206 "uac", "uad", "uca", "ucb", "uda"; 207 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 208 nvidia,tristate = <TEGRA_PIN_DISABLE>; 209 }; 210 conf_ate { 211 nvidia,pins = "ate", "csus", "dap3", "gmd", 212 "gpv", "owc", "spia", "spib", "spic", 213 "spid", "spie", "spig"; 214 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 215 nvidia,tristate = <TEGRA_PIN_ENABLE>; 216 }; 217 conf_ck32 { 218 nvidia,pins = "ck32", "ddrc", "pmca", "pmcb", 219 "pmcc", "pmcd", "pmce", "xm2c", "xm2d"; 220 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 221 }; 222 conf_crtp { 223 nvidia,pins = "crtp", "gmb", "slxa", "spih"; 224 nvidia,pull = <TEGRA_PIN_PULL_UP>; 225 nvidia,tristate = <TEGRA_PIN_ENABLE>; 226 }; 227 conf_dta { 228 nvidia,pins = "dta", "dtb", "dtc", "dtd"; 229 nvidia,pull = <TEGRA_PIN_PULL_DOWN>; 230 nvidia,tristate = <TEGRA_PIN_DISABLE>; 231 }; 232 conf_dte { 233 nvidia,pins = "dte", "spif"; 234 nvidia,pull = <TEGRA_PIN_PULL_DOWN>; 235 nvidia,tristate = <TEGRA_PIN_ENABLE>; 236 }; 237 conf_hdint { 238 nvidia,pins = "hdint", "lcsn", "ldc", "lm1", 239 "lpw1", "lsck", "lsda", "lsdi", "lvp0"; 240 nvidia,tristate = <TEGRA_PIN_ENABLE>; 241 }; 242 conf_kbca { 243 nvidia,pins = "kbca", "kbcb", "kbcc", "kbcd", 244 "kbce", "kbcf", "sdio1", "uaa", "uab"; 245 nvidia,pull = <TEGRA_PIN_PULL_UP>; 246 nvidia,tristate = <TEGRA_PIN_DISABLE>; 247 }; 248 conf_lc { 249 nvidia,pins = "lc", "ls"; 250 nvidia,pull = <TEGRA_PIN_PULL_UP>; 251 }; 252 conf_ld0 { 253 nvidia,pins = "ld0", "ld1", "ld2", "ld3", "ld4", 254 "ld5", "ld6", "ld7", "ld8", "ld9", 255 "ld10", "ld11", "ld12", "ld13", "ld14", 256 "ld15", "ld16", "ld17", "ldi", "lhp0", 257 "lhp1", "lhp2", "lhs", "lm0", "lpp", 258 "lpw0", "lpw2", "lsc0", "lsc1", "lspi", 259 "lvp1", "lvs", "pmc", "sdb"; 260 nvidia,tristate = <TEGRA_PIN_DISABLE>; 261 }; 262 conf_ld17_0 { 263 nvidia,pins = "ld17_0", "ld19_18", "ld21_20", 264 "ld23_22"; 265 nvidia,pull = <TEGRA_PIN_PULL_DOWN>; 266 }; 267 drive_sdio1 { 268 nvidia,pins = "drive_sdio1"; 269 nvidia,high-speed-mode = <TEGRA_PIN_DISABLE>; 270 nvidia,schmitt = <TEGRA_PIN_ENABLE>; 271 nvidia,low-power-mode = <TEGRA_PIN_LP_DRIVE_DIV_1>; 272 nvidia,pull-down-strength = <31>; 273 nvidia,pull-up-strength = <31>; 274 nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_SLOWEST>; 275 nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_SLOWEST>; 276 }; 277 }; 278 279 state_i2cmux_ddc: pinmux_i2cmux_ddc { 280 ddc { 281 nvidia,pins = "ddc"; 282 nvidia,function = "i2c2"; 283 }; 284 pta { 285 nvidia,pins = "pta"; 286 nvidia,function = "rsvd4"; 287 }; 288 }; 289 290 state_i2cmux_pta: pinmux_i2cmux_pta { 291 ddc { 292 nvidia,pins = "ddc"; 293 nvidia,function = "rsvd4"; 294 }; 295 pta { 296 nvidia,pins = "pta"; 297 nvidia,function = "i2c2"; 298 }; 299 }; 300 301 state_i2cmux_idle: pinmux_i2cmux_idle { 302 ddc { 303 nvidia,pins = "ddc"; 304 nvidia,function = "rsvd4"; 305 }; 306 pta { 307 nvidia,pins = "pta"; 308 nvidia,function = "rsvd4"; 309 }; 310 }; 311 }; 312 313 i2s@70002800 { 314 status = "okay"; 315 }; 316 317 serial@70006300 { 318 status = "okay"; 319 }; 320 321 pwm: pwm@7000a000 { 322 status = "okay"; 323 }; 324 325 i2c@7000c000 { 326 status = "okay"; 327 clock-frequency = <400000>; 328 329 wm8903: wm8903@1a { 330 compatible = "wlf,wm8903"; 331 reg = <0x1a>; 332 interrupt-parent = <&gpio>; 333 interrupts = <TEGRA_GPIO(X, 3) IRQ_TYPE_LEVEL_HIGH>; 334 335 gpio-controller; 336 #gpio-cells = <2>; 337 338 micdet-cfg = <0>; 339 micdet-delay = <100>; 340 gpio-cfg = <0xffffffff 0xffffffff 0 0xffffffff 0xffffffff>; 341 }; 342 343 /* ALS and proximity sensor */ 344 isl29018@44 { 345 compatible = "isil,isl29018"; 346 reg = <0x44>; 347 interrupt-parent = <&gpio>; 348 interrupts = <TEGRA_GPIO(Z, 2) IRQ_TYPE_LEVEL_HIGH>; 349 }; 350 }; 351 352 i2c@7000c400 { 353 status = "okay"; 354 clock-frequency = <100000>; 355 }; 356 357 i2cmux { 358 compatible = "i2c-mux-pinctrl"; 359 #address-cells = <1>; 360 #size-cells = <0>; 361 362 i2c-parent = <&{/i2c@7000c400}>; 363 364 pinctrl-names = "ddc", "pta", "idle"; 365 pinctrl-0 = <&state_i2cmux_ddc>; 366 pinctrl-1 = <&state_i2cmux_pta>; 367 pinctrl-2 = <&state_i2cmux_idle>; 368 369 hdmi_ddc: i2c@0 { 370 reg = <0>; 371 #address-cells = <1>; 372 #size-cells = <0>; 373 }; 374 375 lvds_ddc: i2c@1 { 376 reg = <1>; 377 #address-cells = <1>; 378 #size-cells = <0>; 379 }; 380 }; 381 382 i2c@7000c500 { 383 status = "okay"; 384 clock-frequency = <400000>; 385 }; 386 387 i2c@7000d000 { 388 status = "okay"; 389 clock-frequency = <400000>; 390 391 pmic: tps6586x@34 { 392 compatible = "ti,tps6586x"; 393 reg = <0x34>; 394 interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>; 395 396 ti,system-power-controller; 397 398 #gpio-cells = <2>; 399 gpio-controller; 400 401 sys-supply = <&vdd_5v0_reg>; 402 vin-sm0-supply = <&sys_reg>; 403 vin-sm1-supply = <&sys_reg>; 404 vin-sm2-supply = <&sys_reg>; 405 vinldo01-supply = <&sm2_reg>; 406 vinldo23-supply = <&sm2_reg>; 407 vinldo4-supply = <&sm2_reg>; 408 vinldo678-supply = <&sm2_reg>; 409 vinldo9-supply = <&sm2_reg>; 410 411 regulators { 412 sys_reg: sys { 413 regulator-name = "vdd_sys"; 414 regulator-always-on; 415 }; 416 417 sm0 { 418 regulator-name = "vdd_sm0,vdd_core"; 419 regulator-min-microvolt = <1200000>; 420 regulator-max-microvolt = <1200000>; 421 regulator-always-on; 422 }; 423 424 sm1 { 425 regulator-name = "vdd_sm1,vdd_cpu"; 426 regulator-min-microvolt = <1000000>; 427 regulator-max-microvolt = <1000000>; 428 regulator-always-on; 429 }; 430 431 sm2_reg: sm2 { 432 regulator-name = "vdd_sm2,vin_ldo*"; 433 regulator-min-microvolt = <3700000>; 434 regulator-max-microvolt = <3700000>; 435 regulator-always-on; 436 }; 437 438 /* LDO0 is not connected to anything */ 439 440 ldo1 { 441 regulator-name = "vdd_ldo1,avdd_pll*"; 442 regulator-min-microvolt = <1100000>; 443 regulator-max-microvolt = <1100000>; 444 regulator-always-on; 445 }; 446 447 ldo2 { 448 regulator-name = "vdd_ldo2,vdd_rtc"; 449 regulator-min-microvolt = <1200000>; 450 regulator-max-microvolt = <1200000>; 451 }; 452 453 ldo3 { 454 regulator-name = "vdd_ldo3,avdd_usb*"; 455 regulator-min-microvolt = <3300000>; 456 regulator-max-microvolt = <3300000>; 457 regulator-always-on; 458 }; 459 460 ldo4 { 461 regulator-name = "vdd_ldo4,avdd_osc,vddio_sys"; 462 regulator-min-microvolt = <1800000>; 463 regulator-max-microvolt = <1800000>; 464 regulator-always-on; 465 }; 466 467 ldo5 { 468 regulator-name = "vdd_ldo5,vcore_mmc"; 469 regulator-min-microvolt = <2850000>; 470 regulator-max-microvolt = <2850000>; 471 regulator-always-on; 472 }; 473 474 ldo6 { 475 regulator-name = "vdd_ldo6,avdd_vdac"; 476 regulator-min-microvolt = <1800000>; 477 regulator-max-microvolt = <1800000>; 478 }; 479 480 hdmi_vdd_reg: ldo7 { 481 regulator-name = "vdd_ldo7,avdd_hdmi,vdd_fuse"; 482 regulator-min-microvolt = <3300000>; 483 regulator-max-microvolt = <3300000>; 484 }; 485 486 hdmi_pll_reg: ldo8 { 487 regulator-name = "vdd_ldo8,avdd_hdmi_pll"; 488 regulator-min-microvolt = <1800000>; 489 regulator-max-microvolt = <1800000>; 490 }; 491 492 ldo9 { 493 regulator-name = "vdd_ldo9,avdd_2v85,vdd_ddr_rx"; 494 regulator-min-microvolt = <2850000>; 495 regulator-max-microvolt = <2850000>; 496 regulator-always-on; 497 }; 498 499 ldo_rtc { 500 regulator-name = "vdd_rtc_out,vdd_cell"; 501 regulator-min-microvolt = <3300000>; 502 regulator-max-microvolt = <3300000>; 503 regulator-always-on; 504 }; 505 }; 506 }; 507 508 temperature-sensor@4c { 509 compatible = "onnn,nct1008"; 510 reg = <0x4c>; 511 }; 512 }; 513 514 pmc@7000e400 { 515 nvidia,invert-interrupt; 516 nvidia,suspend-mode = <1>; 517 nvidia,cpu-pwr-good-time = <2000>; 518 nvidia,cpu-pwr-off-time = <100>; 519 nvidia,core-pwr-good-time = <3845 3845>; 520 nvidia,core-pwr-off-time = <458>; 521 nvidia,sys-clock-req-active-high; 522 }; 523 524 usb@c5000000 { 525 status = "okay"; 526 }; 527 528 usb-phy@c5000000 { 529 status = "okay"; 530 }; 531 532 usb@c5004000 { 533 status = "okay"; 534 nvidia,phy-reset-gpio = <&gpio TEGRA_GPIO(V, 1) 535 GPIO_ACTIVE_LOW>; 536 }; 537 538 usb-phy@c5004000 { 539 status = "okay"; 540 nvidia,phy-reset-gpio = <&gpio TEGRA_GPIO(V, 1) 541 GPIO_ACTIVE_LOW>; 542 }; 543 544 usb@c5008000 { 545 status = "okay"; 546 }; 547 548 usb-phy@c5008000 { 549 status = "okay"; 550 }; 551 552 sdhci@c8000000 { 553 status = "okay"; 554 power-gpios = <&gpio TEGRA_GPIO(K, 6) GPIO_ACTIVE_HIGH>; 555 bus-width = <4>; 556 keep-power-in-suspend; 557 }; 558 559 sdhci@c8000400 { 560 status = "okay"; 561 cd-gpios = <&gpio TEGRA_GPIO(I, 5) GPIO_ACTIVE_LOW>; 562 wp-gpios = <&gpio TEGRA_GPIO(H, 1) GPIO_ACTIVE_HIGH>; 563 power-gpios = <&gpio TEGRA_GPIO(I, 6) GPIO_ACTIVE_HIGH>; 564 bus-width = <4>; 565 }; 566 567 sdhci@c8000600 { 568 status = "okay"; 569 bus-width = <8>; 570 non-removable; 571 }; 572 573 backlight: backlight { 574 compatible = "pwm-backlight"; 575 576 enable-gpios = <&gpio TEGRA_GPIO(D, 4) GPIO_ACTIVE_HIGH>; 577 power-supply = <&vdd_bl_reg>; 578 pwms = <&pwm 2 5000000>; 579 580 brightness-levels = <0 4 8 16 32 64 128 255>; 581 default-brightness-level = <6>; 582 }; 583 584 clocks { 585 compatible = "simple-bus"; 586 #address-cells = <1>; 587 #size-cells = <0>; 588 589 clk32k_in: clock@0 { 590 compatible = "fixed-clock"; 591 reg=<0>; 592 #clock-cells = <0>; 593 clock-frequency = <32768>; 594 }; 595 }; 596 597 gpio-keys { 598 compatible = "gpio-keys"; 599 600 power { 601 label = "Power"; 602 gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>; 603 linux,code = <KEY_POWER>; 604 gpio-key,wakeup; 605 }; 606 }; 607 608 panel: panel { 609 compatible = "chunghwa,claa101wa01a", "simple-panel"; 610 611 power-supply = <&vdd_pnl_reg>; 612 enable-gpios = <&gpio TEGRA_GPIO(B, 2) GPIO_ACTIVE_HIGH>; 613 614 backlight = <&backlight>; 615 ddc-i2c-bus = <&lvds_ddc>; 616 }; 617 618 regulators { 619 compatible = "simple-bus"; 620 #address-cells = <1>; 621 #size-cells = <0>; 622 623 vdd_5v0_reg: regulator@0 { 624 compatible = "regulator-fixed"; 625 reg = <0>; 626 regulator-name = "vdd_5v0"; 627 regulator-min-microvolt = <5000000>; 628 regulator-max-microvolt = <5000000>; 629 regulator-always-on; 630 }; 631 632 regulator@1 { 633 compatible = "regulator-fixed"; 634 reg = <1>; 635 regulator-name = "vdd_1v5"; 636 regulator-min-microvolt = <1500000>; 637 regulator-max-microvolt = <1500000>; 638 gpio = <&pmic 0 GPIO_ACTIVE_HIGH>; 639 }; 640 641 regulator@2 { 642 compatible = "regulator-fixed"; 643 reg = <2>; 644 regulator-name = "vdd_1v2"; 645 regulator-min-microvolt = <1200000>; 646 regulator-max-microvolt = <1200000>; 647 gpio = <&pmic 1 GPIO_ACTIVE_HIGH>; 648 enable-active-high; 649 }; 650 651 vdd_pnl_reg: regulator@3 { 652 compatible = "regulator-fixed"; 653 reg = <3>; 654 regulator-name = "vdd_pnl"; 655 regulator-min-microvolt = <2800000>; 656 regulator-max-microvolt = <2800000>; 657 gpio = <&gpio TEGRA_GPIO(C, 6) GPIO_ACTIVE_HIGH>; 658 enable-active-high; 659 }; 660 661 vdd_bl_reg: regulator@4 { 662 compatible = "regulator-fixed"; 663 reg = <4>; 664 regulator-name = "vdd_bl"; 665 regulator-min-microvolt = <2800000>; 666 regulator-max-microvolt = <2800000>; 667 gpio = <&gpio TEGRA_GPIO(W, 0) GPIO_ACTIVE_HIGH>; 668 enable-active-high; 669 }; 670 }; 671 672 sound { 673 compatible = "nvidia,tegra-audio-wm8903-ventana", 674 "nvidia,tegra-audio-wm8903"; 675 nvidia,model = "NVIDIA Tegra Ventana"; 676 677 nvidia,audio-routing = 678 "Headphone Jack", "HPOUTR", 679 "Headphone Jack", "HPOUTL", 680 "Int Spk", "ROP", 681 "Int Spk", "RON", 682 "Int Spk", "LOP", 683 "Int Spk", "LON", 684 "Mic Jack", "MICBIAS", 685 "IN1L", "Mic Jack"; 686 687 nvidia,i2s-controller = <&tegra_i2s1>; 688 nvidia,audio-codec = <&wm8903>; 689 690 nvidia,spkr-en-gpios = <&wm8903 2 GPIO_ACTIVE_HIGH>; 691 nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(W, 2) GPIO_ACTIVE_HIGH>; 692 nvidia,int-mic-en-gpios = <&gpio TEGRA_GPIO(X, 0) 693 GPIO_ACTIVE_HIGH>; 694 nvidia,ext-mic-en-gpios = <&gpio TEGRA_GPIO(X, 1) 695 GPIO_ACTIVE_HIGH>; 696 697 clocks = <&tegra_car TEGRA20_CLK_PLL_A>, 698 <&tegra_car TEGRA20_CLK_PLL_A_OUT0>, 699 <&tegra_car TEGRA20_CLK_CDEV1>; 700 clock-names = "pll_a", "pll_a_out0", "mclk"; 701 }; 702}; 703