1// SPDX-License-Identifier: GPL-2.0 2#include "tegra186.dtsi" 3 4#include <dt-bindings/mfd/max77620.h> 5 6/ { 7 model = "NVIDIA Jetson TX2"; 8 compatible = "nvidia,p3310", "nvidia,tegra186"; 9 10 aliases { 11 ethernet0 = "/ethernet@2490000"; 12 i2c0 = "/bpmp/i2c"; 13 i2c1 = "/i2c@3160000"; 14 i2c2 = "/i2c@c240000"; 15 i2c3 = "/i2c@3180000"; 16 i2c4 = "/i2c@3190000"; 17 i2c5 = "/i2c@31c0000"; 18 i2c6 = "/i2c@c250000"; 19 i2c7 = "/i2c@31e0000"; 20 mmc0 = "/mmc@3460000"; 21 mmc1 = "/mmc@3400000"; 22 serial0 = &uarta; 23 }; 24 25 chosen { 26 bootargs = "earlycon console=ttyS0,115200n8"; 27 stdout-path = "serial0:115200n8"; 28 }; 29 30 memory@80000000 { 31 device_type = "memory"; 32 reg = <0x0 0x80000000 0x2 0x00000000>; 33 }; 34 35 ethernet@2490000 { 36 status = "okay"; 37 38 phy-reset-gpios = <&gpio TEGRA186_MAIN_GPIO(M, 4) 39 GPIO_ACTIVE_LOW>; 40 phy-handle = <&phy>; 41 phy-mode = "rgmii"; 42 43 mdio { 44 #address-cells = <1>; 45 #size-cells = <0>; 46 47 phy: phy@0 { 48 compatible = "ethernet-phy-ieee802.3-c22"; 49 reg = <0x0>; 50 interrupt-parent = <&gpio>; 51 interrupts = <TEGRA186_MAIN_GPIO(M, 5) 52 IRQ_TYPE_LEVEL_LOW>; 53 54 #phy-cells = <0>; 55 }; 56 }; 57 }; 58 59 memory-controller@2c00000 { 60 status = "okay"; 61 }; 62 63 serial@3100000 { 64 status = "okay"; 65 }; 66 67 i2c@3160000 { 68 status = "okay"; 69 70 power-monitor@40 { 71 compatible = "ti,ina3221"; 72 reg = <0x40>; 73 #address-cells = <1>; 74 #size-cells = <0>; 75 76 channel@0 { 77 reg = <0x0>; 78 label = "VDD_SYS_GPU"; 79 shunt-resistor-micro-ohms = <10000>; 80 }; 81 82 channel@1 { 83 reg = <0x1>; 84 label = "VDD_SYS_SOC"; 85 shunt-resistor-micro-ohms = <10000>; 86 }; 87 88 channel@2 { 89 reg = <0x2>; 90 label = "VDD_3V8_WIFI"; 91 shunt-resistor-micro-ohms = <10000>; 92 }; 93 }; 94 95 power-monitor@41 { 96 compatible = "ti,ina3221"; 97 reg = <0x41>; 98 #address-cells = <1>; 99 #size-cells = <0>; 100 101 channel@0 { 102 reg = <0x0>; 103 label = "VDD_IN"; 104 shunt-resistor-micro-ohms = <5000>; 105 }; 106 107 channel@1 { 108 reg = <0x1>; 109 label = "VDD_SYS_CPU"; 110 shunt-resistor-micro-ohms = <10000>; 111 }; 112 113 channel@2 { 114 reg = <0x2>; 115 label = "VDD_5V0_DDR"; 116 shunt-resistor-micro-ohms = <10000>; 117 }; 118 }; 119 }; 120 121 i2c@3180000 { 122 status = "okay"; 123 }; 124 125 ddc: i2c@3190000 { 126 status = "okay"; 127 }; 128 129 i2c@31c0000 { 130 status = "okay"; 131 }; 132 133 i2c@31e0000 { 134 status = "okay"; 135 }; 136 137 /* SDMMC1 (SD/MMC) */ 138 mmc@3400000 { 139 cd-gpios = <&gpio TEGRA186_MAIN_GPIO(P, 5) GPIO_ACTIVE_LOW>; 140 wp-gpios = <&gpio TEGRA186_MAIN_GPIO(P, 4) GPIO_ACTIVE_HIGH>; 141 142 vqmmc-supply = <&vddio_sdmmc1>; 143 }; 144 145 /* SDMMC3 (SDIO) */ 146 mmc@3440000 { 147 status = "okay"; 148 }; 149 150 /* SDMMC4 (eMMC) */ 151 mmc@3460000 { 152 status = "okay"; 153 bus-width = <8>; 154 non-removable; 155 156 vqmmc-supply = <&vdd_1v8_ap>; 157 vmmc-supply = <&vdd_3v3_sys>; 158 }; 159 160 hsp@3c00000 { 161 status = "okay"; 162 }; 163 164 i2c@c240000 { 165 status = "okay"; 166 }; 167 168 i2c@c250000 { 169 status = "okay"; 170 171 /* module ID EEPROM */ 172 eeprom@50 { 173 compatible = "atmel,24c02"; 174 reg = <0x50>; 175 176 vcc-supply = <&vdd_1v8>; 177 address-width = <8>; 178 pagesize = <8>; 179 size = <256>; 180 read-only; 181 }; 182 }; 183 184 rtc@c2a0000 { 185 status = "okay"; 186 }; 187 188 pmc@c360000 { 189 nvidia,invert-interrupt; 190 }; 191 192 cpus { 193 cpu@0 { 194 enable-method = "psci"; 195 }; 196 197 cpu@1 { 198 enable-method = "psci"; 199 }; 200 201 cpu@2 { 202 enable-method = "psci"; 203 }; 204 205 cpu@3 { 206 enable-method = "psci"; 207 }; 208 209 cpu@4 { 210 enable-method = "psci"; 211 }; 212 213 cpu@5 { 214 enable-method = "psci"; 215 }; 216 }; 217 218 bpmp { 219 i2c { 220 status = "okay"; 221 222 pmic: pmic@3c { 223 compatible = "maxim,max77620"; 224 reg = <0x3c>; 225 226 interrupt-parent = <&pmc>; 227 interrupts = <24 IRQ_TYPE_LEVEL_LOW>; 228 #interrupt-cells = <2>; 229 interrupt-controller; 230 231 #gpio-cells = <2>; 232 gpio-controller; 233 234 pinctrl-names = "default"; 235 pinctrl-0 = <&max77620_default>; 236 237 max77620_default: pinmux { 238 gpio0 { 239 pins = "gpio0"; 240 function = "gpio"; 241 }; 242 243 gpio1 { 244 pins = "gpio1"; 245 function = "fps-out"; 246 maxim,active-fps-source = <MAX77620_FPS_SRC_0>; 247 }; 248 249 gpio2 { 250 pins = "gpio2"; 251 function = "fps-out"; 252 maxim,active-fps-source = <MAX77620_FPS_SRC_1>; 253 }; 254 255 gpio3 { 256 pins = "gpio3"; 257 function = "fps-out"; 258 maxim,active-fps-source = <MAX77620_FPS_SRC_1>; 259 }; 260 261 gpio4 { 262 pins = "gpio4"; 263 function = "32k-out1"; 264 drive-push-pull = <1>; 265 }; 266 267 gpio5 { 268 pins = "gpio5"; 269 function = "gpio"; 270 drive-push-pull = <0>; 271 }; 272 273 gpio6 { 274 pins = "gpio6"; 275 function = "gpio"; 276 drive-push-pull = <1>; 277 }; 278 279 gpio7 { 280 pins = "gpio7"; 281 function = "gpio"; 282 drive-push-pull = <0>; 283 }; 284 }; 285 286 fps { 287 fps0 { 288 maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN0>; 289 maxim,shutdown-fps-time-period-us = <640>; 290 }; 291 292 fps1 { 293 maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN1>; 294 maxim,shutdown-fps-time-period-us = <640>; 295 }; 296 297 fps2 { 298 maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN0>; 299 maxim,shutdown-fps-time-period-us = <640>; 300 }; 301 }; 302 303 regulators { 304 in-sd0-supply = <&vdd_5v0_sys>; 305 in-sd1-supply = <&vdd_5v0_sys>; 306 in-sd2-supply = <&vdd_5v0_sys>; 307 in-sd3-supply = <&vdd_5v0_sys>; 308 309 in-ldo0-1-supply = <&vdd_5v0_sys>; 310 in-ldo2-supply = <&vdd_5v0_sys>; 311 in-ldo3-5-supply = <&vdd_5v0_sys>; 312 in-ldo4-6-supply = <&vdd_1v8>; 313 in-ldo7-8-supply = <&avdd_dsi_csi>; 314 315 sd0 { 316 regulator-name = "VDD_DDR_1V1_PMIC"; 317 regulator-min-microvolt = <1100000>; 318 regulator-max-microvolt = <1100000>; 319 regulator-always-on; 320 regulator-boot-on; 321 }; 322 323 avdd_dsi_csi: sd1 { 324 regulator-name = "AVDD_DSI_CSI_1V2"; 325 regulator-min-microvolt = <1200000>; 326 regulator-max-microvolt = <1200000>; 327 }; 328 329 vdd_1v8: sd2 { 330 regulator-name = "VDD_1V8"; 331 regulator-min-microvolt = <1800000>; 332 regulator-max-microvolt = <1800000>; 333 }; 334 335 vdd_3v3_sys: sd3 { 336 regulator-name = "VDD_3V3_SYS"; 337 regulator-min-microvolt = <3300000>; 338 regulator-max-microvolt = <3300000>; 339 }; 340 341 vdd_1v8_pll: ldo0 { 342 regulator-name = "VDD_1V8_AP_PLL"; 343 regulator-min-microvolt = <1800000>; 344 regulator-max-microvolt = <1800000>; 345 }; 346 347 ldo2 { 348 regulator-name = "VDDIO_3V3_AOHV"; 349 regulator-min-microvolt = <3300000>; 350 regulator-max-microvolt = <3300000>; 351 regulator-always-on; 352 regulator-boot-on; 353 }; 354 355 vddio_sdmmc1: ldo3 { 356 regulator-name = "VDDIO_SDMMC1_AP"; 357 regulator-min-microvolt = <1800000>; 358 regulator-max-microvolt = <3300000>; 359 }; 360 361 ldo4 { 362 regulator-name = "VDD_RTC"; 363 regulator-min-microvolt = <1000000>; 364 regulator-max-microvolt = <1000000>; 365 }; 366 367 vddio_sdmmc3: ldo5 { 368 regulator-name = "VDDIO_SDMMC3_AP"; 369 regulator-min-microvolt = <2800000>; 370 regulator-max-microvolt = <2800000>; 371 }; 372 373 vdd_hdmi_1v05: ldo7 { 374 regulator-name = "VDD_HDMI_1V05"; 375 regulator-min-microvolt = <1050000>; 376 regulator-max-microvolt = <1050000>; 377 }; 378 379 vdd_pex: ldo8 { 380 regulator-name = "VDD_PEX_1V05"; 381 regulator-min-microvolt = <1050000>; 382 regulator-max-microvolt = <1050000>; 383 }; 384 }; 385 }; 386 }; 387 }; 388 389 psci { 390 compatible = "arm,psci-1.0"; 391 status = "okay"; 392 method = "smc"; 393 }; 394 395 gnd: regulator@0 { 396 compatible = "regulator-fixed"; 397 regulator-name = "GND"; 398 regulator-min-microvolt = <0>; 399 regulator-max-microvolt = <0>; 400 regulator-always-on; 401 regulator-boot-on; 402 }; 403 404 vdd_5v0_sys: regulator@1 { 405 compatible = "regulator-fixed"; 406 regulator-name = "VDD_5V0_SYS"; 407 regulator-min-microvolt = <5000000>; 408 regulator-max-microvolt = <5000000>; 409 regulator-always-on; 410 regulator-boot-on; 411 }; 412 413 vdd_1v8_ap: regulator@2 { 414 compatible = "regulator-fixed"; 415 regulator-name = "VDD_1V8_AP"; 416 regulator-min-microvolt = <1800000>; 417 regulator-max-microvolt = <1800000>; 418 419 gpio = <&pmic 1 GPIO_ACTIVE_HIGH>; 420 enable-active-high; 421 422 vin-supply = <&vdd_1v8>; 423 }; 424}; 425