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