1// SPDX-License-Identifier: GPL-2.0 2 3#include <dt-bindings/input/gpio-keys.h> 4#include <dt-bindings/input/input.h> 5#include <dt-bindings/power/summit,smb347-charger.h> 6#include <dt-bindings/thermal/thermal.h> 7 8#include "tegra30.dtsi" 9#include "tegra30-cpu-opp.dtsi" 10#include "tegra30-cpu-opp-microvolt.dtsi" 11 12/ { 13 aliases { 14 mmc0 = &sdmmc4; /* eMMC */ 15 mmc1 = &sdmmc3; /* WiFi */ 16 17 rtc0 = &pmic; 18 rtc1 = "/rtc@7000e000"; 19 20 serial1 = &uartc; /* Bluetooth */ 21 serial2 = &uartb; /* GPS */ 22 }; 23 24 /* 25 * The decompressor and also some bootloaders rely on a 26 * pre-existing /chosen node to be available to insert the 27 * command line and merge other ATAGS info. 28 */ 29 chosen {}; 30 31 memory@80000000 { 32 reg = <0x80000000 0x40000000>; 33 }; 34 35 reserved-memory { 36 #address-cells = <1>; 37 #size-cells = <1>; 38 ranges; 39 40 linux,cma@80000000 { 41 compatible = "shared-dma-pool"; 42 alloc-ranges = <0x80000000 0x30000000>; 43 size = <0x10000000>; /* 256MiB */ 44 linux,cma-default; 45 reusable; 46 }; 47 48 ramoops@bfdf0000 { 49 compatible = "ramoops"; 50 reg = <0xbfdf0000 0x10000>; /* 64kB */ 51 console-size = <0x8000>; /* 32kB */ 52 record-size = <0x400>; /* 1kB */ 53 ecc-size = <16>; 54 }; 55 56 trustzone@bfe00000 { 57 reg = <0xbfe00000 0x200000>; 58 no-map; 59 }; 60 }; 61 62 host1x@50000000 { 63 dc@54200000 { 64 rgb { 65 status = "okay"; 66 67 port@0 { 68 lcd_output: endpoint { 69 remote-endpoint = <&lvds_encoder_input>; 70 bus-width = <24>; 71 }; 72 }; 73 }; 74 }; 75 }; 76 77 gpio@6000d000 { 78 init-mode-hog { 79 gpio-hog; 80 gpios = <TEGRA_GPIO(DD, 7) GPIO_ACTIVE_HIGH>, 81 <TEGRA_GPIO(CC, 6) GPIO_ACTIVE_HIGH>, 82 <TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>; 83 output-low; 84 }; 85 86 init-low-power-mode-hog { 87 gpio-hog; 88 gpios = <TEGRA_GPIO(I, 6) GPIO_ACTIVE_HIGH>; 89 input; 90 }; 91 }; 92 93 pinmux@70000868 { 94 pinctrl-names = "default"; 95 pinctrl-0 = <&state_default>; 96 97 state_default: pinmux { 98 clk_32k_out_pa0 { 99 nvidia,pins = "clk_32k_out_pa0"; 100 nvidia,function = "blink"; 101 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 102 nvidia,tristate = <TEGRA_PIN_DISABLE>; 103 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 104 }; 105 uart3_cts_n_pa1 { 106 nvidia,pins = "uart3_cts_n_pa1", 107 "uart3_rxd_pw7"; 108 nvidia,function = "uartc"; 109 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 110 nvidia,tristate = <TEGRA_PIN_DISABLE>; 111 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 112 }; 113 dap2_fs_pa2 { 114 nvidia,pins = "dap2_fs_pa2", 115 "dap2_sclk_pa3", 116 "dap2_din_pa4", 117 "dap2_dout_pa5"; 118 nvidia,function = "i2s1"; 119 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 120 nvidia,tristate = <TEGRA_PIN_DISABLE>; 121 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 122 }; 123 sdmmc3_clk_pa6 { 124 nvidia,pins = "sdmmc3_clk_pa6"; 125 nvidia,function = "sdmmc3"; 126 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 127 nvidia,tristate = <TEGRA_PIN_DISABLE>; 128 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 129 }; 130 sdmmc3_cmd_pa7 { 131 nvidia,pins = "sdmmc3_cmd_pa7", 132 "sdmmc3_dat3_pb4", 133 "sdmmc3_dat2_pb5", 134 "sdmmc3_dat1_pb6", 135 "sdmmc3_dat0_pb7", 136 "sdmmc3_dat4_pd1", 137 "sdmmc3_dat6_pd3", 138 "sdmmc3_dat7_pd4"; 139 nvidia,function = "sdmmc3"; 140 nvidia,pull = <TEGRA_PIN_PULL_UP>; 141 nvidia,tristate = <TEGRA_PIN_DISABLE>; 142 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 143 }; 144 gmi_a17_pb0 { 145 nvidia,pins = "gmi_a17_pb0", 146 "gmi_a18_pb1"; 147 nvidia,function = "uartd"; 148 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 149 nvidia,tristate = <TEGRA_PIN_DISABLE>; 150 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 151 }; 152 lcd_pwr0_pb2 { 153 nvidia,pins = "lcd_pwr0_pb2", 154 "lcd_pwr1_pc1", 155 "lcd_m1_pw1"; 156 nvidia,function = "displaya"; 157 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 158 nvidia,tristate = <TEGRA_PIN_DISABLE>; 159 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 160 }; 161 lcd_pclk_pb3 { 162 nvidia,pins = "lcd_pclk_pb3", 163 "lcd_d0_pe0", 164 "lcd_d1_pe1", 165 "lcd_d2_pe2", 166 "lcd_d3_pe3", 167 "lcd_d4_pe4", 168 "lcd_d5_pe5", 169 "lcd_d6_pe6", 170 "lcd_d7_pe7", 171 "lcd_d8_pf0", 172 "lcd_d9_pf1", 173 "lcd_d10_pf2", 174 "lcd_d11_pf3", 175 "lcd_d12_pf4", 176 "lcd_d13_pf5", 177 "lcd_d14_pf6", 178 "lcd_d15_pf7", 179 "lcd_de_pj1", 180 "lcd_hsync_pj3", 181 "lcd_vsync_pj4", 182 "lcd_d16_pm0", 183 "lcd_d17_pm1", 184 "lcd_d18_pm2", 185 "lcd_d19_pm3", 186 "lcd_d20_pm4", 187 "lcd_d21_pm5", 188 "lcd_d22_pm6", 189 "lcd_d23_pm7", 190 "lcd_cs0_n_pn4", 191 "lcd_sdout_pn5", 192 "lcd_dc0_pn6", 193 "lcd_cs1_n_pw0", 194 "lcd_sdin_pz2", 195 "lcd_sck_pz4"; 196 nvidia,function = "displaya"; 197 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 198 nvidia,tristate = <TEGRA_PIN_DISABLE>; 199 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 200 }; 201 uart3_rts_n_pc0 { 202 nvidia,pins = "uart3_rts_n_pc0", 203 "uart3_txd_pw6"; 204 nvidia,function = "uartc"; 205 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 206 nvidia,tristate = <TEGRA_PIN_DISABLE>; 207 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 208 }; 209 uart2_txd_pc2 { 210 nvidia,pins = "uart2_txd_pc2", 211 "uart2_rts_n_pj6"; 212 nvidia,function = "uartb"; 213 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 214 nvidia,tristate = <TEGRA_PIN_DISABLE>; 215 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 216 }; 217 uart2_rxd_pc3 { 218 nvidia,pins = "uart2_rxd_pc3", 219 "uart2_cts_n_pj5"; 220 nvidia,function = "uartb"; 221 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 222 nvidia,tristate = <TEGRA_PIN_DISABLE>; 223 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 224 }; 225 gen1_i2c_scl_pc4 { 226 nvidia,pins = "gen1_i2c_scl_pc4", 227 "gen1_i2c_sda_pc5"; 228 nvidia,function = "i2c1"; 229 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 230 nvidia,tristate = <TEGRA_PIN_DISABLE>; 231 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 232 nvidia,open-drain = <TEGRA_PIN_ENABLE>; 233 }; 234 gmi_wp_n_pc7 { 235 nvidia,pins = "gmi_wp_n_pc7", 236 "gmi_wait_pi7", 237 "gmi_cs4_n_pk2", 238 "gmi_cs3_n_pk4"; 239 nvidia,function = "rsvd1"; 240 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 241 nvidia,tristate = <TEGRA_PIN_ENABLE>; 242 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 243 }; 244 gmi_ad12_ph4 { 245 nvidia,pins = "gmi_ad12_ph4", 246 "gmi_cs0_n_pj0", 247 "gmi_cs1_n_pj2", 248 "gmi_cs2_n_pk3"; 249 nvidia,function = "rsvd1"; 250 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 251 nvidia,tristate = <TEGRA_PIN_ENABLE>; 252 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 253 }; 254 sdmmc3_dat5_pd0 { 255 nvidia,pins = "sdmmc3_dat5_pd0"; 256 nvidia,function = "sdmmc3"; 257 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 258 nvidia,tristate = <TEGRA_PIN_DISABLE>; 259 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 260 }; 261 gmi_ad0_pg0 { 262 nvidia,pins = "gmi_ad0_pg0", 263 "gmi_ad1_pg1", 264 "gmi_ad14_ph6", 265 "pu1"; 266 nvidia,function = "rsvd1"; 267 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 268 nvidia,tristate = <TEGRA_PIN_DISABLE>; 269 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 270 }; 271 gmi_ad2_pg2 { 272 nvidia,pins = "gmi_ad2_pg2", 273 "gmi_ad3_pg3", 274 "gmi_ad6_pg6", 275 "gmi_ad7_pg7"; 276 nvidia,function = "rsvd1"; 277 nvidia,pull = <TEGRA_PIN_PULL_DOWN>; 278 nvidia,tristate = <TEGRA_PIN_DISABLE>; 279 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 280 }; 281 gmi_ad4_pg4 { 282 nvidia,pins = "gmi_ad4_pg4", 283 "gmi_ad5_pg5"; 284 nvidia,function = "nand"; 285 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 286 nvidia,tristate = <TEGRA_PIN_DISABLE>; 287 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 288 }; 289 gmi_ad8_ph0 { 290 nvidia,pins = "gmi_ad8_ph0"; 291 nvidia,function = "pwm0"; 292 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 293 nvidia,tristate = <TEGRA_PIN_DISABLE>; 294 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 295 }; 296 gmi_ad9_ph1 { 297 nvidia,pins = "gmi_ad9_ph1"; 298 nvidia,function = "rsvd4"; 299 nvidia,pull = <TEGRA_PIN_PULL_DOWN>; 300 nvidia,tristate = <TEGRA_PIN_DISABLE>; 301 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 302 }; 303 gmi_ad10_ph2 { 304 nvidia,pins = "gmi_ad10_ph2"; 305 nvidia,function = "pwm2"; 306 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 307 nvidia,tristate = <TEGRA_PIN_ENABLE>; 308 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 309 }; 310 gmi_ad11_ph3 { 311 nvidia,pins = "gmi_ad11_ph3"; 312 nvidia,function = "pwm3"; 313 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 314 nvidia,tristate = <TEGRA_PIN_DISABLE>; 315 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 316 }; 317 gmi_ad13_ph5 { 318 nvidia,pins = "gmi_ad13_ph5", 319 "gmi_wr_n_pi0", 320 "gmi_oe_n_pi1", 321 "gmi_adv_n_pk0"; 322 nvidia,function = "rsvd1"; 323 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 324 nvidia,tristate = <TEGRA_PIN_ENABLE>; 325 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 326 }; 327 gmi_ad15_ph7 { 328 nvidia,pins = "gmi_ad15_ph7"; 329 nvidia,function = "rsvd1"; 330 nvidia,pull = <TEGRA_PIN_PULL_UP>; 331 nvidia,tristate = <TEGRA_PIN_DISABLE>; 332 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 333 }; 334 gmi_dqs_pi2 { 335 nvidia,pins = "gmi_dqs_pi2", 336 "pu2", 337 "pv1"; 338 nvidia,function = "rsvd1"; 339 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 340 nvidia,tristate = <TEGRA_PIN_DISABLE>; 341 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 342 }; 343 gmi_rst_n_pi4 { 344 nvidia,pins = "gmi_rst_n_pi4"; 345 nvidia,function = "nand"; 346 nvidia,pull = <TEGRA_PIN_PULL_UP>; 347 nvidia,tristate = <TEGRA_PIN_DISABLE>; 348 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 349 }; 350 gmi_iordy_pi5 { 351 nvidia,pins = "gmi_iordy_pi5"; 352 nvidia,function = "rsvd1"; 353 nvidia,pull = <TEGRA_PIN_PULL_UP>; 354 nvidia,tristate = <TEGRA_PIN_DISABLE>; 355 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 356 }; 357 gmi_cs7_n_pi6 { 358 nvidia,pins = "gmi_cs7_n_pi6", 359 "gmi_clk_pk1"; 360 nvidia,function = "nand"; 361 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 362 nvidia,tristate = <TEGRA_PIN_ENABLE>; 363 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 364 }; 365 gmi_a16_pj7 { 366 nvidia,pins = "gmi_a16_pj7", 367 "gmi_a19_pk7"; 368 nvidia,function = "uartd"; 369 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 370 nvidia,tristate = <TEGRA_PIN_DISABLE>; 371 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 372 }; 373 spdif_out_pk5 { 374 nvidia,pins = "spdif_out_pk5"; 375 nvidia,function = "spdif"; 376 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 377 nvidia,tristate = <TEGRA_PIN_DISABLE>; 378 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 379 }; 380 spdif_in_pk6 { 381 nvidia,pins = "spdif_in_pk6"; 382 nvidia,function = "spdif"; 383 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 384 nvidia,tristate = <TEGRA_PIN_DISABLE>; 385 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 386 }; 387 dap1_fs_pn0 { 388 nvidia,pins = "dap1_fs_pn0", 389 "dap1_din_pn1", 390 "dap1_dout_pn2", 391 "dap1_sclk_pn3"; 392 nvidia,function = "i2s0"; 393 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 394 nvidia,tristate = <TEGRA_PIN_DISABLE>; 395 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 396 }; 397 hdmi_int_pn7 { 398 nvidia,pins = "hdmi_int_pn7"; 399 nvidia,function = "hdmi"; 400 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 401 nvidia,tristate = <TEGRA_PIN_ENABLE>; 402 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 403 }; 404 ulpi_data7_po0 { 405 nvidia,pins = "ulpi_data7_po0"; 406 nvidia,function = "uarta"; 407 nvidia,pull = <TEGRA_PIN_PULL_UP>; 408 nvidia,tristate = <TEGRA_PIN_ENABLE>; 409 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 410 }; 411 ulpi_data3_po4 { 412 nvidia,pins = "ulpi_data3_po4"; 413 nvidia,function = "ulpi"; 414 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 415 nvidia,tristate = <TEGRA_PIN_DISABLE>; 416 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 417 }; 418 dap3_fs_pp0 { 419 nvidia,pins = "dap3_fs_pp0"; 420 nvidia,function = "i2s2"; 421 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 422 nvidia,tristate = <TEGRA_PIN_DISABLE>; 423 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 424 }; 425 dap4_fs_pp4 { 426 nvidia,pins = "dap4_fs_pp4", 427 "dap4_din_pp5", 428 "dap4_dout_pp6", 429 "dap4_sclk_pp7"; 430 nvidia,function = "i2s3"; 431 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 432 nvidia,tristate = <TEGRA_PIN_DISABLE>; 433 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 434 }; 435 kb_col0_pq0 { 436 nvidia,pins = "kb_col0_pq0", 437 "kb_col1_pq1", 438 "kb_row1_pr1"; 439 nvidia,function = "kbc"; 440 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 441 nvidia,tristate = <TEGRA_PIN_ENABLE>; 442 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 443 }; 444 kb_col2_pq2 { 445 nvidia,pins = "kb_col2_pq2", 446 "kb_col3_pq3"; 447 nvidia,function = "rsvd4"; 448 nvidia,pull = <TEGRA_PIN_PULL_UP>; 449 nvidia,tristate = <TEGRA_PIN_ENABLE>; 450 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 451 }; 452 kb_col4_pq4 { 453 nvidia,pins = "kb_col4_pq4", 454 "kb_col5_pq5", 455 "kb_col7_pq7", 456 "kb_row2_pr2", 457 "kb_row4_pr4", 458 "kb_row5_pr5", 459 "kb_row14_ps6"; 460 nvidia,function = "kbc"; 461 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 462 nvidia,tristate = <TEGRA_PIN_ENABLE>; 463 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 464 }; 465 kb_row0_pr0 { 466 nvidia,pins = "kb_row0_pr0"; 467 nvidia,function = "rsvd4"; 468 nvidia,pull = <TEGRA_PIN_PULL_UP>; 469 nvidia,tristate = <TEGRA_PIN_DISABLE>; 470 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 471 }; 472 kb_row6_pr6 { 473 nvidia,pins = "kb_row6_pr6", 474 "kb_row8_ps0", 475 "kb_row9_ps1", 476 "kb_row10_ps2"; 477 nvidia,function = "kbc"; 478 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 479 nvidia,tristate = <TEGRA_PIN_DISABLE>; 480 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 481 }; 482 kb_row11_ps3 { 483 nvidia,pins = "kb_row11_ps3", 484 "kb_row12_ps4"; 485 nvidia,function = "kbc"; 486 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 487 nvidia,tristate = <TEGRA_PIN_DISABLE>; 488 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 489 }; 490 gen2_i2c_scl_pt5 { 491 nvidia,pins = "gen2_i2c_scl_pt5", 492 "gen2_i2c_sda_pt6"; 493 nvidia,function = "i2c2"; 494 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 495 nvidia,tristate = <TEGRA_PIN_DISABLE>; 496 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 497 nvidia,open-drain = <TEGRA_PIN_ENABLE>; 498 }; 499 sdmmc4_cmd_pt7 { 500 nvidia,pins = "sdmmc4_cmd_pt7", 501 "sdmmc4_dat0_paa0", 502 "sdmmc4_dat1_paa1", 503 "sdmmc4_dat2_paa2", 504 "sdmmc4_dat3_paa3", 505 "sdmmc4_dat4_paa4", 506 "sdmmc4_dat5_paa5", 507 "sdmmc4_dat6_paa6", 508 "sdmmc4_dat7_paa7"; 509 nvidia,function = "sdmmc4"; 510 nvidia,pull = <TEGRA_PIN_PULL_UP>; 511 nvidia,tristate = <TEGRA_PIN_DISABLE>; 512 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 513 }; 514 pu0 { 515 nvidia,pins = "pu0", 516 "pu6"; 517 nvidia,function = "rsvd4"; 518 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 519 nvidia,tristate = <TEGRA_PIN_DISABLE>; 520 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 521 }; 522 jtag_rtck_pu7 { 523 nvidia,pins = "jtag_rtck_pu7"; 524 nvidia,function = "rtck"; 525 nvidia,pull = <TEGRA_PIN_PULL_UP>; 526 nvidia,tristate = <TEGRA_PIN_DISABLE>; 527 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 528 }; 529 pv0 { 530 nvidia,pins = "pv0"; 531 nvidia,function = "rsvd1"; 532 nvidia,pull = <TEGRA_PIN_PULL_UP>; 533 nvidia,tristate = <TEGRA_PIN_ENABLE>; 534 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 535 }; 536 ddc_scl_pv4 { 537 nvidia,pins = "ddc_scl_pv4", 538 "ddc_sda_pv5"; 539 nvidia,function = "i2c4"; 540 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 541 nvidia,tristate = <TEGRA_PIN_DISABLE>; 542 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 543 }; 544 crt_hsync_pv6 { 545 nvidia,pins = "crt_hsync_pv6", 546 "crt_vsync_pv7"; 547 nvidia,function = "crt"; 548 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 549 nvidia,tristate = <TEGRA_PIN_DISABLE>; 550 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 551 }; 552 spi2_cs1_n_pw2 { 553 nvidia,pins = "spi2_cs1_n_pw2", 554 "spi2_miso_px1", 555 "spi2_sck_px2"; 556 nvidia,function = "spi2"; 557 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 558 nvidia,tristate = <TEGRA_PIN_DISABLE>; 559 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 560 }; 561 clk1_out_pw4 { 562 nvidia,pins = "clk1_out_pw4"; 563 nvidia,function = "extperiph1"; 564 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 565 nvidia,tristate = <TEGRA_PIN_DISABLE>; 566 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 567 }; 568 clk2_out_pw5 { 569 nvidia,pins = "clk2_out_pw5"; 570 nvidia,function = "extperiph2"; 571 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 572 nvidia,tristate = <TEGRA_PIN_DISABLE>; 573 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 574 }; 575 spi2_cs0_n_px3 { 576 nvidia,pins = "spi2_cs0_n_px3"; 577 nvidia,function = "spi6"; 578 nvidia,pull = <TEGRA_PIN_PULL_UP>; 579 nvidia,tristate = <TEGRA_PIN_DISABLE>; 580 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 581 }; 582 spi1_mosi_px4 { 583 nvidia,pins = "spi1_mosi_px4", 584 "spi1_cs0_n_px6"; 585 nvidia,function = "spi1"; 586 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 587 nvidia,tristate = <TEGRA_PIN_DISABLE>; 588 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 589 }; 590 ulpi_clk_py0 { 591 nvidia,pins = "ulpi_clk_py0", 592 "ulpi_dir_py1"; 593 nvidia,function = "ulpi"; 594 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 595 nvidia,tristate = <TEGRA_PIN_ENABLE>; 596 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 597 }; 598 sdmmc1_dat3_py4 { 599 nvidia,pins = "sdmmc1_dat3_py4", 600 "sdmmc1_dat2_py5", 601 "sdmmc1_dat1_py6", 602 "sdmmc1_dat0_py7", 603 "sdmmc1_cmd_pz1"; 604 nvidia,function = "sdmmc1"; 605 nvidia,pull = <TEGRA_PIN_PULL_UP>; 606 nvidia,tristate = <TEGRA_PIN_DISABLE>; 607 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 608 }; 609 sdmmc1_clk_pz0 { 610 nvidia,pins = "sdmmc1_clk_pz0"; 611 nvidia,function = "sdmmc1"; 612 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 613 nvidia,tristate = <TEGRA_PIN_DISABLE>; 614 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 615 }; 616 lcd_wr_n_pz3 { 617 nvidia,pins = "lcd_wr_n_pz3"; 618 nvidia,function = "displaya"; 619 nvidia,pull = <TEGRA_PIN_PULL_UP>; 620 nvidia,tristate = <TEGRA_PIN_DISABLE>; 621 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 622 }; 623 sys_clk_req_pz5 { 624 nvidia,pins = "sys_clk_req_pz5"; 625 nvidia,function = "sysclk"; 626 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 627 nvidia,tristate = <TEGRA_PIN_DISABLE>; 628 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 629 }; 630 pwr_i2c_scl_pz6 { 631 nvidia,pins = "pwr_i2c_scl_pz6", 632 "pwr_i2c_sda_pz7"; 633 nvidia,function = "i2cpwr"; 634 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 635 nvidia,tristate = <TEGRA_PIN_DISABLE>; 636 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 637 nvidia,open-drain = <TEGRA_PIN_ENABLE>; 638 }; 639 pbb0 { 640 nvidia,pins = "pbb0", 641 "pcc1"; 642 nvidia,function = "rsvd2"; 643 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 644 nvidia,tristate = <TEGRA_PIN_DISABLE>; 645 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 646 }; 647 cam_i2c_scl_pbb1 { 648 nvidia,pins = "cam_i2c_scl_pbb1", 649 "cam_i2c_sda_pbb2"; 650 nvidia,function = "i2c3"; 651 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 652 nvidia,tristate = <TEGRA_PIN_DISABLE>; 653 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 654 nvidia,open-drain = <TEGRA_PIN_ENABLE>; 655 }; 656 pbb3 { 657 nvidia,pins = "pbb3"; 658 nvidia,function = "vgp3"; 659 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 660 nvidia,tristate = <TEGRA_PIN_DISABLE>; 661 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 662 }; 663 pbb4 { 664 nvidia,pins = "pbb4"; 665 nvidia,function = "vgp4"; 666 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 667 nvidia,tristate = <TEGRA_PIN_DISABLE>; 668 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 669 }; 670 pbb5 { 671 nvidia,pins = "pbb5"; 672 nvidia,function = "vgp5"; 673 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 674 nvidia,tristate = <TEGRA_PIN_DISABLE>; 675 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 676 }; 677 pbb6 { 678 nvidia,pins = "pbb6"; 679 nvidia,function = "vgp6"; 680 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 681 nvidia,tristate = <TEGRA_PIN_DISABLE>; 682 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 683 }; 684 pbb7 { 685 nvidia,pins = "pbb7", 686 "pcc2"; 687 nvidia,function = "i2s4"; 688 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 689 nvidia,tristate = <TEGRA_PIN_DISABLE>; 690 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 691 }; 692 cam_mclk_pcc0 { 693 nvidia,pins = "cam_mclk_pcc0"; 694 nvidia,function = "vi_alt3"; 695 nvidia,pull = <TEGRA_PIN_PULL_DOWN>; 696 nvidia,tristate = <TEGRA_PIN_DISABLE>; 697 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 698 }; 699 sdmmc4_rst_n_pcc3 { 700 nvidia,pins = "sdmmc4_rst_n_pcc3"; 701 nvidia,function = "rsvd2"; 702 nvidia,pull = <TEGRA_PIN_PULL_DOWN>; 703 nvidia,tristate = <TEGRA_PIN_DISABLE>; 704 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 705 }; 706 sdmmc4_clk_pcc4 { 707 nvidia,pins = "sdmmc4_clk_pcc4"; 708 nvidia,function = "sdmmc4"; 709 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 710 nvidia,tristate = <TEGRA_PIN_DISABLE>; 711 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 712 }; 713 clk2_req_pcc5 { 714 nvidia,pins = "clk2_req_pcc5"; 715 nvidia,function = "dap"; 716 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 717 nvidia,tristate = <TEGRA_PIN_DISABLE>; 718 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 719 }; 720 pex_l2_rst_n_pcc6 { 721 nvidia,pins = "pex_l2_rst_n_pcc6", 722 "pex_l2_clkreq_n_pcc7"; 723 nvidia,function = "pcie"; 724 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 725 nvidia,tristate = <TEGRA_PIN_DISABLE>; 726 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 727 }; 728 pex_wake_n_pdd3 { 729 nvidia,pins = "pex_wake_n_pdd3", 730 "pex_l2_prsnt_n_pdd7"; 731 nvidia,function = "pcie"; 732 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 733 nvidia,tristate = <TEGRA_PIN_DISABLE>; 734 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 735 }; 736 clk3_out_pee0 { 737 nvidia,pins = "clk3_out_pee0"; 738 nvidia,function = "extperiph3"; 739 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 740 nvidia,tristate = <TEGRA_PIN_DISABLE>; 741 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 742 }; 743 clk1_req_pee2 { 744 nvidia,pins = "clk1_req_pee2"; 745 nvidia,function = "dap"; 746 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 747 nvidia,tristate = <TEGRA_PIN_ENABLE>; 748 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 749 }; 750 hdmi_cec_pee3 { 751 nvidia,pins = "hdmi_cec_pee3"; 752 nvidia,function = "cec"; 753 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 754 nvidia,tristate = <TEGRA_PIN_DISABLE>; 755 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 756 nvidia,open-drain = <TEGRA_PIN_DISABLE>; 757 }; 758 owr { 759 nvidia,pins = "owr"; 760 nvidia,function = "owr"; 761 nvidia,pull = <TEGRA_PIN_PULL_NONE>; 762 nvidia,tristate = <TEGRA_PIN_DISABLE>; 763 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 764 }; 765 drive_dap1 { 766 nvidia,pins = "drive_dap1", 767 "drive_dap2", 768 "drive_dbg", 769 "drive_at5", 770 "drive_gme", 771 "drive_ddc", 772 "drive_ao1", 773 "drive_uart3"; 774 nvidia,high-speed-mode = <0>; 775 nvidia,schmitt = <TEGRA_PIN_ENABLE>; 776 nvidia,low-power-mode = <TEGRA_PIN_LP_DRIVE_DIV_1>; 777 nvidia,pull-down-strength = <31>; 778 nvidia,pull-up-strength = <31>; 779 nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; 780 nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; 781 }; 782 drive_sdio1 { 783 nvidia,pins = "drive_sdio1", 784 "drive_sdio3"; 785 nvidia,high-speed-mode = <0>; 786 nvidia,schmitt = <TEGRA_PIN_DISABLE>; 787 nvidia,pull-down-strength = <46>; 788 nvidia,pull-up-strength = <42>; 789 nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FAST>; 790 nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FAST>; 791 }; 792 drive_gma { 793 nvidia,pins = "drive_gma", 794 "drive_gmb", 795 "drive_gmc", 796 "drive_gmd"; 797 nvidia,pull-down-strength = <9>; 798 nvidia,pull-up-strength = <9>; 799 nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_SLOWEST>; 800 nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_SLOWEST>; 801 }; 802 }; 803 }; 804 805 uartb: serial@70006040 { 806 compatible = "nvidia,tegra30-hsuart"; 807 /* GPS BCM4751 */ 808 }; 809 810 uartc: serial@70006200 { 811 compatible = "nvidia,tegra30-hsuart"; 812 status = "okay"; 813 814 nvidia,adjust-baud-rates = <0 9600 100>, 815 <9600 115200 200>, 816 <1000000 4000000 136>; 817 818 /* Azurewave AW-NH665 BCM4330B1 */ 819 bluetooth { 820 compatible = "brcm,bcm4330-bt"; 821 822 max-speed = <4000000>; 823 824 clocks = <&tegra_pmc TEGRA_PMC_CLK_BLINK>; 825 clock-names = "txco"; 826 827 vbat-supply = <&vdd_3v3_sys>; 828 vddio-supply = <&vdd_1v8>; 829 830 device-wakeup-gpios = <&gpio TEGRA_GPIO(U, 1) GPIO_ACTIVE_HIGH>; 831 host-wakeup-gpios = <&gpio TEGRA_GPIO(U, 6) GPIO_ACTIVE_HIGH>; 832 shutdown-gpios = <&gpio TEGRA_GPIO(U, 0) GPIO_ACTIVE_HIGH>; 833 }; 834 }; 835 836 pwm: pwm@7000a000 { 837 status = "okay"; 838 }; 839 840 i2c@7000c400 { 841 clock-frequency = <400000>; 842 status = "okay"; 843 844 touchscreen@10 { 845 compatible ="elan,ektf3624"; 846 reg = <0x10>; 847 848 interrupt-parent = <&gpio>; 849 interrupts = <TEGRA_GPIO(H, 4) IRQ_TYPE_LEVEL_LOW>; 850 851 reset-gpios = <&gpio TEGRA_GPIO(H, 6) GPIO_ACTIVE_LOW>; 852 853 vcc33-supply = <&vcc_3v3_ts>; 854 vccio-supply = <&vcc_3v3_ts>; 855 856 touchscreen-size-x = <2112>; 857 touchscreen-size-y = <1280>; 858 touchscreen-swapped-x-y; 859 touchscreen-inverted-x; 860 }; 861 }; 862 863 i2c@7000c500 { 864 clock-frequency = <100000>; 865 status = "okay"; 866 867 compass@e { 868 compatible = "asahi-kasei,ak8974"; 869 reg = <0x0e>; 870 871 interrupt-parent = <&gpio>; 872 interrupts = <TEGRA_GPIO(W, 0) IRQ_TYPE_EDGE_RISING>; 873 874 avdd-supply = <&vdd_3v3_sys>; 875 dvdd-supply = <&vdd_1v8>; 876 877 mount-matrix = "0", "-1", "0", 878 "-1", "0", "0", 879 "0", "0", "-1"; 880 }; 881 882 light-sensor@1c { 883 compatible = "dynaimage,al3010"; 884 reg = <0x1c>; 885 886 interrupt-parent = <&gpio>; 887 interrupts = <TEGRA_GPIO(Z, 2) IRQ_TYPE_LEVEL_HIGH>; 888 889 vdd-supply = <&vdd_3v3_sys>; 890 }; 891 892 accelerometer@68 { 893 compatible = "invensense,mpu6050"; 894 reg = <0x68>; 895 896 interrupt-parent = <&gpio>; 897 interrupts = <TEGRA_GPIO(X, 1) IRQ_TYPE_EDGE_RISING>; 898 899 vdd-supply = <&vdd_3v3_sys>; 900 vddio-supply = <&vdd_1v8>; 901 902 mount-matrix = "0", "-1", "0", 903 "-1", "0", "0", 904 "0", "0", "-1"; 905 }; 906 }; 907 908 i2c@7000d000 { 909 clock-frequency = <100000>; 910 status = "okay"; 911 912 rt5640: audio-codec@1c { 913 compatible = "realtek,rt5640"; 914 reg = <0x1c>; 915 916 realtek,dmic1-data-pin = <1>; 917 }; 918 919 nct72: temperature-sensor@4c { 920 compatible = "onnn,nct1008"; 921 reg = <0x4c>; 922 vcc-supply = <&vdd_3v3_sys>; 923 924 interrupt-parent = <&gpio>; 925 interrupts = <TEGRA_GPIO(S, 3) IRQ_TYPE_EDGE_FALLING>; 926 927 #thermal-sensor-cells = <1>; 928 }; 929 930 fuel-gauge@55 { 931 compatible = "ti,bq27541"; 932 reg = <0x55>; 933 power-supplies = <&power_supply>; 934 }; 935 936 power_supply: charger@6a { 937 compatible = "summit,smb347"; 938 reg = <0x6a>; 939 940 interrupt-parent = <&gpio>; 941 interrupts = <TEGRA_GPIO(V, 1) IRQ_TYPE_EDGE_BOTH>; 942 943 summit,enable-charge-control = <SMB3XX_CHG_ENABLE_PIN_ACTIVE_LOW>; 944 summit,enable-usb-charging; 945 946 monitored-battery = <&battery_cell>; 947 }; 948 }; 949 950 pmc@7000e400 { 951 status = "okay"; 952 nvidia,invert-interrupt; 953 nvidia,suspend-mode = <1>; 954 nvidia,cpu-pwr-good-time = <2000>; 955 nvidia,cpu-pwr-off-time = <200>; 956 nvidia,core-pwr-good-time = <3845 3845>; 957 nvidia,core-pwr-off-time = <0>; 958 nvidia,core-power-req-active-high; 959 nvidia,sys-clock-req-active-high; 960 }; 961 962 ahub@70080000 { 963 i2s@70080400 { 964 status = "okay"; 965 }; 966 }; 967 968 brcm_wifi_pwrseq: wifi-pwrseq { 969 compatible = "mmc-pwrseq-simple"; 970 971 clocks = <&tegra_pmc TEGRA_PMC_CLK_BLINK>; 972 clock-names = "ext_clock"; 973 974 reset-gpios = <&gpio TEGRA_GPIO(D, 4) GPIO_ACTIVE_LOW>; 975 post-power-on-delay-ms = <300>; 976 power-off-delay-us = <300>; 977 }; 978 979 sdmmc3: mmc@78000400 { 980 status = "okay"; 981 982 #address-cells = <1>; 983 #size-cells = <0>; 984 985 assigned-clocks = <&tegra_car TEGRA30_CLK_SDMMC3>; 986 assigned-clock-parents = <&tegra_car TEGRA30_CLK_PLL_C>; 987 assigned-clock-rates = <50000000>; 988 989 max-frequency = <50000000>; 990 keep-power-in-suspend; 991 bus-width = <4>; 992 non-removable; 993 994 mmc-pwrseq = <&brcm_wifi_pwrseq>; 995 vmmc-supply = <&vdd_3v3_sys>; 996 vqmmc-supply = <&vdd_1v8>; 997 998 /* Azurewave AW-NH665 BCM4330 */ 999 wifi@1 { 1000 reg = <1>; 1001 compatible = "brcm,bcm4329-fmac"; 1002 interrupt-parent = <&gpio>; 1003 interrupts = <TEGRA_GPIO(O, 4) IRQ_TYPE_LEVEL_HIGH>; 1004 interrupt-names = "host-wake"; 1005 }; 1006 }; 1007 1008 sdmmc4: mmc@78000600 { 1009 status = "okay"; 1010 bus-width = <8>; 1011 vmmc-supply = <&vcore_emmc>; 1012 vqmmc-supply = <&vdd_1v8>; 1013 non-removable; 1014 }; 1015 1016 usb@7d000000 { 1017 compatible = "nvidia,tegra30-udc"; 1018 status = "okay"; 1019 dr_mode = "peripheral"; 1020 }; 1021 1022 usb-phy@7d000000 { 1023 status = "okay"; 1024 dr_mode = "peripheral"; 1025 nvidia,hssync-start-delay = <0>; 1026 nvidia,xcvr-lsfslew = <2>; 1027 nvidia,xcvr-lsrslew = <2>; 1028 }; 1029 1030 backlight: backlight { 1031 compatible = "pwm-backlight"; 1032 1033 power-supply = <&vdd_5v0_sys>; 1034 pwms = <&pwm 0 50000>; 1035 1036 brightness-levels = <1 255>; 1037 num-interpolated-steps = <254>; 1038 default-brightness-level = <15>; 1039 }; 1040 1041 battery_cell: battery-cell { 1042 compatible = "simple-battery"; 1043 constant-charge-current-max-microamp = <1800000>; 1044 operating-range-celsius = <0 45>; 1045 }; 1046 1047 /* PMIC has a built-in 32KHz oscillator which is used by PMC */ 1048 clk32k_in: clock@0 { 1049 compatible = "fixed-clock"; 1050 #clock-cells = <0>; 1051 clock-frequency = <32768>; 1052 clock-output-names = "pmic-oscillator"; 1053 }; 1054 1055 cpus { 1056 cpu0: cpu@0 { 1057 cpu-supply = <&vdd_cpu>; 1058 operating-points-v2 = <&cpu0_opp_table>; 1059 #cooling-cells = <2>; 1060 }; 1061 1062 cpu1: cpu@1 { 1063 cpu-supply = <&vdd_cpu>; 1064 operating-points-v2 = <&cpu0_opp_table>; 1065 #cooling-cells = <2>; 1066 }; 1067 1068 cpu2: cpu@2 { 1069 cpu-supply = <&vdd_cpu>; 1070 operating-points-v2 = <&cpu0_opp_table>; 1071 #cooling-cells = <2>; 1072 }; 1073 1074 cpu3: cpu@3 { 1075 cpu-supply = <&vdd_cpu>; 1076 operating-points-v2 = <&cpu0_opp_table>; 1077 #cooling-cells = <2>; 1078 }; 1079 }; 1080 1081 display-panel { 1082 /* 1083 * Nexus 7 supports two compatible panel models: 1084 * 1085 * 1. hydis,hv070wx2-1e0 1086 * 2. chunghwa,claa070wp03xg 1087 * 1088 * We want to use timing which is optimized for Nexus 7, 1089 * hence we need to customize the timing. 1090 */ 1091 compatible = "panel-lvds"; 1092 1093 power-supply = <&vdd_pnl>; 1094 backlight = <&backlight>; 1095 1096 width-mm = <94>; 1097 height-mm = <150>; 1098 rotation = <180>; 1099 1100 data-mapping = "jeida-24"; 1101 1102 port { 1103 panel_input: endpoint { 1104 remote-endpoint = <&lvds_encoder_output>; 1105 }; 1106 }; 1107 }; 1108 1109 firmware { 1110 trusted-foundations { 1111 compatible = "tlm,trusted-foundations"; 1112 tlm,version-major = <0x0>; 1113 tlm,version-minor = <0x0>; 1114 }; 1115 }; 1116 1117 gpio-keys { 1118 compatible = "gpio-keys"; 1119 1120 hall-sensor { 1121 label = "Lid"; 1122 gpios = <&gpio TEGRA_GPIO(S, 6) GPIO_ACTIVE_LOW>; 1123 linux,input-type = <EV_SW>; 1124 linux,code = <SW_LID>; 1125 debounce-interval = <500>; 1126 wakeup-event-action = <EV_ACT_DEASSERTED>; 1127 wakeup-source; 1128 }; 1129 1130 power { 1131 label = "Power"; 1132 gpios = <&gpio TEGRA_GPIO(V, 0) GPIO_ACTIVE_LOW>; 1133 linux,code = <KEY_POWER>; 1134 debounce-interval = <10>; 1135 wakeup-event-action = <EV_ACT_ASSERTED>; 1136 wakeup-source; 1137 }; 1138 1139 volume-up { 1140 label = "Volume Up"; 1141 gpios = <&gpio TEGRA_GPIO(Q, 2) GPIO_ACTIVE_LOW>; 1142 linux,code = <KEY_VOLUMEUP>; 1143 debounce-interval = <10>; 1144 wakeup-event-action = <EV_ACT_ASSERTED>; 1145 wakeup-source; 1146 }; 1147 1148 volume-down { 1149 label = "Volume Down"; 1150 gpios = <&gpio TEGRA_GPIO(Q, 3) GPIO_ACTIVE_LOW>; 1151 linux,code = <KEY_VOLUMEDOWN>; 1152 debounce-interval = <10>; 1153 wakeup-event-action = <EV_ACT_ASSERTED>; 1154 wakeup-source; 1155 }; 1156 }; 1157 1158 lvds-encoder { 1159 compatible = "ti,sn75lvds83", "lvds-encoder"; 1160 1161 powerdown-gpios = <&gpio TEGRA_GPIO(N, 6) GPIO_ACTIVE_LOW>; 1162 power-supply = <&vdd_3v3_sys>; 1163 1164 ports { 1165 #address-cells = <1>; 1166 #size-cells = <0>; 1167 1168 port@0 { 1169 reg = <0>; 1170 1171 lvds_encoder_input: endpoint { 1172 remote-endpoint = <&lcd_output>; 1173 }; 1174 }; 1175 1176 port@1 { 1177 reg = <1>; 1178 1179 lvds_encoder_output: endpoint { 1180 remote-endpoint = <&panel_input>; 1181 }; 1182 }; 1183 }; 1184 }; 1185 1186 vdd_5v0_sys: regulator@0 { 1187 compatible = "regulator-fixed"; 1188 regulator-name = "vdd_5v0"; 1189 regulator-min-microvolt = <5000000>; 1190 regulator-max-microvolt = <5000000>; 1191 regulator-always-on; 1192 regulator-boot-on; 1193 }; 1194 1195 vdd_3v3_sys: regulator@1 { 1196 compatible = "regulator-fixed"; 1197 regulator-name = "vdd_3v3"; 1198 regulator-min-microvolt = <3300000>; 1199 regulator-max-microvolt = <3300000>; 1200 regulator-always-on; 1201 regulator-boot-on; 1202 vin-supply = <&vdd_5v0_sys>; 1203 }; 1204 1205 vdd_pnl: regulator@2 { 1206 compatible = "regulator-fixed"; 1207 regulator-name = "vdd_panel"; 1208 regulator-min-microvolt = <3300000>; 1209 regulator-max-microvolt = <3300000>; 1210 regulator-enable-ramp-delay = <300000>; 1211 gpio = <&gpio TEGRA_GPIO(W, 1) GPIO_ACTIVE_HIGH>; 1212 enable-active-high; 1213 vin-supply = <&vdd_3v3_sys>; 1214 }; 1215 1216 vcc_3v3_ts: regulator@3 { 1217 compatible = "regulator-fixed"; 1218 regulator-name = "ldo_s-1167_3v3"; 1219 regulator-min-microvolt = <3300000>; 1220 regulator-max-microvolt = <3300000>; 1221 regulator-always-on; 1222 regulator-boot-on; 1223 vin-supply = <&vdd_5v0_sys>; 1224 }; 1225 1226 sound { 1227 compatible = "nvidia,tegra-audio-rt5640-grouper", 1228 "nvidia,tegra-audio-rt5640"; 1229 nvidia,model = "ASUS Google Nexus 7 ALC5642"; 1230 1231 nvidia,audio-routing = 1232 "Headphones", "HPOR", 1233 "Headphones", "HPOL", 1234 "Speakers", "SPORP", 1235 "Speakers", "SPORN", 1236 "Speakers", "SPOLP", 1237 "Speakers", "SPOLN", 1238 "DMIC1", "Mic Jack"; 1239 1240 nvidia,i2s-controller = <&tegra_i2s1>; 1241 nvidia,audio-codec = <&rt5640>; 1242 1243 nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(W, 2) GPIO_ACTIVE_LOW>; 1244 1245 clocks = <&tegra_car TEGRA30_CLK_PLL_A>, 1246 <&tegra_car TEGRA30_CLK_PLL_A_OUT0>, 1247 <&tegra_pmc TEGRA_PMC_CLK_OUT_1>; 1248 clock-names = "pll_a", "pll_a_out0", "mclk"; 1249 1250 assigned-clocks = <&tegra_car TEGRA30_CLK_EXTERN1>, 1251 <&tegra_pmc TEGRA_PMC_CLK_OUT_1>; 1252 1253 assigned-clock-parents = <&tegra_car TEGRA30_CLK_PLL_A_OUT0>, 1254 <&tegra_car TEGRA30_CLK_EXTERN1>; 1255 }; 1256 1257 thermal-zones { 1258 /* 1259 * NCT72 has two sensors: 1260 * 1261 * 0: internal that monitors ambient/skin temperature 1262 * 1: external that is connected to the CPU's diode 1263 * 1264 * Ideally we should use userspace thermal governor, 1265 * but it's a much more complex solution. The "skin" 1266 * zone is a simpler solution which prevents Nexus 7 1267 * from getting too hot from a user's tactile perspective. 1268 * The CPU zone is intended to protect silicon from damage. 1269 */ 1270 1271 skin-thermal { 1272 polling-delay-passive = <1000>; /* milliseconds */ 1273 polling-delay = <5000>; /* milliseconds */ 1274 1275 thermal-sensors = <&nct72 0>; 1276 1277 trips { 1278 trip0: skin-alert { 1279 /* throttle at 57C until temperature drops to 56.8C */ 1280 temperature = <57000>; 1281 hysteresis = <200>; 1282 type = "passive"; 1283 }; 1284 1285 trip1: skin-crit { 1286 /* shut down at 65C */ 1287 temperature = <65000>; 1288 hysteresis = <2000>; 1289 type = "critical"; 1290 }; 1291 }; 1292 1293 cooling-maps { 1294 map0 { 1295 trip = <&trip0>; 1296 cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1297 <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1298 <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1299 <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1300 <&actmon THERMAL_NO_LIMIT 1301 THERMAL_NO_LIMIT>; 1302 }; 1303 }; 1304 }; 1305 1306 cpu-thermal { 1307 polling-delay-passive = <1000>; /* milliseconds */ 1308 polling-delay = <5000>; /* milliseconds */ 1309 1310 thermal-sensors = <&nct72 1>; 1311 1312 trips { 1313 trip2: cpu-alert { 1314 /* throttle at 85C until temperature drops to 84.8C */ 1315 temperature = <85000>; 1316 hysteresis = <200>; 1317 type = "passive"; 1318 }; 1319 1320 trip3: cpu-crit { 1321 /* shut down at 90C */ 1322 temperature = <90000>; 1323 hysteresis = <2000>; 1324 type = "critical"; 1325 }; 1326 }; 1327 1328 cooling-maps { 1329 map1 { 1330 trip = <&trip2>; 1331 cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1332 <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1333 <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1334 <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1335 <&actmon THERMAL_NO_LIMIT 1336 THERMAL_NO_LIMIT>; 1337 }; 1338 }; 1339 }; 1340 }; 1341}; 1342