1#include "tegra20.dtsi" 2 3/ { 4 model = "Toradex Colibri T20 512MB"; 5 compatible = "toradex,colibri_t20-512", "nvidia,tegra20"; 6 7 aliases { 8 rtc0 = "/i2c@7000d000/tps6586x@34"; 9 rtc1 = "/rtc@7000e000"; 10 }; 11 12 memory { 13 reg = <0x00000000 0x20000000>; 14 }; 15 16 host1x@50000000 { 17 hdmi@54280000 { 18 vdd-supply = <&hdmi_vdd_reg>; 19 pll-supply = <&hdmi_pll_reg>; 20 21 nvidia,ddc-i2c-bus = <&i2c_ddc>; 22 nvidia,hpd-gpio = <&gpio TEGRA_GPIO(N, 7) 23 GPIO_ACTIVE_HIGH>; 24 }; 25 }; 26 27 pinmux@70000014 { 28 pinctrl-names = "default"; 29 pinctrl-0 = <&state_default>; 30 31 state_default: pinmux { 32 audio_refclk { 33 nvidia,pins = "cdev1"; 34 nvidia,function = "plla_out"; 35 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 36 nvidia,tristate = <TEGRA_PIN_DISABLE>; 37 }; 38 crt { 39 nvidia,pins = "crtp"; 40 nvidia,function = "crt"; 41 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 42 nvidia,tristate = <TEGRA_PIN_ENABLE>; 43 }; 44 dap3 { 45 nvidia,pins = "dap3"; 46 nvidia,function = "dap3"; 47 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 48 nvidia,tristate = <TEGRA_PIN_DISABLE>; 49 }; 50 displaya { 51 nvidia,pins = "ld0", "ld1", "ld2", "ld3", 52 "ld4", "ld5", "ld6", "ld7", "ld8", 53 "ld9", "ld10", "ld11", "ld12", "ld13", 54 "ld14", "ld15", "ld16", "ld17", 55 "lhs", "lpw0", "lpw2", "lsc0", 56 "lsc1", "lsck", "lsda", "lspi", "lvs"; 57 nvidia,function = "displaya"; 58 nvidia,tristate = <TEGRA_PIN_ENABLE>; 59 }; 60 gpio_dte { 61 nvidia,pins = "dte"; 62 nvidia,function = "rsvd1"; 63 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 64 nvidia,tristate = <TEGRA_PIN_DISABLE>; 65 }; 66 gpio_gmi { 67 nvidia,pins = "ata", "atc", "atd", "ate", 68 "dap1", "dap2", "dap4", "gpu", "irrx", 69 "irtx", "spia", "spib", "spic"; 70 nvidia,function = "gmi"; 71 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 72 nvidia,tristate = <TEGRA_PIN_DISABLE>; 73 }; 74 gpio_pta { 75 nvidia,pins = "pta"; 76 nvidia,function = "rsvd4"; 77 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 78 nvidia,tristate = <TEGRA_PIN_DISABLE>; 79 }; 80 gpio_uac { 81 nvidia,pins = "uac"; 82 nvidia,function = "rsvd2"; 83 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 84 nvidia,tristate = <TEGRA_PIN_DISABLE>; 85 }; 86 hdint { 87 nvidia,pins = "hdint"; 88 nvidia,function = "hdmi"; 89 nvidia,tristate = <TEGRA_PIN_ENABLE>; 90 }; 91 i2c1 { 92 nvidia,pins = "rm"; 93 nvidia,function = "i2c1"; 94 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 95 nvidia,tristate = <TEGRA_PIN_ENABLE>; 96 }; 97 i2c3 { 98 nvidia,pins = "dtf"; 99 nvidia,function = "i2c3"; 100 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 101 nvidia,tristate = <TEGRA_PIN_ENABLE>; 102 }; 103 i2cddc { 104 nvidia,pins = "ddc"; 105 nvidia,function = "i2c2"; 106 nvidia,pull = <TEGRA_PIN_PULL_UP>; 107 nvidia,tristate = <TEGRA_PIN_ENABLE>; 108 }; 109 i2cp { 110 nvidia,pins = "i2cp"; 111 nvidia,function = "i2cp"; 112 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 113 nvidia,tristate = <TEGRA_PIN_DISABLE>; 114 }; 115 irda { 116 nvidia,pins = "uad"; 117 nvidia,function = "irda"; 118 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 119 nvidia,tristate = <TEGRA_PIN_ENABLE>; 120 }; 121 nand { 122 nvidia,pins = "kbca", "kbcc", "kbcd", 123 "kbce", "kbcf"; 124 nvidia,function = "nand"; 125 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 126 nvidia,tristate = <TEGRA_PIN_DISABLE>; 127 }; 128 owc { 129 nvidia,pins = "owc"; 130 nvidia,function = "owr"; 131 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 132 nvidia,tristate = <TEGRA_PIN_ENABLE>; 133 }; 134 pmc { 135 nvidia,pins = "pmc"; 136 nvidia,function = "pwr_on"; 137 nvidia,tristate = <TEGRA_PIN_DISABLE>; 138 }; 139 pwm { 140 nvidia,pins = "sdb", "sdc", "sdd"; 141 nvidia,function = "pwm"; 142 nvidia,tristate = <TEGRA_PIN_ENABLE>; 143 }; 144 sdio4 { 145 nvidia,pins = "atb", "gma", "gme"; 146 nvidia,function = "sdio4"; 147 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 148 nvidia,tristate = <TEGRA_PIN_ENABLE>; 149 }; 150 spi1 { 151 nvidia,pins = "spid", "spie", "spif"; 152 nvidia,function = "spi1"; 153 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 154 nvidia,tristate = <TEGRA_PIN_ENABLE>; 155 }; 156 spi4 { 157 nvidia,pins = "slxa", "slxc", "slxd", "slxk"; 158 nvidia,function = "spi4"; 159 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 160 nvidia,tristate = <TEGRA_PIN_ENABLE>; 161 }; 162 uarta { 163 nvidia,pins = "sdio1"; 164 nvidia,function = "uarta"; 165 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 166 nvidia,tristate = <TEGRA_PIN_ENABLE>; 167 }; 168 uartd { 169 nvidia,pins = "gmc"; 170 nvidia,function = "uartd"; 171 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 172 nvidia,tristate = <TEGRA_PIN_ENABLE>; 173 }; 174 ulpi { 175 nvidia,pins = "uaa", "uab", "uda"; 176 nvidia,function = "ulpi"; 177 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 178 nvidia,tristate = <TEGRA_PIN_DISABLE>; 179 }; 180 ulpi_refclk { 181 nvidia,pins = "cdev2"; 182 nvidia,function = "pllp_out4"; 183 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 184 nvidia,tristate = <TEGRA_PIN_DISABLE>; 185 }; 186 usb_gpio { 187 nvidia,pins = "spig", "spih"; 188 nvidia,function = "spi2_alt"; 189 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 190 nvidia,tristate = <TEGRA_PIN_DISABLE>; 191 }; 192 vi { 193 nvidia,pins = "dta", "dtb", "dtc", "dtd"; 194 nvidia,function = "vi"; 195 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 196 nvidia,tristate = <TEGRA_PIN_ENABLE>; 197 }; 198 vi_sc { 199 nvidia,pins = "csus"; 200 nvidia,function = "vi_sensor_clk"; 201 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 202 nvidia,tristate = <TEGRA_PIN_ENABLE>; 203 }; 204 }; 205 }; 206 207 ac97: ac97@70002000 { 208 status = "okay"; 209 nvidia,codec-reset-gpio = <&gpio TEGRA_GPIO(V, 0) 210 GPIO_ACTIVE_HIGH>; 211 nvidia,codec-sync-gpio = <&gpio TEGRA_GPIO(P, 0) 212 GPIO_ACTIVE_HIGH>; 213 }; 214 215 i2c@7000c000 { 216 clock-frequency = <400000>; 217 }; 218 219 i2c_ddc: i2c@7000c400 { 220 clock-frequency = <100000>; 221 }; 222 223 i2c@7000c500 { 224 clock-frequency = <400000>; 225 }; 226 227 i2c@7000d000 { 228 status = "okay"; 229 clock-frequency = <400000>; 230 231 pmic: tps6586x@34 { 232 compatible = "ti,tps6586x"; 233 reg = <0x34>; 234 interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>; 235 236 ti,system-power-controller; 237 238 #gpio-cells = <2>; 239 gpio-controller; 240 241 sys-supply = <&vdd_3v3_reg>; 242 vin-sm0-supply = <&sys_reg>; 243 vin-sm1-supply = <&sys_reg>; 244 vin-sm2-supply = <&sys_reg>; 245 vinldo01-supply = <&sm2_reg>; 246 vinldo23-supply = <&vdd_3v3_reg>; 247 vinldo4-supply = <&vdd_3v3_reg>; 248 vinldo678-supply = <&vdd_3v3_reg>; 249 vinldo9-supply = <&vdd_3v3_reg>; 250 251 regulators { 252 #address-cells = <1>; 253 #size-cells = <0>; 254 255 sys_reg: regulator@0 { 256 reg = <0>; 257 regulator-compatible = "sys"; 258 regulator-name = "vdd_sys"; 259 regulator-always-on; 260 }; 261 262 regulator@1 { 263 reg = <1>; 264 regulator-compatible = "sm0"; 265 regulator-name = "vdd_sm0,vdd_core"; 266 regulator-min-microvolt = <1200000>; 267 regulator-max-microvolt = <1200000>; 268 regulator-always-on; 269 }; 270 271 regulator@2 { 272 reg = <2>; 273 regulator-compatible = "sm1"; 274 regulator-name = "vdd_sm1,vdd_cpu"; 275 regulator-min-microvolt = <1000000>; 276 regulator-max-microvolt = <1000000>; 277 regulator-always-on; 278 }; 279 280 sm2_reg: regulator@3 { 281 reg = <3>; 282 regulator-compatible = "sm2"; 283 regulator-name = "vdd_sm2,vin_ldo*"; 284 regulator-min-microvolt = <1800000>; 285 regulator-max-microvolt = <1800000>; 286 regulator-always-on; 287 }; 288 289 /* LDO0 is not connected to anything */ 290 291 regulator@5 { 292 reg = <5>; 293 regulator-compatible = "ldo1"; 294 regulator-name = "vdd_ldo1,avdd_pll*"; 295 regulator-min-microvolt = <1100000>; 296 regulator-max-microvolt = <1100000>; 297 regulator-always-on; 298 }; 299 300 regulator@6 { 301 reg = <6>; 302 regulator-compatible = "ldo2"; 303 regulator-name = "vdd_ldo2,vdd_rtc"; 304 regulator-min-microvolt = <1200000>; 305 regulator-max-microvolt = <1200000>; 306 }; 307 308 /* LDO3 is not connected to anything */ 309 310 regulator@8 { 311 reg = <8>; 312 regulator-compatible = "ldo4"; 313 regulator-name = "vdd_ldo4,avdd_osc,vddio_sys"; 314 regulator-min-microvolt = <1800000>; 315 regulator-max-microvolt = <1800000>; 316 regulator-always-on; 317 }; 318 319 ldo5_reg: regulator@9 { 320 reg = <9>; 321 regulator-compatible = "ldo5"; 322 regulator-name = "vdd_ldo5,vdd_fuse"; 323 regulator-min-microvolt = <3300000>; 324 regulator-max-microvolt = <3300000>; 325 regulator-always-on; 326 }; 327 328 regulator@10 { 329 reg = <10>; 330 regulator-compatible = "ldo6"; 331 regulator-name = "vdd_ldo6,avdd_vdac,vddio_vi,vddio_cam"; 332 regulator-min-microvolt = <2850000>; 333 regulator-max-microvolt = <2850000>; 334 }; 335 336 hdmi_vdd_reg: regulator@11 { 337 reg = <11>; 338 regulator-compatible = "ldo7"; 339 regulator-name = "vdd_ldo7,avdd_hdmi"; 340 regulator-min-microvolt = <3300000>; 341 regulator-max-microvolt = <3300000>; 342 }; 343 344 hdmi_pll_reg: regulator@12 { 345 reg = <12>; 346 regulator-compatible = "ldo8"; 347 regulator-name = "vdd_ldo8,avdd_hdmi_pll"; 348 regulator-min-microvolt = <1800000>; 349 regulator-max-microvolt = <1800000>; 350 }; 351 352 regulator@13 { 353 reg = <13>; 354 regulator-compatible = "ldo9"; 355 regulator-name = "vdd_ldo9,avdd_2v85,vdd_ddr_rx"; 356 regulator-min-microvolt = <2850000>; 357 regulator-max-microvolt = <2850000>; 358 regulator-always-on; 359 }; 360 361 regulator@14 { 362 reg = <14>; 363 regulator-compatible = "ldo_rtc"; 364 regulator-name = "vdd_rtc_out,vdd_cell"; 365 regulator-min-microvolt = <3300000>; 366 regulator-max-microvolt = <3300000>; 367 regulator-always-on; 368 }; 369 }; 370 }; 371 372 temperature-sensor@4c { 373 compatible = "national,lm95245"; 374 reg = <0x4c>; 375 }; 376 }; 377 378 pmc@7000e400 { 379 nvidia,suspend-mode = <1>; 380 nvidia,cpu-pwr-good-time = <5000>; 381 nvidia,cpu-pwr-off-time = <5000>; 382 nvidia,core-pwr-good-time = <3845 3845>; 383 nvidia,core-pwr-off-time = <3875>; 384 nvidia,sys-clock-req-active-high; 385 }; 386 387 memory-controller@7000f400 { 388 emc-table@83250 { 389 reg = <83250>; 390 compatible = "nvidia,tegra20-emc-table"; 391 clock-frequency = <83250>; 392 nvidia,emc-registers = <0x00000005 0x00000011 393 0x00000004 0x00000002 0x00000004 0x00000004 394 0x00000001 0x0000000a 0x00000002 0x00000002 395 0x00000001 0x00000001 0x00000003 0x00000004 396 0x00000003 0x00000009 0x0000000c 0x0000025f 397 0x00000000 0x00000003 0x00000003 0x00000002 398 0x00000002 0x00000001 0x00000008 0x000000c8 399 0x00000003 0x00000005 0x00000003 0x0000000c 400 0x00000002 0x00000000 0x00000000 0x00000002 401 0x00000000 0x00000000 0x00000083 0x00520006 402 0x00000010 0x00000008 0x00000000 0x00000000 403 0x00000000 0x00000000 0x00000000 0x00000000>; 404 }; 405 emc-table@133200 { 406 reg = <133200>; 407 compatible = "nvidia,tegra20-emc-table"; 408 clock-frequency = <133200>; 409 nvidia,emc-registers = <0x00000008 0x00000019 410 0x00000006 0x00000002 0x00000004 0x00000004 411 0x00000001 0x0000000a 0x00000002 0x00000002 412 0x00000002 0x00000001 0x00000003 0x00000004 413 0x00000003 0x00000009 0x0000000c 0x0000039f 414 0x00000000 0x00000003 0x00000003 0x00000002 415 0x00000002 0x00000001 0x00000008 0x000000c8 416 0x00000003 0x00000007 0x00000003 0x0000000c 417 0x00000002 0x00000000 0x00000000 0x00000002 418 0x00000000 0x00000000 0x00000083 0x00510006 419 0x00000010 0x00000008 0x00000000 0x00000000 420 0x00000000 0x00000000 0x00000000 0x00000000>; 421 }; 422 emc-table@166500 { 423 reg = <166500>; 424 compatible = "nvidia,tegra20-emc-table"; 425 clock-frequency = <166500>; 426 nvidia,emc-registers = <0x0000000a 0x00000021 427 0x00000008 0x00000003 0x00000004 0x00000004 428 0x00000002 0x0000000a 0x00000003 0x00000003 429 0x00000002 0x00000001 0x00000003 0x00000004 430 0x00000003 0x00000009 0x0000000c 0x000004df 431 0x00000000 0x00000003 0x00000003 0x00000003 432 0x00000003 0x00000001 0x00000009 0x000000c8 433 0x00000003 0x00000009 0x00000004 0x0000000c 434 0x00000002 0x00000000 0x00000000 0x00000002 435 0x00000000 0x00000000 0x00000083 0x004f0006 436 0x00000010 0x00000008 0x00000000 0x00000000 437 0x00000000 0x00000000 0x00000000 0x00000000>; 438 }; 439 emc-table@333000 { 440 reg = <333000>; 441 compatible = "nvidia,tegra20-emc-table"; 442 clock-frequency = <333000>; 443 nvidia,emc-registers = <0x00000014 0x00000041 444 0x0000000f 0x00000005 0x00000004 0x00000005 445 0x00000003 0x0000000a 0x00000005 0x00000005 446 0x00000004 0x00000001 0x00000003 0x00000004 447 0x00000003 0x00000009 0x0000000c 0x000009ff 448 0x00000000 0x00000003 0x00000003 0x00000005 449 0x00000005 0x00000001 0x0000000e 0x000000c8 450 0x00000003 0x00000011 0x00000006 0x0000000c 451 0x00000002 0x00000000 0x00000000 0x00000002 452 0x00000000 0x00000000 0x00000083 0x00380006 453 0x00000010 0x00000008 0x00000000 0x00000000 454 0x00000000 0x00000000 0x00000000 0x00000000>; 455 }; 456 }; 457 458 usb@c5004000 { 459 status = "okay"; 460 nvidia,phy-reset-gpio = <&gpio TEGRA_GPIO(V, 1) 461 GPIO_ACTIVE_LOW>; 462 }; 463 464 usb-phy@c5004000 { 465 status = "okay"; 466 nvidia,phy-reset-gpio = <&gpio TEGRA_GPIO(V, 1) 467 GPIO_ACTIVE_LOW>; 468 }; 469 470 sdhci@c8000600 { 471 cd-gpios = <&gpio TEGRA_GPIO(C, 7) GPIO_ACTIVE_LOW>; 472 }; 473 474 clocks { 475 compatible = "simple-bus"; 476 #address-cells = <1>; 477 #size-cells = <0>; 478 479 clk32k_in: clock@0 { 480 compatible = "fixed-clock"; 481 reg=<0>; 482 #clock-cells = <0>; 483 clock-frequency = <32768>; 484 }; 485 }; 486 487 regulators { 488 compatible = "simple-bus"; 489 #address-cells = <1>; 490 #size-cells = <0>; 491 492 vdd_3v3_reg: regulator@100 { 493 compatible = "regulator-fixed"; 494 reg = <100>; 495 regulator-name = "vdd_3v3"; 496 regulator-min-microvolt = <3300000>; 497 regulator-max-microvolt = <3300000>; 498 regulator-always-on; 499 }; 500 501 regulator@101 { 502 compatible = "regulator-fixed"; 503 reg = <101>; 504 regulator-name = "internal_usb"; 505 regulator-min-microvolt = <5000000>; 506 regulator-max-microvolt = <5000000>; 507 enable-active-high; 508 regulator-boot-on; 509 regulator-always-on; 510 gpio = <&gpio TEGRA_GPIO(BB, 1) GPIO_ACTIVE_HIGH>; 511 }; 512 }; 513 514 sound { 515 compatible = "nvidia,tegra-audio-wm9712-colibri_t20", 516 "nvidia,tegra-audio-wm9712"; 517 nvidia,model = "Colibri T20 AC97 Audio"; 518 519 nvidia,audio-routing = 520 "Headphone", "HPOUTL", 521 "Headphone", "HPOUTR", 522 "LineIn", "LINEINL", 523 "LineIn", "LINEINR", 524 "Mic", "MIC1"; 525 526 nvidia,ac97-controller = <&ac97>; 527 528 clocks = <&tegra_car TEGRA20_CLK_PLL_A>, 529 <&tegra_car TEGRA20_CLK_PLL_A_OUT0>, 530 <&tegra_car TEGRA20_CLK_CDEV1>; 531 clock-names = "pll_a", "pll_a_out0", "mclk"; 532 }; 533}; 534