1300e2353SSimon Glass#include <dt-bindings/input/input.h> 2300e2353SSimon Glass#include "tegra124.dtsi" 3300e2353SSimon Glass 4300e2353SSimon Glass/ { 5300e2353SSimon Glass aliases { 6eb631d7fSStephen Warren rtc0 = "/i2c@7000d000/pmic@40"; 7eb631d7fSStephen Warren rtc1 = "/rtc@7000e000"; 8300e2353SSimon Glass serial0 = &uarta; 9300e2353SSimon Glass }; 10300e2353SSimon Glass 11300e2353SSimon Glass memory { 12300e2353SSimon Glass reg = <0x80000000 0x80000000>; 13300e2353SSimon Glass }; 14300e2353SSimon Glass 15300e2353SSimon Glass host1x@50000000 { 16300e2353SSimon Glass hdmi@54280000 { 17300e2353SSimon Glass status = "okay"; 18300e2353SSimon Glass 19300e2353SSimon Glass vdd-supply = <&vdd_3v3_hdmi>; 20300e2353SSimon Glass pll-supply = <&vdd_hdmi_pll>; 21300e2353SSimon Glass hdmi-supply = <&vdd_5v0_hdmi>; 22300e2353SSimon Glass 23300e2353SSimon Glass nvidia,ddc-i2c-bus = <&hdmi_ddc>; 24300e2353SSimon Glass nvidia,hpd-gpio = 25300e2353SSimon Glass <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>; 26300e2353SSimon Glass }; 27300e2353SSimon Glass 28300e2353SSimon Glass sor@54540000 { 29300e2353SSimon Glass status = "okay"; 30300e2353SSimon Glass 31300e2353SSimon Glass nvidia,dpaux = <&dpaux>; 32300e2353SSimon Glass nvidia,panel = <&panel>; 33300e2353SSimon Glass }; 34300e2353SSimon Glass 35300e2353SSimon Glass dpaux@545c0000 { 36300e2353SSimon Glass vdd-supply = <&vdd_3v3_panel>; 37300e2353SSimon Glass status = "okay"; 38300e2353SSimon Glass }; 39300e2353SSimon Glass }; 40300e2353SSimon Glass 41300e2353SSimon Glass serial@70006000 { 42300e2353SSimon Glass /* Debug connector on the bottom of the board near SD card. */ 43300e2353SSimon Glass status = "okay"; 44300e2353SSimon Glass }; 45300e2353SSimon Glass 46300e2353SSimon Glass pwm@7000a000 { 47300e2353SSimon Glass status = "okay"; 48300e2353SSimon Glass }; 49300e2353SSimon Glass 50300e2353SSimon Glass i2c@7000c000 { 51300e2353SSimon Glass status = "okay"; 52300e2353SSimon Glass clock-frequency = <100000>; 53300e2353SSimon Glass 54300e2353SSimon Glass acodec: audio-codec@10 { 55300e2353SSimon Glass compatible = "maxim,max98090"; 56300e2353SSimon Glass reg = <0x10>; 57300e2353SSimon Glass interrupt-parent = <&gpio>; 58300e2353SSimon Glass interrupts = <TEGRA_GPIO(H, 4) GPIO_ACTIVE_HIGH>; 59300e2353SSimon Glass }; 60300e2353SSimon Glass 61300e2353SSimon Glass temperature-sensor@4c { 62300e2353SSimon Glass compatible = "ti,tmp451"; 63300e2353SSimon Glass reg = <0x4c>; 64300e2353SSimon Glass interrupt-parent = <&gpio>; 65300e2353SSimon Glass interrupts = <TEGRA_GPIO(I, 6) IRQ_TYPE_LEVEL_LOW>; 66300e2353SSimon Glass 67300e2353SSimon Glass #thermal-sensor-cells = <1>; 68300e2353SSimon Glass }; 69300e2353SSimon Glass }; 70300e2353SSimon Glass 71300e2353SSimon Glass i2c@7000c400 { 72300e2353SSimon Glass status = "okay"; 73300e2353SSimon Glass clock-frequency = <100000>; 74300e2353SSimon Glass 75300e2353SSimon Glass trackpad@15 { 76300e2353SSimon Glass compatible = "elan,ekth3000"; 77300e2353SSimon Glass reg = <0x15>; 78300e2353SSimon Glass interrupt-parent = <&gpio>; 79300e2353SSimon Glass interrupts = <TEGRA_GPIO(W, 3) IRQ_TYPE_EDGE_FALLING>; 80300e2353SSimon Glass wakeup-source; 81300e2353SSimon Glass }; 82300e2353SSimon Glass }; 83300e2353SSimon Glass 84300e2353SSimon Glass i2c@7000c500 { 85300e2353SSimon Glass status = "okay"; 86300e2353SSimon Glass clock-frequency = <400000>; 87300e2353SSimon Glass 88300e2353SSimon Glass tpm@20 { 89300e2353SSimon Glass compatible = "infineon,slb9645tt"; 90300e2353SSimon Glass reg = <0x20>; 91300e2353SSimon Glass }; 92300e2353SSimon Glass }; 93300e2353SSimon Glass 94300e2353SSimon Glass hdmi_ddc: i2c@7000c700 { 95300e2353SSimon Glass status = "okay"; 96300e2353SSimon Glass clock-frequency = <100000>; 97300e2353SSimon Glass }; 98300e2353SSimon Glass 99300e2353SSimon Glass i2c@7000d000 { 100300e2353SSimon Glass status = "okay"; 101300e2353SSimon Glass clock-frequency = <400000>; 102300e2353SSimon Glass 103300e2353SSimon Glass pmic: pmic@40 { 104300e2353SSimon Glass compatible = "ams,as3722"; 105300e2353SSimon Glass reg = <0x40>; 106300e2353SSimon Glass interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>; 107300e2353SSimon Glass 108300e2353SSimon Glass ams,system-power-controller; 109300e2353SSimon Glass 110300e2353SSimon Glass #interrupt-cells = <2>; 111300e2353SSimon Glass interrupt-controller; 112300e2353SSimon Glass 113300e2353SSimon Glass gpio-controller; 114300e2353SSimon Glass #gpio-cells = <2>; 115300e2353SSimon Glass 116300e2353SSimon Glass pinctrl-names = "default"; 117300e2353SSimon Glass pinctrl-0 = <&as3722_default>; 118300e2353SSimon Glass 119300e2353SSimon Glass as3722_default: pinmux { 120300e2353SSimon Glass gpio0 { 121300e2353SSimon Glass pins = "gpio0"; 122300e2353SSimon Glass function = "gpio"; 123300e2353SSimon Glass bias-pull-down; 124300e2353SSimon Glass }; 125300e2353SSimon Glass 126300e2353SSimon Glass gpio1 { 127300e2353SSimon Glass pins = "gpio1"; 128300e2353SSimon Glass function = "gpio"; 129300e2353SSimon Glass bias-pull-up; 130300e2353SSimon Glass }; 131300e2353SSimon Glass 132300e2353SSimon Glass gpio2_4_7 { 133300e2353SSimon Glass pins = "gpio2", "gpio4", "gpio7"; 134300e2353SSimon Glass function = "gpio"; 135300e2353SSimon Glass bias-pull-up; 136300e2353SSimon Glass }; 137300e2353SSimon Glass 138300e2353SSimon Glass gpio3_6 { 139300e2353SSimon Glass pins = "gpio3", "gpio6"; 140300e2353SSimon Glass bias-high-impedance; 141300e2353SSimon Glass }; 142300e2353SSimon Glass 143300e2353SSimon Glass gpio5 { 144300e2353SSimon Glass pins = "gpio5"; 145300e2353SSimon Glass function = "clk32k-out"; 146300e2353SSimon Glass bias-pull-down; 147300e2353SSimon Glass }; 148300e2353SSimon Glass }; 149300e2353SSimon Glass 150300e2353SSimon Glass regulators { 151300e2353SSimon Glass vsup-sd2-supply = <&vdd_5v0_sys>; 152300e2353SSimon Glass vsup-sd3-supply = <&vdd_5v0_sys>; 153300e2353SSimon Glass vsup-sd4-supply = <&vdd_5v0_sys>; 154300e2353SSimon Glass vsup-sd5-supply = <&vdd_5v0_sys>; 155300e2353SSimon Glass vin-ldo0-supply = <&vdd_1v35_lp0>; 156300e2353SSimon Glass vin-ldo1-6-supply = <&vdd_3v3_run>; 157300e2353SSimon Glass vin-ldo2-5-7-supply = <&vddio_1v8>; 158300e2353SSimon Glass vin-ldo3-4-supply = <&vdd_3v3_sys>; 159300e2353SSimon Glass vin-ldo9-10-supply = <&vdd_5v0_sys>; 160300e2353SSimon Glass vin-ldo11-supply = <&vdd_3v3_run>; 161300e2353SSimon Glass 162300e2353SSimon Glass vdd_cpu: sd0 { 163300e2353SSimon Glass regulator-name = "+VDD_CPU_AP"; 164300e2353SSimon Glass regulator-min-microvolt = <700000>; 165300e2353SSimon Glass regulator-max-microvolt = <1350000>; 166300e2353SSimon Glass regulator-min-microamp = <3500000>; 167300e2353SSimon Glass regulator-max-microamp = <3500000>; 168300e2353SSimon Glass regulator-always-on; 169300e2353SSimon Glass regulator-boot-on; 170300e2353SSimon Glass ams,ext-control = <2>; 171300e2353SSimon Glass }; 172300e2353SSimon Glass 173300e2353SSimon Glass sd1 { 174300e2353SSimon Glass regulator-name = "+VDD_CORE"; 175300e2353SSimon Glass regulator-min-microvolt = <700000>; 176300e2353SSimon Glass regulator-max-microvolt = <1350000>; 177300e2353SSimon Glass regulator-min-microamp = <2500000>; 178300e2353SSimon Glass regulator-max-microamp = <4000000>; 179300e2353SSimon Glass regulator-always-on; 180300e2353SSimon Glass regulator-boot-on; 181300e2353SSimon Glass ams,ext-control = <1>; 182300e2353SSimon Glass }; 183300e2353SSimon Glass 184300e2353SSimon Glass vdd_1v35_lp0: sd2 { 185300e2353SSimon Glass regulator-name = "+1.35V_LP0(sd2)"; 186300e2353SSimon Glass regulator-min-microvolt = <1350000>; 187300e2353SSimon Glass regulator-max-microvolt = <1350000>; 188300e2353SSimon Glass regulator-always-on; 189300e2353SSimon Glass regulator-boot-on; 190300e2353SSimon Glass }; 191300e2353SSimon Glass 192300e2353SSimon Glass sd3 { 193300e2353SSimon Glass regulator-name = "+1.35V_LP0(sd3)"; 194300e2353SSimon Glass regulator-min-microvolt = <1350000>; 195300e2353SSimon Glass regulator-max-microvolt = <1350000>; 196300e2353SSimon Glass regulator-always-on; 197300e2353SSimon Glass regulator-boot-on; 198300e2353SSimon Glass }; 199300e2353SSimon Glass 200300e2353SSimon Glass vdd_1v05_run: sd4 { 201300e2353SSimon Glass regulator-name = "+1.05V_RUN"; 202300e2353SSimon Glass regulator-min-microvolt = <1050000>; 203300e2353SSimon Glass regulator-max-microvolt = <1050000>; 204300e2353SSimon Glass }; 205300e2353SSimon Glass 206300e2353SSimon Glass vddio_1v8: sd5 { 207300e2353SSimon Glass regulator-name = "+1.8V_VDDIO"; 208300e2353SSimon Glass regulator-min-microvolt = <1800000>; 209300e2353SSimon Glass regulator-max-microvolt = <1800000>; 210300e2353SSimon Glass regulator-always-on; 211300e2353SSimon Glass }; 212300e2353SSimon Glass 213300e2353SSimon Glass sd6 { 214300e2353SSimon Glass regulator-name = "+VDD_GPU_AP"; 215300e2353SSimon Glass regulator-min-microvolt = <650000>; 216300e2353SSimon Glass regulator-max-microvolt = <1200000>; 217300e2353SSimon Glass regulator-min-microamp = <3500000>; 218300e2353SSimon Glass regulator-max-microamp = <3500000>; 219300e2353SSimon Glass regulator-boot-on; 220300e2353SSimon Glass regulator-always-on; 221300e2353SSimon Glass }; 222300e2353SSimon Glass 223300e2353SSimon Glass ldo0 { 224300e2353SSimon Glass regulator-name = "+1.05V_RUN_AVDD"; 225300e2353SSimon Glass regulator-min-microvolt = <1050000>; 226300e2353SSimon Glass regulator-max-microvolt = <1050000>; 227300e2353SSimon Glass regulator-boot-on; 228300e2353SSimon Glass regulator-always-on; 229300e2353SSimon Glass ams,ext-control = <1>; 230300e2353SSimon Glass }; 231300e2353SSimon Glass 232300e2353SSimon Glass ldo1 { 233300e2353SSimon Glass regulator-name = "+1.8V_RUN_CAM"; 234300e2353SSimon Glass regulator-min-microvolt = <1800000>; 235300e2353SSimon Glass regulator-max-microvolt = <1800000>; 236300e2353SSimon Glass }; 237300e2353SSimon Glass 238300e2353SSimon Glass ldo2 { 239300e2353SSimon Glass regulator-name = "+1.2V_GEN_AVDD"; 240300e2353SSimon Glass regulator-min-microvolt = <1200000>; 241300e2353SSimon Glass regulator-max-microvolt = <1200000>; 242300e2353SSimon Glass regulator-boot-on; 243300e2353SSimon Glass regulator-always-on; 244300e2353SSimon Glass }; 245300e2353SSimon Glass 246300e2353SSimon Glass ldo3 { 247300e2353SSimon Glass regulator-name = "+1.00V_LP0_VDD_RTC"; 248300e2353SSimon Glass regulator-min-microvolt = <1000000>; 249300e2353SSimon Glass regulator-max-microvolt = <1000000>; 250300e2353SSimon Glass regulator-boot-on; 251300e2353SSimon Glass regulator-always-on; 252300e2353SSimon Glass ams,enable-tracking; 253300e2353SSimon Glass }; 254300e2353SSimon Glass 255300e2353SSimon Glass vdd_run_cam: ldo4 { 256300e2353SSimon Glass regulator-name = "+3.3V_RUN_CAM"; 257300e2353SSimon Glass regulator-min-microvolt = <2800000>; 258300e2353SSimon Glass regulator-max-microvolt = <2800000>; 259300e2353SSimon Glass }; 260300e2353SSimon Glass 261300e2353SSimon Glass ldo5 { 262300e2353SSimon Glass regulator-name = "+1.2V_RUN_CAM_FRONT"; 263300e2353SSimon Glass regulator-min-microvolt = <1200000>; 264300e2353SSimon Glass regulator-max-microvolt = <1200000>; 265300e2353SSimon Glass }; 266300e2353SSimon Glass 267300e2353SSimon Glass vddio_sdmmc3: ldo6 { 268300e2353SSimon Glass regulator-name = "+VDDIO_SDMMC3"; 269300e2353SSimon Glass regulator-min-microvolt = <1800000>; 270300e2353SSimon Glass regulator-max-microvolt = <3300000>; 271300e2353SSimon Glass }; 272300e2353SSimon Glass 273300e2353SSimon Glass ldo7 { 274300e2353SSimon Glass regulator-name = "+1.05V_RUN_CAM_REAR"; 275300e2353SSimon Glass regulator-min-microvolt = <1050000>; 276300e2353SSimon Glass regulator-max-microvolt = <1050000>; 277300e2353SSimon Glass }; 278300e2353SSimon Glass 279300e2353SSimon Glass ldo9 { 280300e2353SSimon Glass regulator-name = "+2.8V_RUN_TOUCH"; 281300e2353SSimon Glass regulator-min-microvolt = <2800000>; 282300e2353SSimon Glass regulator-max-microvolt = <2800000>; 283300e2353SSimon Glass }; 284300e2353SSimon Glass 285300e2353SSimon Glass ldo10 { 286300e2353SSimon Glass regulator-name = "+2.8V_RUN_CAM_AF"; 287300e2353SSimon Glass regulator-min-microvolt = <2800000>; 288300e2353SSimon Glass regulator-max-microvolt = <2800000>; 289300e2353SSimon Glass }; 290300e2353SSimon Glass 291300e2353SSimon Glass ldo11 { 292300e2353SSimon Glass regulator-name = "+1.8V_RUN_VPP_FUSE"; 293300e2353SSimon Glass regulator-min-microvolt = <1800000>; 294300e2353SSimon Glass regulator-max-microvolt = <1800000>; 295300e2353SSimon Glass }; 296300e2353SSimon Glass }; 297300e2353SSimon Glass }; 298300e2353SSimon Glass }; 299300e2353SSimon Glass 300300e2353SSimon Glass spi@7000d400 { 301300e2353SSimon Glass status = "okay"; 302300e2353SSimon Glass 303300e2353SSimon Glass cros_ec: cros-ec@0 { 304300e2353SSimon Glass compatible = "google,cros-ec-spi"; 305300e2353SSimon Glass spi-max-frequency = <3000000>; 306300e2353SSimon Glass interrupt-parent = <&gpio>; 307300e2353SSimon Glass interrupts = <TEGRA_GPIO(C, 7) IRQ_TYPE_LEVEL_LOW>; 308300e2353SSimon Glass reg = <0>; 309300e2353SSimon Glass 310300e2353SSimon Glass google,cros-ec-spi-msg-delay = <2000>; 311300e2353SSimon Glass 312300e2353SSimon Glass i2c-tunnel { 313300e2353SSimon Glass compatible = "google,cros-ec-i2c-tunnel"; 314300e2353SSimon Glass #address-cells = <1>; 315300e2353SSimon Glass #size-cells = <0>; 316300e2353SSimon Glass 317300e2353SSimon Glass google,remote-bus = <0>; 318300e2353SSimon Glass 319300e2353SSimon Glass charger: bq24735@9 { 320300e2353SSimon Glass compatible = "ti,bq24735"; 321300e2353SSimon Glass reg = <0x9>; 322300e2353SSimon Glass interrupt-parent = <&gpio>; 323300e2353SSimon Glass interrupts = <TEGRA_GPIO(J, 0) 324300e2353SSimon Glass GPIO_ACTIVE_HIGH>; 325300e2353SSimon Glass ti,ac-detect-gpios = <&gpio 326300e2353SSimon Glass TEGRA_GPIO(J, 0) 327300e2353SSimon Glass GPIO_ACTIVE_HIGH>; 328300e2353SSimon Glass }; 329300e2353SSimon Glass 330300e2353SSimon Glass battery: sbs-battery@b { 331300e2353SSimon Glass compatible = "sbs,sbs-battery"; 332300e2353SSimon Glass reg = <0xb>; 333300e2353SSimon Glass sbs,i2c-retry-count = <2>; 334300e2353SSimon Glass sbs,poll-retry-count = <10>; 335300e2353SSimon Glass power-supplies = <&charger>; 336300e2353SSimon Glass }; 337300e2353SSimon Glass }; 338300e2353SSimon Glass }; 339300e2353SSimon Glass }; 340300e2353SSimon Glass 341300e2353SSimon Glass spi@7000da00 { 342300e2353SSimon Glass status = "okay"; 343300e2353SSimon Glass spi-max-frequency = <25000000>; 344300e2353SSimon Glass 345300e2353SSimon Glass flash@0 { 346300e2353SSimon Glass compatible = "winbond,w25q32dw"; 347300e2353SSimon Glass spi-max-frequency = <25000000>; 348300e2353SSimon Glass reg = <0>; 349300e2353SSimon Glass }; 350300e2353SSimon Glass }; 351300e2353SSimon Glass 352300e2353SSimon Glass pmc@7000e400 { 353300e2353SSimon Glass nvidia,invert-interrupt; 354300e2353SSimon Glass nvidia,suspend-mode = <0>; 355300e2353SSimon Glass nvidia,cpu-pwr-good-time = <500>; 356300e2353SSimon Glass nvidia,cpu-pwr-off-time = <300>; 357300e2353SSimon Glass nvidia,core-pwr-good-time = <641 3845>; 358300e2353SSimon Glass nvidia,core-pwr-off-time = <61036>; 359300e2353SSimon Glass nvidia,core-power-req-active-high; 360300e2353SSimon Glass nvidia,sys-clock-req-active-high; 361300e2353SSimon Glass }; 362300e2353SSimon Glass 363300e2353SSimon Glass hda@70030000 { 364300e2353SSimon Glass status = "okay"; 365300e2353SSimon Glass }; 366300e2353SSimon Glass 367300e2353SSimon Glass sdhci0_pwrseq: sdhci0_pwrseq { 368300e2353SSimon Glass compatible = "mmc-pwrseq-simple"; 369300e2353SSimon Glass 370300e2353SSimon Glass reset-gpios = <&gpio TEGRA_GPIO(X, 7) GPIO_ACTIVE_LOW>; 371300e2353SSimon Glass }; 372300e2353SSimon Glass 373300e2353SSimon Glass sdhci@700b0000 { /* WiFi/BT on this bus */ 374300e2353SSimon Glass status = "okay"; 375300e2353SSimon Glass power-gpios = <&gpio TEGRA_GPIO(X, 7) GPIO_ACTIVE_HIGH>; 376300e2353SSimon Glass bus-width = <4>; 377300e2353SSimon Glass no-1-8-v; 378300e2353SSimon Glass non-removable; 379300e2353SSimon Glass mmc-pwrseq = <&sdhci0_pwrseq>; 380300e2353SSimon Glass vmmc-supply = <&vdd_3v3_lp0>; 381300e2353SSimon Glass vqmmc-supply = <&vddio_1v8>; 382300e2353SSimon Glass keep-power-in-suspend; 383300e2353SSimon Glass }; 384300e2353SSimon Glass 385300e2353SSimon Glass sdhci@700b0400 { /* SD Card on this bus */ 386300e2353SSimon Glass status = "okay"; 387300e2353SSimon Glass cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>; 388300e2353SSimon Glass power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>; 389300e2353SSimon Glass wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_LOW>; 390300e2353SSimon Glass bus-width = <4>; 391300e2353SSimon Glass no-1-8-v; 392300e2353SSimon Glass vqmmc-supply = <&vddio_sdmmc3>; 393300e2353SSimon Glass }; 394300e2353SSimon Glass 395300e2353SSimon Glass sdhci@700b0600 { /* eMMC on this bus */ 396300e2353SSimon Glass status = "okay"; 397300e2353SSimon Glass bus-width = <8>; 398300e2353SSimon Glass no-1-8-v; 399300e2353SSimon Glass non-removable; 400300e2353SSimon Glass }; 401300e2353SSimon Glass 402300e2353SSimon Glass /* CPU DFLL clock */ 403300e2353SSimon Glass clock@70110000 { 404300e2353SSimon Glass status = "disabled"; 405300e2353SSimon Glass vdd-cpu-supply = <&vdd_cpu>; 406300e2353SSimon Glass nvidia,i2c-fs-rate = <400000>; 407300e2353SSimon Glass }; 408300e2353SSimon Glass 409300e2353SSimon Glass ahub@70300000 { 410300e2353SSimon Glass i2s@70301100 { 411300e2353SSimon Glass status = "okay"; 412300e2353SSimon Glass }; 413300e2353SSimon Glass }; 414300e2353SSimon Glass 415300e2353SSimon Glass usb@7d000000 { /* Rear external USB port. */ 416300e2353SSimon Glass status = "okay"; 417*8105816cSTristan Bastian dr_mode = "otg"; 418300e2353SSimon Glass nvidia,vbus-gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>; 419300e2353SSimon Glass }; 420300e2353SSimon Glass 421300e2353SSimon Glass usb-phy@7d000000 { 422300e2353SSimon Glass status = "okay"; 423300e2353SSimon Glass vbus-supply = <&vdd_usb1_vbus>; 424300e2353SSimon Glass }; 425300e2353SSimon Glass 426300e2353SSimon Glass usb@7d004000 { /* Internal webcam. */ 427300e2353SSimon Glass status = "okay"; 4283b8c1b3bSStephen Warren phy_type = "hsic"; 429300e2353SSimon Glass }; 430300e2353SSimon Glass 431300e2353SSimon Glass usb-phy@7d004000 { 432300e2353SSimon Glass status = "okay"; 4333b8c1b3bSStephen Warren phy_type = "hsic"; 434300e2353SSimon Glass vbus-supply = <&vdd_run_cam>; 435300e2353SSimon Glass }; 436300e2353SSimon Glass 437300e2353SSimon Glass usb@7d008000 { /* Left external USB port. */ 438300e2353SSimon Glass status = "okay"; 439300e2353SSimon Glass nvidia,vbus-gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>; 440300e2353SSimon Glass }; 441300e2353SSimon Glass 442300e2353SSimon Glass usb-phy@7d008000 { 443300e2353SSimon Glass status = "okay"; 444300e2353SSimon Glass vbus-supply = <&vdd_usb3_vbus>; 445300e2353SSimon Glass }; 446300e2353SSimon Glass 447300e2353SSimon Glass backlight: backlight { 448300e2353SSimon Glass compatible = "pwm-backlight"; 449300e2353SSimon Glass 450300e2353SSimon Glass enable-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_HIGH>; 451300e2353SSimon Glass power-supply = <&vdd_led>; 452300e2353SSimon Glass pwms = <&pwm 1 1000000>; 453300e2353SSimon Glass 454300e2353SSimon Glass default-brightness-level = <224>; 455300e2353SSimon Glass brightness-levels = 456300e2353SSimon Glass < 0 1 2 3 4 5 6 7 457300e2353SSimon Glass 8 9 10 11 12 13 14 15 458300e2353SSimon Glass 16 17 18 19 20 21 22 23 459300e2353SSimon Glass 24 25 26 27 28 29 30 31 460300e2353SSimon Glass 32 33 34 35 36 37 38 39 461300e2353SSimon Glass 40 41 42 43 44 45 46 47 462300e2353SSimon Glass 48 49 50 51 52 53 54 55 463300e2353SSimon Glass 56 57 58 59 60 61 62 63 464300e2353SSimon Glass 64 65 66 67 68 69 70 71 465300e2353SSimon Glass 72 73 74 75 76 77 78 79 466300e2353SSimon Glass 80 81 82 83 84 85 86 87 467300e2353SSimon Glass 88 89 90 91 92 93 94 95 468300e2353SSimon Glass 96 97 98 99 100 101 102 103 469300e2353SSimon Glass 104 105 106 107 108 109 110 111 470300e2353SSimon Glass 112 113 114 115 116 117 118 119 471300e2353SSimon Glass 120 121 122 123 124 125 126 127 472300e2353SSimon Glass 128 129 130 131 132 133 134 135 473300e2353SSimon Glass 136 137 138 139 140 141 142 143 474300e2353SSimon Glass 144 145 146 147 148 149 150 151 475300e2353SSimon Glass 152 153 154 155 156 157 158 159 476300e2353SSimon Glass 160 161 162 163 164 165 166 167 477300e2353SSimon Glass 168 169 170 171 172 173 174 175 478300e2353SSimon Glass 176 177 178 179 180 181 182 183 479300e2353SSimon Glass 184 185 186 187 188 189 190 191 480300e2353SSimon Glass 192 193 194 195 196 197 198 199 481300e2353SSimon Glass 200 201 202 203 204 205 206 207 482300e2353SSimon Glass 208 209 210 211 212 213 214 215 483300e2353SSimon Glass 216 217 218 219 220 221 222 223 484300e2353SSimon Glass 224 225 226 227 228 229 230 231 485300e2353SSimon Glass 232 233 234 235 236 237 238 239 486300e2353SSimon Glass 240 241 242 243 244 245 246 247 487300e2353SSimon Glass 248 249 250 251 252 253 254 255 488300e2353SSimon Glass 256>; 489300e2353SSimon Glass }; 490300e2353SSimon Glass 491300e2353SSimon Glass clocks { 492300e2353SSimon Glass compatible = "simple-bus"; 493300e2353SSimon Glass #address-cells = <1>; 494300e2353SSimon Glass #size-cells = <0>; 495300e2353SSimon Glass 496300e2353SSimon Glass clk32k_in: clock@0 { 497300e2353SSimon Glass compatible = "fixed-clock"; 498300e2353SSimon Glass reg = <0>; 499300e2353SSimon Glass #clock-cells = <0>; 500300e2353SSimon Glass clock-frequency = <32768>; 501300e2353SSimon Glass }; 502300e2353SSimon Glass }; 503300e2353SSimon Glass 504300e2353SSimon Glass cpus { 505300e2353SSimon Glass cpu@0 { 506300e2353SSimon Glass vdd-cpu-supply = <&vdd_cpu>; 507300e2353SSimon Glass }; 508300e2353SSimon Glass }; 509300e2353SSimon Glass 510300e2353SSimon Glass cpus { 511300e2353SSimon Glass cpu@0 { 512300e2353SSimon Glass vdd-cpu-supply = <&vdd_cpu>; 513300e2353SSimon Glass }; 514300e2353SSimon Glass }; 515300e2353SSimon Glass 516300e2353SSimon Glass gpio-keys { 517300e2353SSimon Glass compatible = "gpio-keys"; 518300e2353SSimon Glass 519300e2353SSimon Glass lid { 520300e2353SSimon Glass label = "Lid"; 521300e2353SSimon Glass gpios = <&gpio TEGRA_GPIO(R, 4) GPIO_ACTIVE_LOW>; 522300e2353SSimon Glass linux,input-type = <5>; 523300e2353SSimon Glass linux,code = <KEY_RESERVED>; 524300e2353SSimon Glass debounce-interval = <1>; 525300e2353SSimon Glass gpio-key,wakeup; 526300e2353SSimon Glass }; 527300e2353SSimon Glass 528300e2353SSimon Glass power { 529300e2353SSimon Glass label = "Power"; 530300e2353SSimon Glass gpios = <&gpio TEGRA_GPIO(Q, 0) GPIO_ACTIVE_LOW>; 531300e2353SSimon Glass linux,code = <KEY_POWER>; 532300e2353SSimon Glass debounce-interval = <30>; 533300e2353SSimon Glass gpio-key,wakeup; 534300e2353SSimon Glass }; 535300e2353SSimon Glass }; 536300e2353SSimon Glass 537300e2353SSimon Glass regulators { 538300e2353SSimon Glass compatible = "simple-bus"; 539300e2353SSimon Glass #address-cells = <1>; 540300e2353SSimon Glass #size-cells = <0>; 541300e2353SSimon Glass 542300e2353SSimon Glass vdd_mux: regulator@0 { 543300e2353SSimon Glass compatible = "regulator-fixed"; 544300e2353SSimon Glass reg = <0>; 545300e2353SSimon Glass regulator-name = "+VDD_MUX"; 546300e2353SSimon Glass regulator-min-microvolt = <12000000>; 547300e2353SSimon Glass regulator-max-microvolt = <12000000>; 548300e2353SSimon Glass regulator-always-on; 549300e2353SSimon Glass regulator-boot-on; 550300e2353SSimon Glass }; 551300e2353SSimon Glass 552300e2353SSimon Glass vdd_5v0_sys: regulator@1 { 553300e2353SSimon Glass compatible = "regulator-fixed"; 554300e2353SSimon Glass reg = <1>; 555300e2353SSimon Glass regulator-name = "+5V_SYS"; 556300e2353SSimon Glass regulator-min-microvolt = <5000000>; 557300e2353SSimon Glass regulator-max-microvolt = <5000000>; 558300e2353SSimon Glass regulator-always-on; 559300e2353SSimon Glass regulator-boot-on; 560300e2353SSimon Glass vin-supply = <&vdd_mux>; 561300e2353SSimon Glass }; 562300e2353SSimon Glass 563300e2353SSimon Glass vdd_3v3_sys: regulator@2 { 564300e2353SSimon Glass compatible = "regulator-fixed"; 565300e2353SSimon Glass reg = <2>; 566300e2353SSimon Glass regulator-name = "+3.3V_SYS"; 567300e2353SSimon Glass regulator-min-microvolt = <3300000>; 568300e2353SSimon Glass regulator-max-microvolt = <3300000>; 569300e2353SSimon Glass regulator-always-on; 570300e2353SSimon Glass regulator-boot-on; 571300e2353SSimon Glass vin-supply = <&vdd_mux>; 572300e2353SSimon Glass }; 573300e2353SSimon Glass 574300e2353SSimon Glass vdd_3v3_run: regulator@3 { 575300e2353SSimon Glass compatible = "regulator-fixed"; 576300e2353SSimon Glass reg = <3>; 577300e2353SSimon Glass regulator-name = "+3.3V_RUN"; 578300e2353SSimon Glass regulator-min-microvolt = <3300000>; 579300e2353SSimon Glass regulator-max-microvolt = <3300000>; 580300e2353SSimon Glass regulator-always-on; 581300e2353SSimon Glass regulator-boot-on; 582300e2353SSimon Glass gpio = <&pmic 1 GPIO_ACTIVE_HIGH>; 583300e2353SSimon Glass enable-active-high; 584300e2353SSimon Glass vin-supply = <&vdd_3v3_sys>; 585300e2353SSimon Glass }; 586300e2353SSimon Glass 587300e2353SSimon Glass vdd_3v3_hdmi: regulator@4 { 588300e2353SSimon Glass compatible = "regulator-fixed"; 589300e2353SSimon Glass reg = <4>; 590300e2353SSimon Glass regulator-name = "+3.3V_AVDD_HDMI_AP_GATED"; 591300e2353SSimon Glass regulator-min-microvolt = <3300000>; 592300e2353SSimon Glass regulator-max-microvolt = <3300000>; 593300e2353SSimon Glass vin-supply = <&vdd_3v3_run>; 594300e2353SSimon Glass }; 595300e2353SSimon Glass 596300e2353SSimon Glass vdd_led: regulator@5 { 597300e2353SSimon Glass compatible = "regulator-fixed"; 598300e2353SSimon Glass reg = <5>; 599300e2353SSimon Glass regulator-name = "+VDD_LED"; 600300e2353SSimon Glass gpio = <&gpio TEGRA_GPIO(P, 2) GPIO_ACTIVE_HIGH>; 601300e2353SSimon Glass enable-active-high; 602300e2353SSimon Glass vin-supply = <&vdd_mux>; 603300e2353SSimon Glass }; 604300e2353SSimon Glass 605300e2353SSimon Glass vdd_5v0_ts: regulator@6 { 606300e2353SSimon Glass compatible = "regulator-fixed"; 607300e2353SSimon Glass reg = <6>; 608300e2353SSimon Glass regulator-name = "+5V_VDD_TS_SW"; 609300e2353SSimon Glass regulator-min-microvolt = <5000000>; 610300e2353SSimon Glass regulator-max-microvolt = <5000000>; 611300e2353SSimon Glass regulator-boot-on; 612300e2353SSimon Glass gpio = <&gpio TEGRA_GPIO(K, 1) GPIO_ACTIVE_HIGH>; 613300e2353SSimon Glass enable-active-high; 614300e2353SSimon Glass vin-supply = <&vdd_5v0_sys>; 615300e2353SSimon Glass }; 616300e2353SSimon Glass 617300e2353SSimon Glass vdd_usb1_vbus: regulator@7 { 618300e2353SSimon Glass compatible = "regulator-fixed"; 619300e2353SSimon Glass reg = <7>; 620300e2353SSimon Glass regulator-name = "+5V_USB_HS"; 621300e2353SSimon Glass regulator-min-microvolt = <5000000>; 622300e2353SSimon Glass regulator-max-microvolt = <5000000>; 623300e2353SSimon Glass gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>; 624300e2353SSimon Glass enable-active-high; 625300e2353SSimon Glass gpio-open-drain; 626300e2353SSimon Glass vin-supply = <&vdd_5v0_sys>; 627300e2353SSimon Glass }; 628300e2353SSimon Glass 629300e2353SSimon Glass vdd_usb3_vbus: regulator@8 { 630300e2353SSimon Glass compatible = "regulator-fixed"; 631300e2353SSimon Glass reg = <8>; 632300e2353SSimon Glass regulator-name = "+5V_USB_SS"; 633300e2353SSimon Glass regulator-min-microvolt = <5000000>; 634300e2353SSimon Glass regulator-max-microvolt = <5000000>; 635300e2353SSimon Glass gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>; 636300e2353SSimon Glass enable-active-high; 637300e2353SSimon Glass gpio-open-drain; 638300e2353SSimon Glass vin-supply = <&vdd_5v0_sys>; 639300e2353SSimon Glass }; 640300e2353SSimon Glass 641300e2353SSimon Glass vdd_3v3_panel: regulator@9 { 642300e2353SSimon Glass compatible = "regulator-fixed"; 643300e2353SSimon Glass reg = <9>; 644300e2353SSimon Glass regulator-name = "+3.3V_PANEL"; 645300e2353SSimon Glass regulator-min-microvolt = <3300000>; 646300e2353SSimon Glass regulator-max-microvolt = <3300000>; 647300e2353SSimon Glass gpio = <&pmic 4 GPIO_ACTIVE_HIGH>; 648300e2353SSimon Glass enable-active-high; 649300e2353SSimon Glass vin-supply = <&vdd_3v3_run>; 650300e2353SSimon Glass }; 651300e2353SSimon Glass 652300e2353SSimon Glass vdd_3v3_lp0: regulator@10 { 653300e2353SSimon Glass compatible = "regulator-fixed"; 654300e2353SSimon Glass reg = <10>; 655300e2353SSimon Glass regulator-name = "+3.3V_LP0"; 656300e2353SSimon Glass regulator-min-microvolt = <3300000>; 657300e2353SSimon Glass regulator-max-microvolt = <3300000>; 658300e2353SSimon Glass /* 659300e2353SSimon Glass * TODO: find a way to wire this up with the USB EHCI 660300e2353SSimon Glass * controllers so that it can be enabled on demand. 661300e2353SSimon Glass */ 662300e2353SSimon Glass regulator-always-on; 663300e2353SSimon Glass gpio = <&pmic 2 GPIO_ACTIVE_HIGH>; 664300e2353SSimon Glass enable-active-high; 665300e2353SSimon Glass vin-supply = <&vdd_3v3_sys>; 666300e2353SSimon Glass }; 667300e2353SSimon Glass 668300e2353SSimon Glass vdd_hdmi_pll: regulator@11 { 669300e2353SSimon Glass compatible = "regulator-fixed"; 670300e2353SSimon Glass reg = <11>; 671300e2353SSimon Glass regulator-name = "+1.05V_RUN_AVDD_HDMI_PLL"; 672300e2353SSimon Glass regulator-min-microvolt = <1050000>; 673300e2353SSimon Glass regulator-max-microvolt = <1050000>; 674300e2353SSimon Glass gpio = <&gpio TEGRA_GPIO(H, 7) GPIO_ACTIVE_LOW>; 675300e2353SSimon Glass vin-supply = <&vdd_1v05_run>; 676300e2353SSimon Glass }; 677300e2353SSimon Glass 678300e2353SSimon Glass vdd_5v0_hdmi: regulator@12 { 679300e2353SSimon Glass compatible = "regulator-fixed"; 680300e2353SSimon Glass reg = <12>; 681300e2353SSimon Glass regulator-name = "+5V_HDMI_CON"; 682300e2353SSimon Glass regulator-min-microvolt = <5000000>; 683300e2353SSimon Glass regulator-max-microvolt = <5000000>; 684300e2353SSimon Glass gpio = <&gpio TEGRA_GPIO(K, 6) GPIO_ACTIVE_HIGH>; 685300e2353SSimon Glass enable-active-high; 686300e2353SSimon Glass vin-supply = <&vdd_5v0_sys>; 687300e2353SSimon Glass }; 688300e2353SSimon Glass }; 689300e2353SSimon Glass 690300e2353SSimon Glass sound { 691300e2353SSimon Glass nvidia,audio-routing = 692300e2353SSimon Glass "Headphones", "HPR", 693300e2353SSimon Glass "Headphones", "HPL", 694300e2353SSimon Glass "Speakers", "SPKR", 695300e2353SSimon Glass "Speakers", "SPKL", 696300e2353SSimon Glass "Mic Jack", "MICBIAS", 697300e2353SSimon Glass "DMICL", "Int Mic", 698300e2353SSimon Glass "DMICR", "Int Mic", 699300e2353SSimon Glass "IN34", "Mic Jack"; 700300e2353SSimon Glass 701300e2353SSimon Glass nvidia,i2s-controller = <&tegra_i2s1>; 702300e2353SSimon Glass nvidia,audio-codec = <&acodec>; 703300e2353SSimon Glass 704300e2353SSimon Glass clocks = <&tegra_car TEGRA124_CLK_PLL_A>, 705300e2353SSimon Glass <&tegra_car TEGRA124_CLK_PLL_A_OUT0>, 706300e2353SSimon Glass <&tegra_car TEGRA124_CLK_EXTERN1>; 707300e2353SSimon Glass clock-names = "pll_a", "pll_a_out0", "mclk"; 708300e2353SSimon Glass 709300e2353SSimon Glass nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(I, 7) GPIO_ACTIVE_HIGH>; 710300e2353SSimon Glass nvidia,mic-det-gpios = 711300e2353SSimon Glass <&gpio TEGRA_GPIO(R, 7) GPIO_ACTIVE_HIGH>; 712300e2353SSimon Glass }; 713300e2353SSimon Glass 714300e2353SSimon Glass gpio-restart { 715300e2353SSimon Glass compatible = "gpio-restart"; 716300e2353SSimon Glass gpios = <&gpio TEGRA_GPIO(I, 5) GPIO_ACTIVE_LOW>; 717300e2353SSimon Glass priority = <200>; 718300e2353SSimon Glass }; 719300e2353SSimon Glass}; 720300e2353SSimon Glass 721300e2353SSimon Glass#include "cros-ec-keyboard.dtsi" 722