1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0 2724ba675SRob Herring#include <dt-bindings/input/input.h> 3724ba675SRob Herring#include <dt-bindings/thermal/thermal.h> 4724ba675SRob Herring#include "tegra30.dtsi" 5724ba675SRob Herring#include "tegra30-cpu-opp.dtsi" 6724ba675SRob Herring#include "tegra30-cpu-opp-microvolt.dtsi" 7724ba675SRob Herring 8724ba675SRob Herring/** 9724ba675SRob Herring * This file contains common DT entry for all fab version of Cardhu. 10724ba675SRob Herring * There is multiple fab version of Cardhu starting from A01 to A07. 11724ba675SRob Herring * Cardhu fab version A01 and A03 are not supported. Cardhu fab version 12724ba675SRob Herring * A02 will have different sets of GPIOs for fixed regulator compare to 13724ba675SRob Herring * Cardhu fab version A04. The Cardhu fab version A05, A06, A07 are 14724ba675SRob Herring * compatible with fab version A04. Based on Cardhu fab version, the 15724ba675SRob Herring * related dts file need to be chosen like for Cardhu fab version A02, 16724ba675SRob Herring * use tegra30-cardhu-a02.dts, Cardhu fab version A04 and later, use 17724ba675SRob Herring * tegra30-cardhu-a04.dts. 18724ba675SRob Herring * The identification of board is done in two ways, by looking the sticker 19724ba675SRob Herring * on PCB and by reading board id eeprom. 20724ba675SRob Herring * The sticker will have number like 600-81291-1000-002 C.3. In this 4th 21724ba675SRob Herring * number is the fab version like here it is 002 and hence fab version A02. 22724ba675SRob Herring * The (downstream internal) U-Boot of Cardhu display the board-id as 23724ba675SRob Herring * follows: 24724ba675SRob Herring * BoardID: 0C5B, SKU: 0A01, Fab: 02, Rev: 45.00 25724ba675SRob Herring * In this Fab version is 02 i.e. A02. 26724ba675SRob Herring * The BoardID I2C eeprom is interfaced through i2c5 (pwr_i2c address 0x56). 27724ba675SRob Herring * The location 0x8 of this eeprom contains the Fab version. It is 1 byte 28724ba675SRob Herring * wide. 29724ba675SRob Herring */ 30724ba675SRob Herring 31724ba675SRob Herring/ { 32724ba675SRob Herring model = "NVIDIA Tegra30 Cardhu evaluation board"; 33724ba675SRob Herring compatible = "nvidia,cardhu", "nvidia,tegra30"; 34724ba675SRob Herring 35724ba675SRob Herring aliases { 36724ba675SRob Herring rtc0 = "/i2c@7000d000/tps65911@2d"; 37724ba675SRob Herring rtc1 = "/rtc@7000e000"; 38724ba675SRob Herring serial0 = &uarta; 39724ba675SRob Herring serial1 = &uartc; 40724ba675SRob Herring }; 41724ba675SRob Herring 42724ba675SRob Herring chosen { 43724ba675SRob Herring stdout-path = "serial0:115200n8"; 44724ba675SRob Herring }; 45724ba675SRob Herring 46724ba675SRob Herring memory@80000000 { 47724ba675SRob Herring reg = <0x80000000 0x40000000>; 48724ba675SRob Herring }; 49724ba675SRob Herring 50724ba675SRob Herring pcie@3000 { 51724ba675SRob Herring status = "okay"; 52724ba675SRob Herring 53724ba675SRob Herring /* AVDD_PEXA and VDD_PEXA inputs are grounded on Cardhu. */ 54724ba675SRob Herring avdd-pexb-supply = <&ldo1_reg>; 55724ba675SRob Herring vdd-pexb-supply = <&ldo1_reg>; 56724ba675SRob Herring avdd-pex-pll-supply = <&ldo1_reg>; 57724ba675SRob Herring hvdd-pex-supply = <&pex_hvdd_3v3_reg>; 58724ba675SRob Herring vddio-pex-ctl-supply = <&sys_3v3_reg>; 59724ba675SRob Herring avdd-plle-supply = <&ldo2_reg>; 60724ba675SRob Herring 61724ba675SRob Herring pci@1,0 { 62724ba675SRob Herring nvidia,num-lanes = <4>; 63724ba675SRob Herring }; 64724ba675SRob Herring 65724ba675SRob Herring pci@2,0 { 66724ba675SRob Herring nvidia,num-lanes = <1>; 67724ba675SRob Herring }; 68724ba675SRob Herring 69724ba675SRob Herring pci@3,0 { 70724ba675SRob Herring status = "okay"; 71724ba675SRob Herring nvidia,num-lanes = <1>; 72724ba675SRob Herring }; 73724ba675SRob Herring }; 74724ba675SRob Herring 75724ba675SRob Herring host1x@50000000 { 76724ba675SRob Herring dc@54200000 { 77724ba675SRob Herring rgb { 78724ba675SRob Herring status = "okay"; 79724ba675SRob Herring 80724ba675SRob Herring nvidia,panel = <&panel>; 81724ba675SRob Herring }; 82724ba675SRob Herring }; 83724ba675SRob Herring }; 84724ba675SRob Herring 85724ba675SRob Herring pinmux@70000868 { 86724ba675SRob Herring pinctrl-names = "default"; 87724ba675SRob Herring pinctrl-0 = <&state_default>; 88724ba675SRob Herring 89724ba675SRob Herring state_default: pinmux { 90724ba675SRob Herring sdmmc1_clk_pz0 { 91724ba675SRob Herring nvidia,pins = "sdmmc1_clk_pz0"; 92724ba675SRob Herring nvidia,function = "sdmmc1"; 93724ba675SRob Herring nvidia,pull = <TEGRA_PIN_PULL_NONE>; 94724ba675SRob Herring nvidia,tristate = <TEGRA_PIN_DISABLE>; 95724ba675SRob Herring }; 96724ba675SRob Herring sdmmc1_cmd_pz1 { 97724ba675SRob Herring nvidia,pins = "sdmmc1_cmd_pz1", 98724ba675SRob Herring "sdmmc1_dat0_py7", 99724ba675SRob Herring "sdmmc1_dat1_py6", 100724ba675SRob Herring "sdmmc1_dat2_py5", 101724ba675SRob Herring "sdmmc1_dat3_py4"; 102724ba675SRob Herring nvidia,function = "sdmmc1"; 103724ba675SRob Herring nvidia,pull = <TEGRA_PIN_PULL_UP>; 104724ba675SRob Herring nvidia,tristate = <TEGRA_PIN_DISABLE>; 105724ba675SRob Herring }; 106724ba675SRob Herring sdmmc3_clk_pa6 { 107724ba675SRob Herring nvidia,pins = "sdmmc3_clk_pa6"; 108724ba675SRob Herring nvidia,function = "sdmmc3"; 109724ba675SRob Herring nvidia,pull = <TEGRA_PIN_PULL_NONE>; 110724ba675SRob Herring nvidia,tristate = <TEGRA_PIN_DISABLE>; 111724ba675SRob Herring }; 112724ba675SRob Herring sdmmc3_cmd_pa7 { 113724ba675SRob Herring nvidia,pins = "sdmmc3_cmd_pa7", 114724ba675SRob Herring "sdmmc3_dat0_pb7", 115724ba675SRob Herring "sdmmc3_dat1_pb6", 116724ba675SRob Herring "sdmmc3_dat2_pb5", 117724ba675SRob Herring "sdmmc3_dat3_pb4"; 118724ba675SRob Herring nvidia,function = "sdmmc3"; 119724ba675SRob Herring nvidia,pull = <TEGRA_PIN_PULL_UP>; 120724ba675SRob Herring nvidia,tristate = <TEGRA_PIN_DISABLE>; 121724ba675SRob Herring }; 122724ba675SRob Herring sdmmc4_clk_pcc4 { 123724ba675SRob Herring nvidia,pins = "sdmmc4_clk_pcc4", 124724ba675SRob Herring "sdmmc4_rst_n_pcc3"; 125724ba675SRob Herring nvidia,function = "sdmmc4"; 126724ba675SRob Herring nvidia,pull = <TEGRA_PIN_PULL_NONE>; 127724ba675SRob Herring nvidia,tristate = <TEGRA_PIN_DISABLE>; 128724ba675SRob Herring }; 129724ba675SRob Herring sdmmc4_dat0_paa0 { 130724ba675SRob Herring nvidia,pins = "sdmmc4_dat0_paa0", 131724ba675SRob Herring "sdmmc4_dat1_paa1", 132724ba675SRob Herring "sdmmc4_dat2_paa2", 133724ba675SRob Herring "sdmmc4_dat3_paa3", 134724ba675SRob Herring "sdmmc4_dat4_paa4", 135724ba675SRob Herring "sdmmc4_dat5_paa5", 136724ba675SRob Herring "sdmmc4_dat6_paa6", 137724ba675SRob Herring "sdmmc4_dat7_paa7"; 138724ba675SRob Herring nvidia,function = "sdmmc4"; 139724ba675SRob Herring nvidia,pull = <TEGRA_PIN_PULL_UP>; 140724ba675SRob Herring nvidia,tristate = <TEGRA_PIN_DISABLE>; 141724ba675SRob Herring }; 142724ba675SRob Herring dap2_fs_pa2 { 143724ba675SRob Herring nvidia,pins = "dap2_fs_pa2", 144724ba675SRob Herring "dap2_sclk_pa3", 145724ba675SRob Herring "dap2_din_pa4", 146724ba675SRob Herring "dap2_dout_pa5"; 147724ba675SRob Herring nvidia,function = "i2s1"; 148724ba675SRob Herring nvidia,pull = <TEGRA_PIN_PULL_NONE>; 149724ba675SRob Herring nvidia,tristate = <TEGRA_PIN_DISABLE>; 150724ba675SRob Herring }; 151724ba675SRob Herring sdio3 { 152724ba675SRob Herring nvidia,pins = "drive_sdio3"; 153724ba675SRob Herring nvidia,high-speed-mode = <TEGRA_PIN_DISABLE>; 154724ba675SRob Herring nvidia,schmitt = <TEGRA_PIN_DISABLE>; 155724ba675SRob Herring nvidia,pull-down-strength = <46>; 156724ba675SRob Herring nvidia,pull-up-strength = <42>; 157724ba675SRob Herring nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FAST>; 158724ba675SRob Herring nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FAST>; 159724ba675SRob Herring }; 160724ba675SRob Herring uart3_txd_pw6 { 161724ba675SRob Herring nvidia,pins = "uart3_txd_pw6", 162724ba675SRob Herring "uart3_cts_n_pa1", 163724ba675SRob Herring "uart3_rts_n_pc0", 164724ba675SRob Herring "uart3_rxd_pw7"; 165724ba675SRob Herring nvidia,function = "uartc"; 166724ba675SRob Herring nvidia,pull = <TEGRA_PIN_PULL_NONE>; 167724ba675SRob Herring nvidia,tristate = <TEGRA_PIN_DISABLE>; 168724ba675SRob Herring }; 169724ba675SRob Herring }; 170724ba675SRob Herring }; 171724ba675SRob Herring 172724ba675SRob Herring serial@70006000 { 1739766116aSThierry Reding /delete-property/ dmas; 1749766116aSThierry Reding /delete-property/ dma-names; 175724ba675SRob Herring status = "okay"; 176724ba675SRob Herring }; 177724ba675SRob Herring 178724ba675SRob Herring serial@70006200 { 179724ba675SRob Herring compatible = "nvidia,tegra30-hsuart"; 180*500b861dSThierry Reding reset-names = "serial"; 181724ba675SRob Herring /delete-property/ reg-shift; 182724ba675SRob Herring status = "okay"; 183724ba675SRob Herring }; 184724ba675SRob Herring 185724ba675SRob Herring pwm@7000a000 { 186724ba675SRob Herring status = "okay"; 187724ba675SRob Herring }; 188724ba675SRob Herring 189724ba675SRob Herring panelddc: i2c@7000c000 { 190724ba675SRob Herring status = "okay"; 191724ba675SRob Herring clock-frequency = <100000>; 192724ba675SRob Herring }; 193724ba675SRob Herring 194724ba675SRob Herring i2c@7000c400 { 195724ba675SRob Herring status = "okay"; 196724ba675SRob Herring clock-frequency = <100000>; 197724ba675SRob Herring }; 198724ba675SRob Herring 199724ba675SRob Herring i2c@7000c500 { 200724ba675SRob Herring status = "okay"; 201724ba675SRob Herring clock-frequency = <100000>; 202724ba675SRob Herring 203724ba675SRob Herring /* ALS and Proximity sensor */ 204724ba675SRob Herring isl29028@44 { 205724ba675SRob Herring compatible = "isil,isl29028"; 206724ba675SRob Herring reg = <0x44>; 207724ba675SRob Herring interrupt-parent = <&gpio>; 208724ba675SRob Herring interrupts = <TEGRA_GPIO(L, 0) IRQ_TYPE_LEVEL_HIGH>; 209724ba675SRob Herring }; 210724ba675SRob Herring 211724ba675SRob Herring i2cmux@70 { 212724ba675SRob Herring compatible = "nxp,pca9546"; 213724ba675SRob Herring #address-cells = <1>; 214724ba675SRob Herring #size-cells = <0>; 215724ba675SRob Herring reg = <0x70>; 216724ba675SRob Herring reset-gpios = <&gpio TEGRA_GPIO(BB, 0) GPIO_ACTIVE_LOW>; 217724ba675SRob Herring }; 218724ba675SRob Herring }; 219724ba675SRob Herring 220724ba675SRob Herring i2c@7000c700 { 221724ba675SRob Herring status = "okay"; 222724ba675SRob Herring clock-frequency = <100000>; 223724ba675SRob Herring }; 224724ba675SRob Herring 225724ba675SRob Herring i2c@7000d000 { 226724ba675SRob Herring status = "okay"; 227724ba675SRob Herring clock-frequency = <100000>; 228724ba675SRob Herring 229724ba675SRob Herring wm8903: wm8903@1a { 230724ba675SRob Herring compatible = "wlf,wm8903"; 231724ba675SRob Herring reg = <0x1a>; 232724ba675SRob Herring interrupt-parent = <&gpio>; 233724ba675SRob Herring interrupts = <TEGRA_GPIO(W, 3) IRQ_TYPE_LEVEL_HIGH>; 234724ba675SRob Herring 235724ba675SRob Herring gpio-controller; 236724ba675SRob Herring #gpio-cells = <2>; 237724ba675SRob Herring 238724ba675SRob Herring micdet-cfg = <0>; 239724ba675SRob Herring micdet-delay = <100>; 240724ba675SRob Herring gpio-cfg = <0xffffffff 0xffffffff 0 0xffffffff 0xffffffff>; 241724ba675SRob Herring }; 242724ba675SRob Herring 243724ba675SRob Herring pmic: tps65911@2d { 244724ba675SRob Herring compatible = "ti,tps65911"; 245724ba675SRob Herring reg = <0x2d>; 246724ba675SRob Herring 247724ba675SRob Herring interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>; 248724ba675SRob Herring #interrupt-cells = <2>; 249724ba675SRob Herring interrupt-controller; 250724ba675SRob Herring wakeup-source; 251724ba675SRob Herring 252724ba675SRob Herring ti,system-power-controller; 253724ba675SRob Herring 254724ba675SRob Herring #gpio-cells = <2>; 255724ba675SRob Herring gpio-controller; 256724ba675SRob Herring 257724ba675SRob Herring vcc1-supply = <&vdd_ac_bat_reg>; 258724ba675SRob Herring vcc2-supply = <&vdd_ac_bat_reg>; 259724ba675SRob Herring vcc3-supply = <&vio_reg>; 260724ba675SRob Herring vcc4-supply = <&vdd_5v0_reg>; 261724ba675SRob Herring vcc5-supply = <&vdd_ac_bat_reg>; 262724ba675SRob Herring vcc6-supply = <&vdd2_reg>; 263724ba675SRob Herring vcc7-supply = <&vdd_ac_bat_reg>; 264724ba675SRob Herring vccio-supply = <&vdd_ac_bat_reg>; 265724ba675SRob Herring 266724ba675SRob Herring regulators { 267724ba675SRob Herring vdd1_reg: vdd1 { 268724ba675SRob Herring regulator-name = "vddio_ddr_1v2"; 269724ba675SRob Herring regulator-min-microvolt = <1200000>; 270724ba675SRob Herring regulator-max-microvolt = <1200000>; 271724ba675SRob Herring regulator-always-on; 272724ba675SRob Herring }; 273724ba675SRob Herring 274724ba675SRob Herring vdd2_reg: vdd2 { 275724ba675SRob Herring regulator-name = "vdd_1v5_gen"; 276724ba675SRob Herring regulator-min-microvolt = <1500000>; 277724ba675SRob Herring regulator-max-microvolt = <1500000>; 278724ba675SRob Herring regulator-always-on; 279724ba675SRob Herring }; 280724ba675SRob Herring 281724ba675SRob Herring vddctrl_reg: vddctrl { 282724ba675SRob Herring regulator-name = "vdd_cpu,vdd_sys"; 283724ba675SRob Herring regulator-min-microvolt = <800000>; 284724ba675SRob Herring regulator-max-microvolt = <1250000>; 285724ba675SRob Herring regulator-coupled-with = <&vdd_core>; 286724ba675SRob Herring regulator-coupled-max-spread = <300000>; 287724ba675SRob Herring regulator-max-step-microvolt = <100000>; 288724ba675SRob Herring regulator-always-on; 289724ba675SRob Herring 290724ba675SRob Herring nvidia,tegra-cpu-regulator; 291724ba675SRob Herring }; 292724ba675SRob Herring 293724ba675SRob Herring vio_reg: vio { 294724ba675SRob Herring regulator-name = "vdd_1v8_gen"; 295724ba675SRob Herring regulator-min-microvolt = <1800000>; 296724ba675SRob Herring regulator-max-microvolt = <1800000>; 297724ba675SRob Herring regulator-always-on; 298724ba675SRob Herring }; 299724ba675SRob Herring 300724ba675SRob Herring ldo1_reg: ldo1 { 301724ba675SRob Herring regulator-name = "vdd_pexa,vdd_pexb"; 302724ba675SRob Herring regulator-min-microvolt = <1050000>; 303724ba675SRob Herring regulator-max-microvolt = <1050000>; 304724ba675SRob Herring }; 305724ba675SRob Herring 306724ba675SRob Herring ldo2_reg: ldo2 { 307724ba675SRob Herring regulator-name = "vdd_sata,avdd_plle"; 308724ba675SRob Herring regulator-min-microvolt = <1050000>; 309724ba675SRob Herring regulator-max-microvolt = <1050000>; 310724ba675SRob Herring }; 311724ba675SRob Herring 312724ba675SRob Herring /* LDO3 is not connected to anything */ 313724ba675SRob Herring 314724ba675SRob Herring ldo4_reg: ldo4 { 315724ba675SRob Herring regulator-name = "vdd_rtc"; 316724ba675SRob Herring regulator-min-microvolt = <1200000>; 317724ba675SRob Herring regulator-max-microvolt = <1200000>; 318724ba675SRob Herring regulator-always-on; 319724ba675SRob Herring }; 320724ba675SRob Herring 321724ba675SRob Herring ldo5_reg: ldo5 { 322724ba675SRob Herring regulator-name = "vddio_sdmmc,avdd_vdac"; 323724ba675SRob Herring regulator-min-microvolt = <3300000>; 324724ba675SRob Herring regulator-max-microvolt = <3300000>; 325724ba675SRob Herring regulator-always-on; 326724ba675SRob Herring }; 327724ba675SRob Herring 328724ba675SRob Herring ldo6_reg: ldo6 { 329724ba675SRob Herring regulator-name = "avdd_dsi_csi,pwrdet_mipi"; 330724ba675SRob Herring regulator-min-microvolt = <1200000>; 331724ba675SRob Herring regulator-max-microvolt = <1200000>; 332724ba675SRob Herring }; 333724ba675SRob Herring 334724ba675SRob Herring ldo7_reg: ldo7 { 335724ba675SRob Herring regulator-name = "vdd_pllm,x,u,a_p_c_s"; 336724ba675SRob Herring regulator-min-microvolt = <1200000>; 337724ba675SRob Herring regulator-max-microvolt = <1200000>; 338724ba675SRob Herring regulator-always-on; 339724ba675SRob Herring }; 340724ba675SRob Herring 341724ba675SRob Herring ldo8_reg: ldo8 { 342724ba675SRob Herring regulator-name = "vdd_ddr_hs"; 343724ba675SRob Herring regulator-min-microvolt = <1000000>; 344724ba675SRob Herring regulator-max-microvolt = <1000000>; 345724ba675SRob Herring regulator-always-on; 346724ba675SRob Herring }; 347724ba675SRob Herring }; 348724ba675SRob Herring }; 349724ba675SRob Herring 350724ba675SRob Herring nct1008: temperature-sensor@4c { 351724ba675SRob Herring compatible = "onnn,nct1008"; 352724ba675SRob Herring reg = <0x4c>; 353724ba675SRob Herring vcc-supply = <&sys_3v3_reg>; 354724ba675SRob Herring interrupt-parent = <&gpio>; 355724ba675SRob Herring interrupts = <TEGRA_GPIO(CC, 2) IRQ_TYPE_EDGE_FALLING>; 356724ba675SRob Herring #thermal-sensor-cells = <1>; 357724ba675SRob Herring }; 358724ba675SRob Herring 359724ba675SRob Herring vdd_core: tps62361@60 { 360724ba675SRob Herring compatible = "ti,tps62361"; 361724ba675SRob Herring reg = <0x60>; 362724ba675SRob Herring 363724ba675SRob Herring regulator-name = "tps62361-vout"; 364724ba675SRob Herring regulator-min-microvolt = <500000>; 365724ba675SRob Herring regulator-max-microvolt = <1500000>; 366724ba675SRob Herring regulator-coupled-with = <&vddctrl_reg>; 367724ba675SRob Herring regulator-coupled-max-spread = <300000>; 368724ba675SRob Herring regulator-max-step-microvolt = <100000>; 369724ba675SRob Herring regulator-boot-on; 370724ba675SRob Herring regulator-always-on; 371724ba675SRob Herring ti,vsel0-state-high; 372724ba675SRob Herring ti,vsel1-state-high; 373724ba675SRob Herring 374724ba675SRob Herring nvidia,tegra-core-regulator; 375724ba675SRob Herring }; 376724ba675SRob Herring }; 377724ba675SRob Herring 378724ba675SRob Herring spi@7000da00 { 379724ba675SRob Herring status = "okay"; 380724ba675SRob Herring spi-max-frequency = <25000000>; 381724ba675SRob Herring 382724ba675SRob Herring flash@1 { 383724ba675SRob Herring compatible = "winbond,w25q32", "jedec,spi-nor"; 384724ba675SRob Herring reg = <1>; 385724ba675SRob Herring spi-max-frequency = <20000000>; 386724ba675SRob Herring }; 387724ba675SRob Herring }; 388724ba675SRob Herring 389724ba675SRob Herring pmc@7000e400 { 390724ba675SRob Herring status = "okay"; 391724ba675SRob Herring nvidia,invert-interrupt; 392724ba675SRob Herring nvidia,suspend-mode = <1>; 393724ba675SRob Herring nvidia,cpu-pwr-good-time = <2000>; 394724ba675SRob Herring nvidia,cpu-pwr-off-time = <200>; 395724ba675SRob Herring nvidia,core-pwr-good-time = <3845 3845>; 396724ba675SRob Herring nvidia,core-pwr-off-time = <0>; 397724ba675SRob Herring nvidia,core-power-req-active-high; 398724ba675SRob Herring nvidia,sys-clock-req-active-high; 399724ba675SRob Herring core-supply = <&vdd_core>; 400724ba675SRob Herring }; 401724ba675SRob Herring 402724ba675SRob Herring ahub@70080000 { 403724ba675SRob Herring i2s@70080400 { 404724ba675SRob Herring status = "okay"; 405724ba675SRob Herring }; 406724ba675SRob Herring }; 407724ba675SRob Herring 408724ba675SRob Herring mmc@78000000 { 409724ba675SRob Herring status = "okay"; 410724ba675SRob Herring cd-gpios = <&gpio TEGRA_GPIO(I, 5) GPIO_ACTIVE_LOW>; 411724ba675SRob Herring wp-gpios = <&gpio TEGRA_GPIO(T, 3) GPIO_ACTIVE_HIGH>; 412724ba675SRob Herring power-gpios = <&gpio TEGRA_GPIO(D, 7) GPIO_ACTIVE_HIGH>; 413724ba675SRob Herring bus-width = <4>; 414724ba675SRob Herring }; 415724ba675SRob Herring 416724ba675SRob Herring mmc@78000600 { 417724ba675SRob Herring status = "okay"; 418724ba675SRob Herring bus-width = <8>; 419724ba675SRob Herring non-removable; 420724ba675SRob Herring }; 421724ba675SRob Herring 422724ba675SRob Herring usb@7d008000 { 423724ba675SRob Herring status = "okay"; 424724ba675SRob Herring }; 425724ba675SRob Herring 426724ba675SRob Herring usb-phy@7d008000 { 427724ba675SRob Herring vbus-supply = <&usb3_vbus_reg>; 428724ba675SRob Herring status = "okay"; 429724ba675SRob Herring }; 430724ba675SRob Herring 431724ba675SRob Herring backlight: backlight { 432724ba675SRob Herring compatible = "pwm-backlight"; 433724ba675SRob Herring 434724ba675SRob Herring enable-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_HIGH>; 435724ba675SRob Herring power-supply = <&vdd_bl_reg>; 436724ba675SRob Herring pwms = <&pwm 0 5000000>; 437724ba675SRob Herring 438724ba675SRob Herring brightness-levels = <0 4 8 16 32 64 128 255>; 439724ba675SRob Herring default-brightness-level = <6>; 440724ba675SRob Herring }; 441724ba675SRob Herring 442724ba675SRob Herring clk32k_in: clock-32k { 443724ba675SRob Herring compatible = "fixed-clock"; 444724ba675SRob Herring clock-frequency = <32768>; 445724ba675SRob Herring #clock-cells = <0>; 446724ba675SRob Herring }; 447724ba675SRob Herring 448724ba675SRob Herring cpus { 449724ba675SRob Herring cpu0: cpu@0 { 450724ba675SRob Herring cpu-supply = <&vddctrl_reg>; 451724ba675SRob Herring operating-points-v2 = <&cpu0_opp_table>; 452724ba675SRob Herring #cooling-cells = <2>; 453724ba675SRob Herring }; 454724ba675SRob Herring 455724ba675SRob Herring cpu1: cpu@1 { 456724ba675SRob Herring cpu-supply = <&vddctrl_reg>; 457724ba675SRob Herring operating-points-v2 = <&cpu0_opp_table>; 458724ba675SRob Herring #cooling-cells = <2>; 459724ba675SRob Herring }; 460724ba675SRob Herring 461724ba675SRob Herring cpu2: cpu@2 { 462724ba675SRob Herring cpu-supply = <&vddctrl_reg>; 463724ba675SRob Herring operating-points-v2 = <&cpu0_opp_table>; 464724ba675SRob Herring #cooling-cells = <2>; 465724ba675SRob Herring }; 466724ba675SRob Herring 467724ba675SRob Herring cpu3: cpu@3 { 468724ba675SRob Herring cpu-supply = <&vddctrl_reg>; 469724ba675SRob Herring operating-points-v2 = <&cpu0_opp_table>; 470724ba675SRob Herring #cooling-cells = <2>; 471724ba675SRob Herring }; 472724ba675SRob Herring }; 473724ba675SRob Herring 474724ba675SRob Herring gpio-keys { 475724ba675SRob Herring compatible = "gpio-keys"; 476724ba675SRob Herring 477724ba675SRob Herring key-power { 478724ba675SRob Herring label = "Power"; 479724ba675SRob Herring interrupt-parent = <&pmic>; 480724ba675SRob Herring interrupts = <2 0>; 481724ba675SRob Herring linux,code = <KEY_POWER>; 482724ba675SRob Herring debounce-interval = <100>; 483724ba675SRob Herring wakeup-source; 484724ba675SRob Herring }; 485724ba675SRob Herring 486724ba675SRob Herring key-volume-down { 487724ba675SRob Herring label = "Volume Down"; 488724ba675SRob Herring gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_LOW>; 489724ba675SRob Herring linux,code = <KEY_VOLUMEDOWN>; 490724ba675SRob Herring debounce-interval = <10>; 491724ba675SRob Herring }; 492724ba675SRob Herring 493724ba675SRob Herring key-volume-up { 494724ba675SRob Herring label = "Volume Up"; 495724ba675SRob Herring gpios = <&gpio TEGRA_GPIO(R, 1) GPIO_ACTIVE_LOW>; 496724ba675SRob Herring linux,code = <KEY_VOLUMEUP>; 497724ba675SRob Herring debounce-interval = <10>; 498724ba675SRob Herring }; 499724ba675SRob Herring }; 500724ba675SRob Herring 501724ba675SRob Herring panel: panel { 502724ba675SRob Herring compatible = "chunghwa,claa101wb01"; 503724ba675SRob Herring ddc-i2c-bus = <&panelddc>; 504724ba675SRob Herring 505724ba675SRob Herring power-supply = <&vdd_pnl1_reg>; 506724ba675SRob Herring enable-gpios = <&gpio TEGRA_GPIO(L, 2) GPIO_ACTIVE_HIGH>; 507724ba675SRob Herring 508724ba675SRob Herring backlight = <&backlight>; 509724ba675SRob Herring }; 510724ba675SRob Herring 511724ba675SRob Herring vdd_ac_bat_reg: regulator-acbat { 512724ba675SRob Herring compatible = "regulator-fixed"; 513724ba675SRob Herring regulator-name = "vdd_ac_bat"; 514724ba675SRob Herring regulator-min-microvolt = <5000000>; 515724ba675SRob Herring regulator-max-microvolt = <5000000>; 516724ba675SRob Herring regulator-always-on; 517724ba675SRob Herring }; 518724ba675SRob Herring 519724ba675SRob Herring cam_1v8_reg: regulator-cam { 520724ba675SRob Herring compatible = "regulator-fixed"; 521724ba675SRob Herring regulator-name = "cam_1v8"; 522724ba675SRob Herring regulator-min-microvolt = <1800000>; 523724ba675SRob Herring regulator-max-microvolt = <1800000>; 524724ba675SRob Herring enable-active-high; 525724ba675SRob Herring gpio = <&gpio TEGRA_GPIO(BB, 4) GPIO_ACTIVE_HIGH>; 526724ba675SRob Herring vin-supply = <&vio_reg>; 527724ba675SRob Herring }; 528724ba675SRob Herring 529724ba675SRob Herring cp_5v_reg: regulator-5v0cp { 530724ba675SRob Herring compatible = "regulator-fixed"; 531724ba675SRob Herring regulator-name = "cp_5v"; 532724ba675SRob Herring regulator-min-microvolt = <5000000>; 533724ba675SRob Herring regulator-max-microvolt = <5000000>; 534724ba675SRob Herring regulator-boot-on; 535724ba675SRob Herring regulator-always-on; 536724ba675SRob Herring enable-active-high; 537724ba675SRob Herring gpio = <&pmic 0 GPIO_ACTIVE_HIGH>; 538724ba675SRob Herring }; 539724ba675SRob Herring 540724ba675SRob Herring emmc_3v3_reg: regulator-emmc { 541724ba675SRob Herring compatible = "regulator-fixed"; 542724ba675SRob Herring regulator-name = "emmc_3v3"; 543724ba675SRob Herring regulator-min-microvolt = <3300000>; 544724ba675SRob Herring regulator-max-microvolt = <3300000>; 545724ba675SRob Herring regulator-always-on; 546724ba675SRob Herring regulator-boot-on; 547724ba675SRob Herring enable-active-high; 548724ba675SRob Herring gpio = <&gpio TEGRA_GPIO(D, 1) GPIO_ACTIVE_HIGH>; 549724ba675SRob Herring vin-supply = <&sys_3v3_reg>; 550724ba675SRob Herring }; 551724ba675SRob Herring 552724ba675SRob Herring modem_3v3_reg: regulator-modem { 553724ba675SRob Herring compatible = "regulator-fixed"; 554724ba675SRob Herring regulator-name = "modem_3v3"; 555724ba675SRob Herring regulator-min-microvolt = <3300000>; 556724ba675SRob Herring regulator-max-microvolt = <3300000>; 557724ba675SRob Herring enable-active-high; 558724ba675SRob Herring gpio = <&gpio TEGRA_GPIO(D, 6) GPIO_ACTIVE_HIGH>; 559724ba675SRob Herring }; 560724ba675SRob Herring 561724ba675SRob Herring pex_hvdd_3v3_reg: regulator-pex { 562724ba675SRob Herring compatible = "regulator-fixed"; 563724ba675SRob Herring regulator-name = "pex_hvdd_3v3"; 564724ba675SRob Herring regulator-min-microvolt = <3300000>; 565724ba675SRob Herring regulator-max-microvolt = <3300000>; 566724ba675SRob Herring enable-active-high; 567724ba675SRob Herring gpio = <&gpio TEGRA_GPIO(L, 7) GPIO_ACTIVE_HIGH>; 568724ba675SRob Herring vin-supply = <&sys_3v3_reg>; 569724ba675SRob Herring }; 570724ba675SRob Herring 571724ba675SRob Herring vdd_cam1_ldo_reg: regulator-cam1 { 572724ba675SRob Herring compatible = "regulator-fixed"; 573724ba675SRob Herring regulator-name = "vdd_cam1_ldo"; 574724ba675SRob Herring regulator-min-microvolt = <2800000>; 575724ba675SRob Herring regulator-max-microvolt = <2800000>; 576724ba675SRob Herring enable-active-high; 577724ba675SRob Herring gpio = <&gpio TEGRA_GPIO(R, 6) GPIO_ACTIVE_HIGH>; 578724ba675SRob Herring vin-supply = <&sys_3v3_reg>; 579724ba675SRob Herring }; 580724ba675SRob Herring 581724ba675SRob Herring vdd_cam2_ldo_reg: regulator-cam2 { 582724ba675SRob Herring compatible = "regulator-fixed"; 583724ba675SRob Herring regulator-name = "vdd_cam2_ldo"; 584724ba675SRob Herring regulator-min-microvolt = <2800000>; 585724ba675SRob Herring regulator-max-microvolt = <2800000>; 586724ba675SRob Herring enable-active-high; 587724ba675SRob Herring gpio = <&gpio TEGRA_GPIO(R, 7) GPIO_ACTIVE_HIGH>; 588724ba675SRob Herring vin-supply = <&sys_3v3_reg>; 589724ba675SRob Herring }; 590724ba675SRob Herring 591724ba675SRob Herring vdd_cam3_ldo_reg: regulator-cam3 { 592724ba675SRob Herring compatible = "regulator-fixed"; 593724ba675SRob Herring regulator-name = "vdd_cam3_ldo"; 594724ba675SRob Herring regulator-min-microvolt = <3300000>; 595724ba675SRob Herring regulator-max-microvolt = <3300000>; 596724ba675SRob Herring enable-active-high; 597724ba675SRob Herring gpio = <&gpio TEGRA_GPIO(S, 0) GPIO_ACTIVE_HIGH>; 598724ba675SRob Herring vin-supply = <&sys_3v3_reg>; 599724ba675SRob Herring }; 600724ba675SRob Herring 601724ba675SRob Herring vdd_com_reg: regulator-com { 602724ba675SRob Herring compatible = "regulator-fixed"; 603724ba675SRob Herring regulator-name = "vdd_com"; 604724ba675SRob Herring regulator-min-microvolt = <3300000>; 605724ba675SRob Herring regulator-max-microvolt = <3300000>; 606724ba675SRob Herring regulator-always-on; 607724ba675SRob Herring regulator-boot-on; 608724ba675SRob Herring enable-active-high; 609724ba675SRob Herring gpio = <&gpio TEGRA_GPIO(D, 0) GPIO_ACTIVE_HIGH>; 610724ba675SRob Herring vin-supply = <&sys_3v3_reg>; 611724ba675SRob Herring }; 612724ba675SRob Herring 613724ba675SRob Herring vdd_fuse_3v3_reg: regulator-fuse { 614724ba675SRob Herring compatible = "regulator-fixed"; 615724ba675SRob Herring regulator-name = "vdd_fuse_3v3"; 616724ba675SRob Herring regulator-min-microvolt = <3300000>; 617724ba675SRob Herring regulator-max-microvolt = <3300000>; 618724ba675SRob Herring enable-active-high; 619724ba675SRob Herring gpio = <&gpio TEGRA_GPIO(L, 6) GPIO_ACTIVE_HIGH>; 620724ba675SRob Herring vin-supply = <&sys_3v3_reg>; 621724ba675SRob Herring }; 622724ba675SRob Herring 623724ba675SRob Herring vdd_pnl1_reg: regulator-pnl1 { 624724ba675SRob Herring compatible = "regulator-fixed"; 625724ba675SRob Herring regulator-name = "vdd_pnl1"; 626724ba675SRob Herring regulator-min-microvolt = <3300000>; 627724ba675SRob Herring regulator-max-microvolt = <3300000>; 628724ba675SRob Herring regulator-always-on; 629724ba675SRob Herring regulator-boot-on; 630724ba675SRob Herring enable-active-high; 631724ba675SRob Herring gpio = <&gpio TEGRA_GPIO(L, 4) GPIO_ACTIVE_HIGH>; 632724ba675SRob Herring vin-supply = <&sys_3v3_reg>; 633724ba675SRob Herring }; 634724ba675SRob Herring 635724ba675SRob Herring vdd_vid_reg: regulator-vid { 636724ba675SRob Herring compatible = "regulator-fixed"; 637724ba675SRob Herring regulator-name = "vddio_vid"; 638724ba675SRob Herring regulator-min-microvolt = <5000000>; 639724ba675SRob Herring regulator-max-microvolt = <5000000>; 640724ba675SRob Herring enable-active-high; 641724ba675SRob Herring gpio = <&gpio TEGRA_GPIO(T, 0) GPIO_ACTIVE_HIGH>; 642724ba675SRob Herring gpio-open-drain; 643724ba675SRob Herring vin-supply = <&vdd_5v0_reg>; 644724ba675SRob Herring }; 645724ba675SRob Herring 646724ba675SRob Herring sound { 647724ba675SRob Herring compatible = "nvidia,tegra-audio-wm8903-cardhu", 648724ba675SRob Herring "nvidia,tegra-audio-wm8903"; 649724ba675SRob Herring nvidia,model = "NVIDIA Tegra Cardhu"; 650724ba675SRob Herring 651724ba675SRob Herring nvidia,audio-routing = 652724ba675SRob Herring "Headphone Jack", "HPOUTR", 653724ba675SRob Herring "Headphone Jack", "HPOUTL", 654724ba675SRob Herring "Int Spk", "ROP", 655724ba675SRob Herring "Int Spk", "RON", 656724ba675SRob Herring "Int Spk", "LOP", 657724ba675SRob Herring "Int Spk", "LON", 658724ba675SRob Herring "Mic Jack", "MICBIAS", 659724ba675SRob Herring "IN1L", "Mic Jack"; 660724ba675SRob Herring 661724ba675SRob Herring nvidia,i2s-controller = <&tegra_i2s1>; 662724ba675SRob Herring nvidia,audio-codec = <&wm8903>; 663724ba675SRob Herring 664724ba675SRob Herring nvidia,spkr-en-gpios = <&wm8903 2 GPIO_ACTIVE_HIGH>; 665724ba675SRob Herring nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(W, 2) 666724ba675SRob Herring GPIO_ACTIVE_LOW>; 667724ba675SRob Herring 668724ba675SRob Herring clocks = <&tegra_car TEGRA30_CLK_PLL_A>, 669724ba675SRob Herring <&tegra_car TEGRA30_CLK_PLL_A_OUT0>, 670724ba675SRob Herring <&tegra_pmc TEGRA_PMC_CLK_OUT_1>; 671724ba675SRob Herring clock-names = "pll_a", "pll_a_out0", "mclk"; 672724ba675SRob Herring 673724ba675SRob Herring assigned-clocks = <&tegra_car TEGRA30_CLK_EXTERN1>, 674724ba675SRob Herring <&tegra_pmc TEGRA_PMC_CLK_OUT_1>; 675724ba675SRob Herring 676724ba675SRob Herring assigned-clock-parents = <&tegra_car TEGRA30_CLK_PLL_A_OUT0>, 677724ba675SRob Herring <&tegra_car TEGRA30_CLK_EXTERN1>; 678724ba675SRob Herring }; 679724ba675SRob Herring 680724ba675SRob Herring thermal-zones { 681724ba675SRob Herring cpu-thermal { 682724ba675SRob Herring polling-delay-passive = <1000>; /* milliseconds */ 683724ba675SRob Herring polling-delay = <5000>; /* milliseconds */ 684724ba675SRob Herring 685724ba675SRob Herring thermal-sensors = <&nct1008 1>; 686724ba675SRob Herring 687724ba675SRob Herring trips { 688724ba675SRob Herring trip0: cpu-alert0 { 689724ba675SRob Herring /* throttle at 57C until temperature drops to 56.8C */ 690724ba675SRob Herring temperature = <57000>; 691724ba675SRob Herring hysteresis = <200>; 692724ba675SRob Herring type = "passive"; 693724ba675SRob Herring }; 694724ba675SRob Herring 695724ba675SRob Herring trip1: cpu-crit { 696724ba675SRob Herring /* shut down at 60C */ 697724ba675SRob Herring temperature = <60000>; 698724ba675SRob Herring hysteresis = <2000>; 699724ba675SRob Herring type = "critical"; 700724ba675SRob Herring }; 701724ba675SRob Herring }; 702724ba675SRob Herring 703724ba675SRob Herring cooling-maps { 704724ba675SRob Herring map0 { 705724ba675SRob Herring trip = <&trip0>; 706724ba675SRob Herring cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 707724ba675SRob Herring <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 708724ba675SRob Herring <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 709724ba675SRob Herring <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 710724ba675SRob Herring }; 711724ba675SRob Herring }; 712724ba675SRob Herring }; 713724ba675SRob Herring }; 714724ba675SRob Herring}; 715