1*8a9dee7eSThierry Reding// SPDX-License-Identifier: GPL-2.0 2*8a9dee7eSThierry Reding/dts-v1/; 3*8a9dee7eSThierry Reding 4*8a9dee7eSThierry Reding#include <dt-bindings/input/linux-event-codes.h> 5*8a9dee7eSThierry Reding#include <dt-bindings/input/gpio-keys.h> 6*8a9dee7eSThierry Reding#include <dt-bindings/mfd/max77620.h> 7*8a9dee7eSThierry Reding 8*8a9dee7eSThierry Reding#include "tegra186.dtsi" 9*8a9dee7eSThierry Reding 10*8a9dee7eSThierry Reding/ { 11*8a9dee7eSThierry Reding model = "NVIDIA Jetson TX2 NX Developer Kit"; 12*8a9dee7eSThierry Reding compatible = "nvidia,p3509-0000+p3636-0001", "nvidia,tegra186"; 13*8a9dee7eSThierry Reding 14*8a9dee7eSThierry Reding aliases { 15*8a9dee7eSThierry Reding ethernet0 = "/ethernet@2490000"; 16*8a9dee7eSThierry Reding i2c0 = "/bpmp/i2c"; 17*8a9dee7eSThierry Reding i2c1 = "/i2c@3160000"; 18*8a9dee7eSThierry Reding i2c2 = "/i2c@c240000"; 19*8a9dee7eSThierry Reding i2c3 = "/i2c@3180000"; 20*8a9dee7eSThierry Reding i2c4 = "/i2c@3190000"; 21*8a9dee7eSThierry Reding i2c5 = "/i2c@31c0000"; 22*8a9dee7eSThierry Reding i2c6 = "/i2c@c250000"; 23*8a9dee7eSThierry Reding i2c7 = "/i2c@31e0000"; 24*8a9dee7eSThierry Reding mmc0 = "/mmc@3460000"; 25*8a9dee7eSThierry Reding serial0 = &uarta; 26*8a9dee7eSThierry Reding }; 27*8a9dee7eSThierry Reding 28*8a9dee7eSThierry Reding chosen { 29*8a9dee7eSThierry Reding bootargs = "earlycon console=ttyS0,115200n8"; 30*8a9dee7eSThierry Reding stdout-path = "serial0:115200n8"; 31*8a9dee7eSThierry Reding }; 32*8a9dee7eSThierry Reding 33*8a9dee7eSThierry Reding memory@80000000 { 34*8a9dee7eSThierry Reding device_type = "memory"; 35*8a9dee7eSThierry Reding reg = <0x0 0x80000000 0x0 0x70000000>; 36*8a9dee7eSThierry Reding }; 37*8a9dee7eSThierry Reding 38*8a9dee7eSThierry Reding ethernet@2490000 { 39*8a9dee7eSThierry Reding status = "okay"; 40*8a9dee7eSThierry Reding 41*8a9dee7eSThierry Reding phy-reset-gpios = <&gpio_aon TEGRA186_AON_GPIO(AA, 6) GPIO_ACTIVE_LOW>; 42*8a9dee7eSThierry Reding phy-handle = <&phy>; 43*8a9dee7eSThierry Reding phy-mode = "rgmii-id"; 44*8a9dee7eSThierry Reding 45*8a9dee7eSThierry Reding mdio { 46*8a9dee7eSThierry Reding #address-cells = <1>; 47*8a9dee7eSThierry Reding #size-cells = <0>; 48*8a9dee7eSThierry Reding 49*8a9dee7eSThierry Reding phy: phy@0 { 50*8a9dee7eSThierry Reding compatible = "ethernet-phy-ieee802.3-c22"; 51*8a9dee7eSThierry Reding reg = <0x0>; 52*8a9dee7eSThierry Reding interrupt-parent = <&gpio_aon>; 53*8a9dee7eSThierry Reding interrupts = <TEGRA186_AON_GPIO(AA, 7) IRQ_TYPE_LEVEL_LOW>; 54*8a9dee7eSThierry Reding #phy-cells = <0>; 55*8a9dee7eSThierry Reding }; 56*8a9dee7eSThierry Reding }; 57*8a9dee7eSThierry Reding }; 58*8a9dee7eSThierry Reding 59*8a9dee7eSThierry Reding memory-controller@2c00000 { 60*8a9dee7eSThierry Reding status = "okay"; 61*8a9dee7eSThierry Reding }; 62*8a9dee7eSThierry Reding 63*8a9dee7eSThierry Reding timer@3010000 { 64*8a9dee7eSThierry Reding status = "okay"; 65*8a9dee7eSThierry Reding }; 66*8a9dee7eSThierry Reding 67*8a9dee7eSThierry Reding serial@3100000 { 68*8a9dee7eSThierry Reding status = "okay"; 69*8a9dee7eSThierry Reding }; 70*8a9dee7eSThierry Reding 71*8a9dee7eSThierry Reding i2c@3160000 { 72*8a9dee7eSThierry Reding status = "okay"; 73*8a9dee7eSThierry Reding }; 74*8a9dee7eSThierry Reding 75*8a9dee7eSThierry Reding i2c@3180000 { 76*8a9dee7eSThierry Reding status = "okay"; 77*8a9dee7eSThierry Reding 78*8a9dee7eSThierry Reding power-monitor@40 { 79*8a9dee7eSThierry Reding compatible = "ti,ina3221"; 80*8a9dee7eSThierry Reding reg = <0x40>; 81*8a9dee7eSThierry Reding #address-cells = <1>; 82*8a9dee7eSThierry Reding #size-cells = <0>; 83*8a9dee7eSThierry Reding 84*8a9dee7eSThierry Reding channel@0 { 85*8a9dee7eSThierry Reding reg = <0>; 86*8a9dee7eSThierry Reding label = "VDD_IN"; 87*8a9dee7eSThierry Reding shunt-resistor-micro-ohms = <5>; 88*8a9dee7eSThierry Reding }; 89*8a9dee7eSThierry Reding 90*8a9dee7eSThierry Reding channel@1 { 91*8a9dee7eSThierry Reding reg = <1>; 92*8a9dee7eSThierry Reding label = "VDD_CPU_GPU"; 93*8a9dee7eSThierry Reding shunt-resistor-micro-ohms = <5>; 94*8a9dee7eSThierry Reding }; 95*8a9dee7eSThierry Reding 96*8a9dee7eSThierry Reding channel@2 { 97*8a9dee7eSThierry Reding reg = <2>; 98*8a9dee7eSThierry Reding label = "VDD_SOC"; 99*8a9dee7eSThierry Reding shunt-resistor-micro-ohms = <>; 100*8a9dee7eSThierry Reding }; 101*8a9dee7eSThierry Reding }; 102*8a9dee7eSThierry Reding }; 103*8a9dee7eSThierry Reding 104*8a9dee7eSThierry Reding ddc: i2c@3190000 { 105*8a9dee7eSThierry Reding status = "okay"; 106*8a9dee7eSThierry Reding }; 107*8a9dee7eSThierry Reding 108*8a9dee7eSThierry Reding i2c@31c0000 { 109*8a9dee7eSThierry Reding status = "okay"; 110*8a9dee7eSThierry Reding }; 111*8a9dee7eSThierry Reding 112*8a9dee7eSThierry Reding i2c@31e0000 { 113*8a9dee7eSThierry Reding status = "okay"; 114*8a9dee7eSThierry Reding }; 115*8a9dee7eSThierry Reding 116*8a9dee7eSThierry Reding /* SDMMC4 (eMMC) */ 117*8a9dee7eSThierry Reding mmc@3460000 { 118*8a9dee7eSThierry Reding status = "okay"; 119*8a9dee7eSThierry Reding bus-width = <8>; 120*8a9dee7eSThierry Reding non-removable; 121*8a9dee7eSThierry Reding 122*8a9dee7eSThierry Reding vqmmc-supply = <&vdd_1v8_ap>; 123*8a9dee7eSThierry Reding vmmc-supply = <&vdd_3v3_sys>; 124*8a9dee7eSThierry Reding }; 125*8a9dee7eSThierry Reding 126*8a9dee7eSThierry Reding hda@3510000 { 127*8a9dee7eSThierry Reding nvidia,model = "jetson-tx2-hda"; 128*8a9dee7eSThierry Reding status = "okay"; 129*8a9dee7eSThierry Reding }; 130*8a9dee7eSThierry Reding 131*8a9dee7eSThierry Reding padctl@3520000 { 132*8a9dee7eSThierry Reding status = "okay"; 133*8a9dee7eSThierry Reding 134*8a9dee7eSThierry Reding avdd-pll-erefeut-supply = <&vdd_1v8_pll>; 135*8a9dee7eSThierry Reding avdd-usb-supply = <&vdd_3v3_sys>; 136*8a9dee7eSThierry Reding vclamp-usb-supply = <&vdd_1v8>; 137*8a9dee7eSThierry Reding vddio-hsic-supply = <&gnd>; 138*8a9dee7eSThierry Reding 139*8a9dee7eSThierry Reding pads { 140*8a9dee7eSThierry Reding usb2 { 141*8a9dee7eSThierry Reding status = "okay"; 142*8a9dee7eSThierry Reding 143*8a9dee7eSThierry Reding lanes { 144*8a9dee7eSThierry Reding micro_b: usb2-0 { 145*8a9dee7eSThierry Reding nvidia,function = "xusb"; 146*8a9dee7eSThierry Reding status = "okay"; 147*8a9dee7eSThierry Reding }; 148*8a9dee7eSThierry Reding 149*8a9dee7eSThierry Reding usb2-1 { 150*8a9dee7eSThierry Reding nvidia,function = "xusb"; 151*8a9dee7eSThierry Reding status = "okay"; 152*8a9dee7eSThierry Reding }; 153*8a9dee7eSThierry Reding 154*8a9dee7eSThierry Reding usb2-2 { 155*8a9dee7eSThierry Reding nvidia,function = "xusb"; 156*8a9dee7eSThierry Reding status = "okay"; 157*8a9dee7eSThierry Reding }; 158*8a9dee7eSThierry Reding }; 159*8a9dee7eSThierry Reding }; 160*8a9dee7eSThierry Reding 161*8a9dee7eSThierry Reding usb3 { 162*8a9dee7eSThierry Reding status = "okay"; 163*8a9dee7eSThierry Reding 164*8a9dee7eSThierry Reding lanes { 165*8a9dee7eSThierry Reding usb3-1 { 166*8a9dee7eSThierry Reding nvidia,function = "xusb"; 167*8a9dee7eSThierry Reding status = "okay"; 168*8a9dee7eSThierry Reding }; 169*8a9dee7eSThierry Reding }; 170*8a9dee7eSThierry Reding }; 171*8a9dee7eSThierry Reding }; 172*8a9dee7eSThierry Reding 173*8a9dee7eSThierry Reding ports { 174*8a9dee7eSThierry Reding usb2-0 { 175*8a9dee7eSThierry Reding status = "okay"; 176*8a9dee7eSThierry Reding mode = "otg"; 177*8a9dee7eSThierry Reding vbus-supply = <&vdd_5v0_sys>; 178*8a9dee7eSThierry Reding usb-role-switch; 179*8a9dee7eSThierry Reding 180*8a9dee7eSThierry Reding connector { 181*8a9dee7eSThierry Reding compatible = "gpio-usb-b-connector", 182*8a9dee7eSThierry Reding "usb-b-connector"; 183*8a9dee7eSThierry Reding label = "micro-USB"; 184*8a9dee7eSThierry Reding type = "micro"; 185*8a9dee7eSThierry Reding vbus-gpios = <&gpio 186*8a9dee7eSThierry Reding TEGRA186_MAIN_GPIO(L, 4) 187*8a9dee7eSThierry Reding GPIO_ACTIVE_LOW>; 188*8a9dee7eSThierry Reding id-gpios = <&pmic 0 GPIO_ACTIVE_HIGH>; 189*8a9dee7eSThierry Reding }; 190*8a9dee7eSThierry Reding }; 191*8a9dee7eSThierry Reding 192*8a9dee7eSThierry Reding usb2-1 { 193*8a9dee7eSThierry Reding status = "okay"; 194*8a9dee7eSThierry Reding mode = "host"; 195*8a9dee7eSThierry Reding 196*8a9dee7eSThierry Reding vbus-supply = <&vdd_5v0_sys>; 197*8a9dee7eSThierry Reding }; 198*8a9dee7eSThierry Reding 199*8a9dee7eSThierry Reding usb2-2 { 200*8a9dee7eSThierry Reding status = "okay"; 201*8a9dee7eSThierry Reding mode = "host"; 202*8a9dee7eSThierry Reding 203*8a9dee7eSThierry Reding vbus-supply = <&vdd_5v0_sys>; 204*8a9dee7eSThierry Reding }; 205*8a9dee7eSThierry Reding 206*8a9dee7eSThierry Reding usb3-1 { 207*8a9dee7eSThierry Reding nvidia,usb2-companion = <1>; 208*8a9dee7eSThierry Reding vbus-supply = <&vdd_5v0_sys>; 209*8a9dee7eSThierry Reding status = "okay"; 210*8a9dee7eSThierry Reding }; 211*8a9dee7eSThierry Reding }; 212*8a9dee7eSThierry Reding }; 213*8a9dee7eSThierry Reding 214*8a9dee7eSThierry Reding usb@3530000 { 215*8a9dee7eSThierry Reding status = "okay"; 216*8a9dee7eSThierry Reding 217*8a9dee7eSThierry Reding phys = <&{/padctl@3520000/pads/usb2/lanes/usb2-0}>, 218*8a9dee7eSThierry Reding <&{/padctl@3520000/pads/usb2/lanes/usb2-1}>, 219*8a9dee7eSThierry Reding <&{/padctl@3520000/pads/usb2/lanes/usb2-2}>, 220*8a9dee7eSThierry Reding <&{/padctl@3520000/pads/usb3/lanes/usb3-1}>; 221*8a9dee7eSThierry Reding phy-names = "usb2-0", "usb2-1", "usb2-2", "usb3-1"; 222*8a9dee7eSThierry Reding }; 223*8a9dee7eSThierry Reding 224*8a9dee7eSThierry Reding usb@3550000 { 225*8a9dee7eSThierry Reding status = "okay"; 226*8a9dee7eSThierry Reding 227*8a9dee7eSThierry Reding phys = <µ_b>; 228*8a9dee7eSThierry Reding phy-names = "usb2-0"; 229*8a9dee7eSThierry Reding }; 230*8a9dee7eSThierry Reding 231*8a9dee7eSThierry Reding hsp@3c00000 { 232*8a9dee7eSThierry Reding status = "okay"; 233*8a9dee7eSThierry Reding }; 234*8a9dee7eSThierry Reding 235*8a9dee7eSThierry Reding i2c@c240000 { 236*8a9dee7eSThierry Reding status = "okay"; 237*8a9dee7eSThierry Reding }; 238*8a9dee7eSThierry Reding 239*8a9dee7eSThierry Reding i2c@c250000 { 240*8a9dee7eSThierry Reding status = "okay"; 241*8a9dee7eSThierry Reding 242*8a9dee7eSThierry Reding /* module ID EEPROM */ 243*8a9dee7eSThierry Reding eeprom@50 { 244*8a9dee7eSThierry Reding compatible = "atmel,24c02"; 245*8a9dee7eSThierry Reding reg = <0x50>; 246*8a9dee7eSThierry Reding 247*8a9dee7eSThierry Reding label = "module"; 248*8a9dee7eSThierry Reding vcc-supply = <&vdd_1v8>; 249*8a9dee7eSThierry Reding address-width = <8>; 250*8a9dee7eSThierry Reding pagesize = <8>; 251*8a9dee7eSThierry Reding size = <256>; 252*8a9dee7eSThierry Reding read-only; 253*8a9dee7eSThierry Reding }; 254*8a9dee7eSThierry Reding 255*8a9dee7eSThierry Reding /* carrier board ID EEPROM */ 256*8a9dee7eSThierry Reding eeprom@57 { 257*8a9dee7eSThierry Reding compatible = "atmel,24c02"; 258*8a9dee7eSThierry Reding reg = <0x57>; 259*8a9dee7eSThierry Reding 260*8a9dee7eSThierry Reding label = "system"; 261*8a9dee7eSThierry Reding vcc-supply = <&vdd_1v8>; 262*8a9dee7eSThierry Reding address-width = <8>; 263*8a9dee7eSThierry Reding pagesize = <8>; 264*8a9dee7eSThierry Reding size = <256>; 265*8a9dee7eSThierry Reding read-only; 266*8a9dee7eSThierry Reding }; 267*8a9dee7eSThierry Reding }; 268*8a9dee7eSThierry Reding 269*8a9dee7eSThierry Reding rtc@c2a0000 { 270*8a9dee7eSThierry Reding status = "okay"; 271*8a9dee7eSThierry Reding }; 272*8a9dee7eSThierry Reding 273*8a9dee7eSThierry Reding pwm@c340000 { 274*8a9dee7eSThierry Reding status = "okay"; 275*8a9dee7eSThierry Reding }; 276*8a9dee7eSThierry Reding 277*8a9dee7eSThierry Reding pmc@c360000 { 278*8a9dee7eSThierry Reding nvidia,invert-interrupt; 279*8a9dee7eSThierry Reding }; 280*8a9dee7eSThierry Reding 281*8a9dee7eSThierry Reding pcie@10003000 { 282*8a9dee7eSThierry Reding status = "okay"; 283*8a9dee7eSThierry Reding 284*8a9dee7eSThierry Reding dvdd-pex-supply = <&vdd_pex>; 285*8a9dee7eSThierry Reding hvdd-pex-pll-supply = <&vdd_1v8>; 286*8a9dee7eSThierry Reding hvdd-pex-supply = <&vdd_1v8>; 287*8a9dee7eSThierry Reding vddio-pexctl-aud-supply = <&vdd_1v8>; 288*8a9dee7eSThierry Reding 289*8a9dee7eSThierry Reding pci@1,0 { 290*8a9dee7eSThierry Reding nvidia,num-lanes = <2>; 291*8a9dee7eSThierry Reding status = "okay"; 292*8a9dee7eSThierry Reding }; 293*8a9dee7eSThierry Reding 294*8a9dee7eSThierry Reding pci@2,0 { 295*8a9dee7eSThierry Reding nvidia,num-lanes = <1>; 296*8a9dee7eSThierry Reding status = "disabled"; 297*8a9dee7eSThierry Reding }; 298*8a9dee7eSThierry Reding 299*8a9dee7eSThierry Reding pci@3,0 { 300*8a9dee7eSThierry Reding nvidia,num-lanes = <1>; 301*8a9dee7eSThierry Reding status = "okay"; 302*8a9dee7eSThierry Reding }; 303*8a9dee7eSThierry Reding }; 304*8a9dee7eSThierry Reding 305*8a9dee7eSThierry Reding host1x@13e00000 { 306*8a9dee7eSThierry Reding status = "okay"; 307*8a9dee7eSThierry Reding 308*8a9dee7eSThierry Reding dpaux@15040000 { 309*8a9dee7eSThierry Reding status = "okay"; 310*8a9dee7eSThierry Reding }; 311*8a9dee7eSThierry Reding 312*8a9dee7eSThierry Reding display-hub@15200000 { 313*8a9dee7eSThierry Reding status = "okay"; 314*8a9dee7eSThierry Reding }; 315*8a9dee7eSThierry Reding 316*8a9dee7eSThierry Reding dsi@15300000 { 317*8a9dee7eSThierry Reding status = "disabled"; 318*8a9dee7eSThierry Reding }; 319*8a9dee7eSThierry Reding 320*8a9dee7eSThierry Reding /* DP */ 321*8a9dee7eSThierry Reding sor@15540000 { 322*8a9dee7eSThierry Reding status = "okay"; 323*8a9dee7eSThierry Reding 324*8a9dee7eSThierry Reding avdd-io-hdmi-dp-supply = <&vdd_hdmi_1v05>; 325*8a9dee7eSThierry Reding vdd-hdmi-dp-pll-supply = <&vdd_1v8_ap>; 326*8a9dee7eSThierry Reding 327*8a9dee7eSThierry Reding nvidia,dpaux = <&dpaux>; 328*8a9dee7eSThierry Reding }; 329*8a9dee7eSThierry Reding 330*8a9dee7eSThierry Reding /* HDMI */ 331*8a9dee7eSThierry Reding sor@15580000 { 332*8a9dee7eSThierry Reding status = "okay"; 333*8a9dee7eSThierry Reding 334*8a9dee7eSThierry Reding avdd-io-hdmi-dp-supply = <&vdd_hdmi_1v05>; 335*8a9dee7eSThierry Reding vdd-hdmi-dp-pll-supply = <&vdd_1v8_ap>; 336*8a9dee7eSThierry Reding hdmi-supply = <&vdd_hdmi>; 337*8a9dee7eSThierry Reding 338*8a9dee7eSThierry Reding nvidia,ddc-i2c-bus = <&ddc>; 339*8a9dee7eSThierry Reding nvidia,hpd-gpio = <&gpio TEGRA186_MAIN_GPIO(P, 1) 340*8a9dee7eSThierry Reding GPIO_ACTIVE_LOW>; 341*8a9dee7eSThierry Reding }; 342*8a9dee7eSThierry Reding 343*8a9dee7eSThierry Reding dpaux@155c0000 { 344*8a9dee7eSThierry Reding status = "okay"; 345*8a9dee7eSThierry Reding }; 346*8a9dee7eSThierry Reding }; 347*8a9dee7eSThierry Reding 348*8a9dee7eSThierry Reding gpu@17000000 { 349*8a9dee7eSThierry Reding status = "okay"; 350*8a9dee7eSThierry Reding }; 351*8a9dee7eSThierry Reding 352*8a9dee7eSThierry Reding fan: fan { 353*8a9dee7eSThierry Reding compatible = "pwm-fan"; 354*8a9dee7eSThierry Reding pwms = <&pwm4 0 45334>; 355*8a9dee7eSThierry Reding 356*8a9dee7eSThierry Reding cooling-levels = <0 64 128 255>; 357*8a9dee7eSThierry Reding #cooling-cells = <2>; 358*8a9dee7eSThierry Reding }; 359*8a9dee7eSThierry Reding 360*8a9dee7eSThierry Reding gpio-keys { 361*8a9dee7eSThierry Reding compatible = "gpio-keys"; 362*8a9dee7eSThierry Reding 363*8a9dee7eSThierry Reding power { 364*8a9dee7eSThierry Reding label = "Power"; 365*8a9dee7eSThierry Reding gpios = <&gpio_aon TEGRA186_AON_GPIO(FF, 0) 366*8a9dee7eSThierry Reding GPIO_ACTIVE_LOW>; 367*8a9dee7eSThierry Reding linux,input-type = <EV_KEY>; 368*8a9dee7eSThierry Reding linux,code = <KEY_POWER>; 369*8a9dee7eSThierry Reding debounce-interval = <10>; 370*8a9dee7eSThierry Reding wakeup-event-action = <EV_ACT_ASSERTED>; 371*8a9dee7eSThierry Reding wakeup-source; 372*8a9dee7eSThierry Reding }; 373*8a9dee7eSThierry Reding 374*8a9dee7eSThierry Reding volume-up { 375*8a9dee7eSThierry Reding label = "Volume Up"; 376*8a9dee7eSThierry Reding gpios = <&gpio_aon TEGRA186_AON_GPIO(FF, 1) 377*8a9dee7eSThierry Reding GPIO_ACTIVE_LOW>; 378*8a9dee7eSThierry Reding linux,input-type = <EV_KEY>; 379*8a9dee7eSThierry Reding linux,code = <KEY_VOLUMEUP>; 380*8a9dee7eSThierry Reding debounce-interval = <10>; 381*8a9dee7eSThierry Reding }; 382*8a9dee7eSThierry Reding 383*8a9dee7eSThierry Reding volume-down { 384*8a9dee7eSThierry Reding label = "Volume Down"; 385*8a9dee7eSThierry Reding gpios = <&gpio_aon TEGRA186_AON_GPIO(FF, 2) 386*8a9dee7eSThierry Reding GPIO_ACTIVE_LOW>; 387*8a9dee7eSThierry Reding linux,input-type = <EV_KEY>; 388*8a9dee7eSThierry Reding linux,code = <KEY_VOLUMEDOWN>; 389*8a9dee7eSThierry Reding debounce-interval = <10>; 390*8a9dee7eSThierry Reding }; 391*8a9dee7eSThierry Reding }; 392*8a9dee7eSThierry Reding 393*8a9dee7eSThierry Reding cpus { 394*8a9dee7eSThierry Reding cpu@0 { 395*8a9dee7eSThierry Reding enable-method = "psci"; 396*8a9dee7eSThierry Reding }; 397*8a9dee7eSThierry Reding 398*8a9dee7eSThierry Reding cpu@1 { 399*8a9dee7eSThierry Reding enable-method = "psci"; 400*8a9dee7eSThierry Reding }; 401*8a9dee7eSThierry Reding 402*8a9dee7eSThierry Reding cpu@2 { 403*8a9dee7eSThierry Reding enable-method = "psci"; 404*8a9dee7eSThierry Reding }; 405*8a9dee7eSThierry Reding 406*8a9dee7eSThierry Reding cpu@3 { 407*8a9dee7eSThierry Reding enable-method = "psci"; 408*8a9dee7eSThierry Reding }; 409*8a9dee7eSThierry Reding 410*8a9dee7eSThierry Reding cpu@4 { 411*8a9dee7eSThierry Reding enable-method = "psci"; 412*8a9dee7eSThierry Reding }; 413*8a9dee7eSThierry Reding 414*8a9dee7eSThierry Reding cpu@5 { 415*8a9dee7eSThierry Reding enable-method = "psci"; 416*8a9dee7eSThierry Reding }; 417*8a9dee7eSThierry Reding }; 418*8a9dee7eSThierry Reding 419*8a9dee7eSThierry Reding bpmp { 420*8a9dee7eSThierry Reding i2c { 421*8a9dee7eSThierry Reding status = "okay"; 422*8a9dee7eSThierry Reding 423*8a9dee7eSThierry Reding pmic: pmic@3c { 424*8a9dee7eSThierry Reding compatible = "maxim,max77620"; 425*8a9dee7eSThierry Reding reg = <0x3c>; 426*8a9dee7eSThierry Reding 427*8a9dee7eSThierry Reding interrupt-parent = <&pmc>; 428*8a9dee7eSThierry Reding interrupts = <24 IRQ_TYPE_LEVEL_LOW>; 429*8a9dee7eSThierry Reding #interrupt-cells = <2>; 430*8a9dee7eSThierry Reding interrupt-controller; 431*8a9dee7eSThierry Reding 432*8a9dee7eSThierry Reding #gpio-cells = <2>; 433*8a9dee7eSThierry Reding gpio-controller; 434*8a9dee7eSThierry Reding 435*8a9dee7eSThierry Reding pinctrl-names = "default"; 436*8a9dee7eSThierry Reding pinctrl-0 = <&max77620_default>; 437*8a9dee7eSThierry Reding 438*8a9dee7eSThierry Reding max77620_default: pinmux { 439*8a9dee7eSThierry Reding gpio0 { 440*8a9dee7eSThierry Reding pins = "gpio0"; 441*8a9dee7eSThierry Reding function = "gpio"; 442*8a9dee7eSThierry Reding }; 443*8a9dee7eSThierry Reding 444*8a9dee7eSThierry Reding gpio1 { 445*8a9dee7eSThierry Reding pins = "gpio1"; 446*8a9dee7eSThierry Reding function = "fps-out"; 447*8a9dee7eSThierry Reding maxim,active-fps-source = <MAX77620_FPS_SRC_0>; 448*8a9dee7eSThierry Reding }; 449*8a9dee7eSThierry Reding 450*8a9dee7eSThierry Reding gpio2 { 451*8a9dee7eSThierry Reding pins = "gpio2"; 452*8a9dee7eSThierry Reding function = "fps-out"; 453*8a9dee7eSThierry Reding maxim,active-fps-source = <MAX77620_FPS_SRC_1>; 454*8a9dee7eSThierry Reding }; 455*8a9dee7eSThierry Reding 456*8a9dee7eSThierry Reding gpio3 { 457*8a9dee7eSThierry Reding pins = "gpio3"; 458*8a9dee7eSThierry Reding function = "fps-out"; 459*8a9dee7eSThierry Reding maxim,active-fps-source = <MAX77620_FPS_SRC_1>; 460*8a9dee7eSThierry Reding }; 461*8a9dee7eSThierry Reding 462*8a9dee7eSThierry Reding gpio4 { 463*8a9dee7eSThierry Reding pins = "gpio4"; 464*8a9dee7eSThierry Reding function = "32k-out1"; 465*8a9dee7eSThierry Reding drive-push-pull = <1>; 466*8a9dee7eSThierry Reding }; 467*8a9dee7eSThierry Reding 468*8a9dee7eSThierry Reding gpio5 { 469*8a9dee7eSThierry Reding pins = "gpio5"; 470*8a9dee7eSThierry Reding function = "gpio"; 471*8a9dee7eSThierry Reding drive-push-pull = <0>; 472*8a9dee7eSThierry Reding }; 473*8a9dee7eSThierry Reding 474*8a9dee7eSThierry Reding gpio6 { 475*8a9dee7eSThierry Reding pins = "gpio6"; 476*8a9dee7eSThierry Reding function = "gpio"; 477*8a9dee7eSThierry Reding drive-push-pull = <1>; 478*8a9dee7eSThierry Reding }; 479*8a9dee7eSThierry Reding 480*8a9dee7eSThierry Reding gpio7 { 481*8a9dee7eSThierry Reding pins = "gpio7"; 482*8a9dee7eSThierry Reding function = "gpio"; 483*8a9dee7eSThierry Reding drive-push-pull = <1>; 484*8a9dee7eSThierry Reding }; 485*8a9dee7eSThierry Reding }; 486*8a9dee7eSThierry Reding 487*8a9dee7eSThierry Reding fps { 488*8a9dee7eSThierry Reding fps0 { 489*8a9dee7eSThierry Reding maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN0>; 490*8a9dee7eSThierry Reding maxim,shutdown-fps-time-period-us = <640>; 491*8a9dee7eSThierry Reding }; 492*8a9dee7eSThierry Reding 493*8a9dee7eSThierry Reding fps1 { 494*8a9dee7eSThierry Reding maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN1>; 495*8a9dee7eSThierry Reding maxim,shutdown-fps-time-period-us = <640>; 496*8a9dee7eSThierry Reding }; 497*8a9dee7eSThierry Reding 498*8a9dee7eSThierry Reding fps2 { 499*8a9dee7eSThierry Reding maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN0>; 500*8a9dee7eSThierry Reding maxim,shutdown-fps-time-period-us = <640>; 501*8a9dee7eSThierry Reding }; 502*8a9dee7eSThierry Reding }; 503*8a9dee7eSThierry Reding 504*8a9dee7eSThierry Reding regulators { 505*8a9dee7eSThierry Reding in-sd0-supply = <&vdd_5v0_sys>; 506*8a9dee7eSThierry Reding in-sd1-supply = <&vdd_5v0_sys>; 507*8a9dee7eSThierry Reding in-sd2-supply = <&vdd_5v0_sys>; 508*8a9dee7eSThierry Reding in-sd3-supply = <&vdd_5v0_sys>; 509*8a9dee7eSThierry Reding 510*8a9dee7eSThierry Reding in-ldo0-1-supply = <&vdd_5v0_sys>; 511*8a9dee7eSThierry Reding in-ldo2-supply = <&vdd_5v0_sys>; 512*8a9dee7eSThierry Reding in-ldo3-5-supply = <&vdd_5v0_sys>; 513*8a9dee7eSThierry Reding in-ldo4-6-supply = <&vdd_1v8>; 514*8a9dee7eSThierry Reding in-ldo7-8-supply = <&avdd_dsi_csi>; 515*8a9dee7eSThierry Reding 516*8a9dee7eSThierry Reding sd0 { 517*8a9dee7eSThierry Reding regulator-name = "VDD_DDR_1V1_PMIC"; 518*8a9dee7eSThierry Reding regulator-min-microvolt = <1100000>; 519*8a9dee7eSThierry Reding regulator-max-microvolt = <1100000>; 520*8a9dee7eSThierry Reding regulator-always-on; 521*8a9dee7eSThierry Reding regulator-boot-on; 522*8a9dee7eSThierry Reding }; 523*8a9dee7eSThierry Reding 524*8a9dee7eSThierry Reding avdd_dsi_csi: sd1 { 525*8a9dee7eSThierry Reding regulator-name = "AVDD_DSI_CSI_1V2"; 526*8a9dee7eSThierry Reding regulator-min-microvolt = <1200000>; 527*8a9dee7eSThierry Reding regulator-max-microvolt = <1200000>; 528*8a9dee7eSThierry Reding }; 529*8a9dee7eSThierry Reding 530*8a9dee7eSThierry Reding vdd_1v8: sd2 { 531*8a9dee7eSThierry Reding regulator-name = "VDD_1V8"; 532*8a9dee7eSThierry Reding regulator-min-microvolt = <1800000>; 533*8a9dee7eSThierry Reding regulator-max-microvolt = <1800000>; 534*8a9dee7eSThierry Reding }; 535*8a9dee7eSThierry Reding 536*8a9dee7eSThierry Reding vdd_3v3_sys: sd3 { 537*8a9dee7eSThierry Reding regulator-name = "VDD_3V3_SYS"; 538*8a9dee7eSThierry Reding regulator-min-microvolt = <3300000>; 539*8a9dee7eSThierry Reding regulator-max-microvolt = <3300000>; 540*8a9dee7eSThierry Reding }; 541*8a9dee7eSThierry Reding 542*8a9dee7eSThierry Reding vdd_1v8_pll: ldo0 { 543*8a9dee7eSThierry Reding regulator-name = "VDD_1V8_AP_PLL"; 544*8a9dee7eSThierry Reding regulator-min-microvolt = <1800000>; 545*8a9dee7eSThierry Reding regulator-max-microvolt = <1800000>; 546*8a9dee7eSThierry Reding }; 547*8a9dee7eSThierry Reding 548*8a9dee7eSThierry Reding ldo2 { 549*8a9dee7eSThierry Reding regulator-name = "VDDIO_3V3_AOHV"; 550*8a9dee7eSThierry Reding regulator-min-microvolt = <3300000>; 551*8a9dee7eSThierry Reding regulator-max-microvolt = <3300000>; 552*8a9dee7eSThierry Reding regulator-always-on; 553*8a9dee7eSThierry Reding regulator-boot-on; 554*8a9dee7eSThierry Reding }; 555*8a9dee7eSThierry Reding 556*8a9dee7eSThierry Reding vddio_sdmmc1: ldo3 { 557*8a9dee7eSThierry Reding regulator-name = "VDDIO_SDMMC1_AP"; 558*8a9dee7eSThierry Reding regulator-min-microvolt = <1800000>; 559*8a9dee7eSThierry Reding regulator-max-microvolt = <3300000>; 560*8a9dee7eSThierry Reding }; 561*8a9dee7eSThierry Reding 562*8a9dee7eSThierry Reding ldo4 { 563*8a9dee7eSThierry Reding regulator-name = "VDD_RTC"; 564*8a9dee7eSThierry Reding regulator-min-microvolt = <1000000>; 565*8a9dee7eSThierry Reding regulator-max-microvolt = <1000000>; 566*8a9dee7eSThierry Reding }; 567*8a9dee7eSThierry Reding 568*8a9dee7eSThierry Reding vddio_sdmmc3: ldo5 { 569*8a9dee7eSThierry Reding regulator-name = "VDDIO_SDMMC3_AP"; 570*8a9dee7eSThierry Reding regulator-min-microvolt = <2800000>; 571*8a9dee7eSThierry Reding regulator-max-microvolt = <2800000>; 572*8a9dee7eSThierry Reding }; 573*8a9dee7eSThierry Reding 574*8a9dee7eSThierry Reding vdd_hdmi_1v05: ldo7 { 575*8a9dee7eSThierry Reding regulator-name = "VDD_HDMI_1V05"; 576*8a9dee7eSThierry Reding regulator-min-microvolt = <1050000>; 577*8a9dee7eSThierry Reding regulator-max-microvolt = <1050000>; 578*8a9dee7eSThierry Reding }; 579*8a9dee7eSThierry Reding 580*8a9dee7eSThierry Reding vdd_pex: ldo8 { 581*8a9dee7eSThierry Reding regulator-name = "VDD_PEX_1V05"; 582*8a9dee7eSThierry Reding regulator-min-microvolt = <1050000>; 583*8a9dee7eSThierry Reding regulator-max-microvolt = <1050000>; 584*8a9dee7eSThierry Reding }; 585*8a9dee7eSThierry Reding }; 586*8a9dee7eSThierry Reding }; 587*8a9dee7eSThierry Reding }; 588*8a9dee7eSThierry Reding }; 589*8a9dee7eSThierry Reding 590*8a9dee7eSThierry Reding psci { 591*8a9dee7eSThierry Reding compatible = "arm,psci-1.0"; 592*8a9dee7eSThierry Reding status = "okay"; 593*8a9dee7eSThierry Reding method = "smc"; 594*8a9dee7eSThierry Reding }; 595*8a9dee7eSThierry Reding 596*8a9dee7eSThierry Reding gnd: regulator@0 { 597*8a9dee7eSThierry Reding compatible = "regulator-fixed"; 598*8a9dee7eSThierry Reding regulator-name = "GND"; 599*8a9dee7eSThierry Reding regulator-min-microvolt = <0>; 600*8a9dee7eSThierry Reding regulator-max-microvolt = <0>; 601*8a9dee7eSThierry Reding regulator-always-on; 602*8a9dee7eSThierry Reding regulator-boot-on; 603*8a9dee7eSThierry Reding }; 604*8a9dee7eSThierry Reding 605*8a9dee7eSThierry Reding vdd_5v0_sys: regulator@1 { 606*8a9dee7eSThierry Reding compatible = "regulator-fixed"; 607*8a9dee7eSThierry Reding regulator-name = "VDD_5V0_SYS"; 608*8a9dee7eSThierry Reding regulator-min-microvolt = <5000000>; 609*8a9dee7eSThierry Reding regulator-max-microvolt = <5000000>; 610*8a9dee7eSThierry Reding regulator-always-on; 611*8a9dee7eSThierry Reding regulator-boot-on; 612*8a9dee7eSThierry Reding }; 613*8a9dee7eSThierry Reding 614*8a9dee7eSThierry Reding vdd_1v8_ap: regulator@2 { 615*8a9dee7eSThierry Reding compatible = "regulator-fixed"; 616*8a9dee7eSThierry Reding regulator-name = "VDD_1V8_AP"; 617*8a9dee7eSThierry Reding regulator-min-microvolt = <1800000>; 618*8a9dee7eSThierry Reding regulator-max-microvolt = <1800000>; 619*8a9dee7eSThierry Reding 620*8a9dee7eSThierry Reding gpio = <&pmic 1 GPIO_ACTIVE_HIGH>; 621*8a9dee7eSThierry Reding enable-active-high; 622*8a9dee7eSThierry Reding 623*8a9dee7eSThierry Reding vin-supply = <&vdd_1v8>; 624*8a9dee7eSThierry Reding }; 625*8a9dee7eSThierry Reding 626*8a9dee7eSThierry Reding vdd_hdmi: regulator@3 { 627*8a9dee7eSThierry Reding compatible = "regulator-fixed"; 628*8a9dee7eSThierry Reding regulator-name = "VDD_5V0_HDMI_CON"; 629*8a9dee7eSThierry Reding regulator-min-microvolt = <5000000>; 630*8a9dee7eSThierry Reding regulator-max-microvolt = <5000000>; 631*8a9dee7eSThierry Reding 632*8a9dee7eSThierry Reding vin-supply = <&vdd_5v0_sys>; 633*8a9dee7eSThierry Reding }; 634*8a9dee7eSThierry Reding 635*8a9dee7eSThierry Reding thermal-zones { 636*8a9dee7eSThierry Reding cpu { 637*8a9dee7eSThierry Reding polling-delay = <0>; 638*8a9dee7eSThierry Reding polling-delay-passive = <500>; 639*8a9dee7eSThierry Reding status = "okay"; 640*8a9dee7eSThierry Reding 641*8a9dee7eSThierry Reding trips { 642*8a9dee7eSThierry Reding cpu_trip_critical: critical { 643*8a9dee7eSThierry Reding temperature = <96500>; 644*8a9dee7eSThierry Reding hysteresis = <0>; 645*8a9dee7eSThierry Reding type = "critical"; 646*8a9dee7eSThierry Reding }; 647*8a9dee7eSThierry Reding 648*8a9dee7eSThierry Reding cpu_trip_hot: hot { 649*8a9dee7eSThierry Reding temperature = <79000>; 650*8a9dee7eSThierry Reding hysteresis = <2000>; 651*8a9dee7eSThierry Reding type = "hot"; 652*8a9dee7eSThierry Reding }; 653*8a9dee7eSThierry Reding 654*8a9dee7eSThierry Reding cpu_trip_active: active { 655*8a9dee7eSThierry Reding temperature = <62000>; 656*8a9dee7eSThierry Reding hysteresis = <2000>; 657*8a9dee7eSThierry Reding type = "active"; 658*8a9dee7eSThierry Reding }; 659*8a9dee7eSThierry Reding 660*8a9dee7eSThierry Reding cpu_trip_passive: passive { 661*8a9dee7eSThierry Reding temperature = <45000>; 662*8a9dee7eSThierry Reding hysteresis = <2000>; 663*8a9dee7eSThierry Reding type = "passive"; 664*8a9dee7eSThierry Reding }; 665*8a9dee7eSThierry Reding }; 666*8a9dee7eSThierry Reding 667*8a9dee7eSThierry Reding cooling-maps { 668*8a9dee7eSThierry Reding cpu-critical { 669*8a9dee7eSThierry Reding cooling-device = <&fan 3 3>; 670*8a9dee7eSThierry Reding trip = <&cpu_trip_critical>; 671*8a9dee7eSThierry Reding }; 672*8a9dee7eSThierry Reding 673*8a9dee7eSThierry Reding cpu-hot { 674*8a9dee7eSThierry Reding cooling-device = <&fan 2 2>; 675*8a9dee7eSThierry Reding trip = <&cpu_trip_hot>; 676*8a9dee7eSThierry Reding }; 677*8a9dee7eSThierry Reding 678*8a9dee7eSThierry Reding cpu-active { 679*8a9dee7eSThierry Reding cooling-device = <&fan 1 1>; 680*8a9dee7eSThierry Reding trip = <&cpu_trip_active>; 681*8a9dee7eSThierry Reding }; 682*8a9dee7eSThierry Reding 683*8a9dee7eSThierry Reding cpu-passive { 684*8a9dee7eSThierry Reding cooling-device = <&fan 0 0>; 685*8a9dee7eSThierry Reding trip = <&cpu_trip_passive>; 686*8a9dee7eSThierry Reding }; 687*8a9dee7eSThierry Reding }; 688*8a9dee7eSThierry Reding }; 689*8a9dee7eSThierry Reding 690*8a9dee7eSThierry Reding gpu { 691*8a9dee7eSThierry Reding polling-delay = <0>; 692*8a9dee7eSThierry Reding polling-delay-passive = <500>; 693*8a9dee7eSThierry Reding status = "okay"; 694*8a9dee7eSThierry Reding 695*8a9dee7eSThierry Reding trips { 696*8a9dee7eSThierry Reding gpu_alert0: critical { 697*8a9dee7eSThierry Reding temperature = <99000>; 698*8a9dee7eSThierry Reding hysteresis = <0>; 699*8a9dee7eSThierry Reding type = "critical"; 700*8a9dee7eSThierry Reding }; 701*8a9dee7eSThierry Reding }; 702*8a9dee7eSThierry Reding }; 703*8a9dee7eSThierry Reding 704*8a9dee7eSThierry Reding aux { 705*8a9dee7eSThierry Reding polling-delay = <0>; 706*8a9dee7eSThierry Reding polling-delay-passive = <500>; 707*8a9dee7eSThierry Reding status = "okay"; 708*8a9dee7eSThierry Reding 709*8a9dee7eSThierry Reding trips { 710*8a9dee7eSThierry Reding aux_alert0: critical { 711*8a9dee7eSThierry Reding temperature = <90000>; 712*8a9dee7eSThierry Reding hysteresis = <0>; 713*8a9dee7eSThierry Reding type = "critical"; 714*8a9dee7eSThierry Reding }; 715*8a9dee7eSThierry Reding }; 716*8a9dee7eSThierry Reding }; 717*8a9dee7eSThierry Reding }; 718*8a9dee7eSThierry Reding}; 719