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