1// SPDX-License-Identifier: GPL-2.0 2#include <dt-bindings/clock/tegra210-car.h> 3#include <dt-bindings/gpio/tegra-gpio.h> 4#include <dt-bindings/memory/tegra210-mc.h> 5#include <dt-bindings/pinctrl/pinctrl-tegra.h> 6#include <dt-bindings/pinctrl/pinctrl-tegra-io-pad.h> 7#include <dt-bindings/interrupt-controller/arm-gic.h> 8#include <dt-bindings/thermal/tegra124-soctherm.h> 9 10/ { 11 compatible = "nvidia,tegra210"; 12 interrupt-parent = <&lic>; 13 #address-cells = <2>; 14 #size-cells = <2>; 15 16 pcie@1003000 { 17 compatible = "nvidia,tegra210-pcie"; 18 device_type = "pci"; 19 reg = <0x0 0x01003000 0x0 0x00000800 /* PADS registers */ 20 0x0 0x01003800 0x0 0x00000800 /* AFI registers */ 21 0x0 0x02000000 0x0 0x10000000>; /* configuration space */ 22 reg-names = "pads", "afi", "cs"; 23 interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>, /* controller interrupt */ 24 <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; /* MSI interrupt */ 25 interrupt-names = "intr", "msi"; 26 27 #interrupt-cells = <1>; 28 interrupt-map-mask = <0 0 0 0>; 29 interrupt-map = <0 0 0 0 &gic GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; 30 31 bus-range = <0x00 0xff>; 32 #address-cells = <3>; 33 #size-cells = <2>; 34 35 ranges = <0x82000000 0 0x01000000 0x0 0x01000000 0 0x00001000 /* port 0 configuration space */ 36 0x82000000 0 0x01001000 0x0 0x01001000 0 0x00001000 /* port 1 configuration space */ 37 0x81000000 0 0x0 0x0 0x12000000 0 0x00010000 /* downstream I/O (64 KiB) */ 38 0x82000000 0 0x13000000 0x0 0x13000000 0 0x0d000000 /* non-prefetchable memory (208 MiB) */ 39 0xc2000000 0 0x20000000 0x0 0x20000000 0 0x20000000>; /* prefetchable memory (512 MiB) */ 40 41 clocks = <&tegra_car TEGRA210_CLK_PCIE>, 42 <&tegra_car TEGRA210_CLK_AFI>, 43 <&tegra_car TEGRA210_CLK_PLL_E>, 44 <&tegra_car TEGRA210_CLK_CML0>; 45 clock-names = "pex", "afi", "pll_e", "cml"; 46 resets = <&tegra_car 70>, 47 <&tegra_car 72>, 48 <&tegra_car 74>; 49 reset-names = "pex", "afi", "pcie_x"; 50 status = "disabled"; 51 52 pci@1,0 { 53 device_type = "pci"; 54 assigned-addresses = <0x82000800 0 0x01000000 0 0x1000>; 55 reg = <0x000800 0 0 0 0>; 56 bus-range = <0x00 0xff>; 57 status = "disabled"; 58 59 #address-cells = <3>; 60 #size-cells = <2>; 61 ranges; 62 63 nvidia,num-lanes = <4>; 64 }; 65 66 pci@2,0 { 67 device_type = "pci"; 68 assigned-addresses = <0x82001000 0 0x01001000 0 0x1000>; 69 reg = <0x001000 0 0 0 0>; 70 bus-range = <0x00 0xff>; 71 status = "disabled"; 72 73 #address-cells = <3>; 74 #size-cells = <2>; 75 ranges; 76 77 nvidia,num-lanes = <1>; 78 }; 79 }; 80 81 host1x@50000000 { 82 compatible = "nvidia,tegra210-host1x", "simple-bus"; 83 reg = <0x0 0x50000000 0x0 0x00034000>; 84 interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>, /* syncpt */ 85 <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>; /* general */ 86 clocks = <&tegra_car TEGRA210_CLK_HOST1X>; 87 clock-names = "host1x"; 88 resets = <&tegra_car 28>; 89 reset-names = "host1x"; 90 91 #address-cells = <2>; 92 #size-cells = <2>; 93 94 ranges = <0x0 0x54000000 0x0 0x54000000 0x0 0x01000000>; 95 96 iommus = <&mc TEGRA_SWGROUP_HC>; 97 98 dpaux1: dpaux@54040000 { 99 compatible = "nvidia,tegra210-dpaux"; 100 reg = <0x0 0x54040000 0x0 0x00040000>; 101 interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>; 102 clocks = <&tegra_car TEGRA210_CLK_DPAUX1>, 103 <&tegra_car TEGRA210_CLK_PLL_DP>; 104 clock-names = "dpaux", "parent"; 105 resets = <&tegra_car 207>; 106 reset-names = "dpaux"; 107 power-domains = <&pd_sor>; 108 status = "disabled"; 109 110 state_dpaux1_aux: pinmux-aux { 111 groups = "dpaux-io"; 112 function = "aux"; 113 }; 114 115 state_dpaux1_i2c: pinmux-i2c { 116 groups = "dpaux-io"; 117 function = "i2c"; 118 }; 119 120 state_dpaux1_off: pinmux-off { 121 groups = "dpaux-io"; 122 function = "off"; 123 }; 124 125 i2c-bus { 126 #address-cells = <1>; 127 #size-cells = <0>; 128 }; 129 }; 130 131 vi@54080000 { 132 compatible = "nvidia,tegra210-vi"; 133 reg = <0x0 0x54080000 0x0 0x00040000>; 134 interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>; 135 status = "disabled"; 136 }; 137 138 tsec@54100000 { 139 compatible = "nvidia,tegra210-tsec"; 140 reg = <0x0 0x54100000 0x0 0x00040000>; 141 }; 142 143 dc@54200000 { 144 compatible = "nvidia,tegra210-dc"; 145 reg = <0x0 0x54200000 0x0 0x00040000>; 146 interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; 147 clocks = <&tegra_car TEGRA210_CLK_DISP1>, 148 <&tegra_car TEGRA210_CLK_PLL_P>; 149 clock-names = "dc", "parent"; 150 resets = <&tegra_car 27>; 151 reset-names = "dc"; 152 153 iommus = <&mc TEGRA_SWGROUP_DC>; 154 155 nvidia,head = <0>; 156 }; 157 158 dc@54240000 { 159 compatible = "nvidia,tegra210-dc"; 160 reg = <0x0 0x54240000 0x0 0x00040000>; 161 interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>; 162 clocks = <&tegra_car TEGRA210_CLK_DISP2>, 163 <&tegra_car TEGRA210_CLK_PLL_P>; 164 clock-names = "dc", "parent"; 165 resets = <&tegra_car 26>; 166 reset-names = "dc"; 167 168 iommus = <&mc TEGRA_SWGROUP_DCB>; 169 170 nvidia,head = <1>; 171 }; 172 173 dsi@54300000 { 174 compatible = "nvidia,tegra210-dsi"; 175 reg = <0x0 0x54300000 0x0 0x00040000>; 176 clocks = <&tegra_car TEGRA210_CLK_DSIA>, 177 <&tegra_car TEGRA210_CLK_DSIALP>, 178 <&tegra_car TEGRA210_CLK_PLL_D_OUT0>; 179 clock-names = "dsi", "lp", "parent"; 180 resets = <&tegra_car 48>; 181 reset-names = "dsi"; 182 power-domains = <&pd_sor>; 183 nvidia,mipi-calibrate = <&mipi 0x0c0>; /* DSIA & DSIB pads */ 184 185 status = "disabled"; 186 187 #address-cells = <1>; 188 #size-cells = <0>; 189 }; 190 191 vic@54340000 { 192 compatible = "nvidia,tegra210-vic"; 193 reg = <0x0 0x54340000 0x0 0x00040000>; 194 interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>; 195 clocks = <&tegra_car TEGRA210_CLK_VIC03>; 196 clock-names = "vic"; 197 resets = <&tegra_car 178>; 198 reset-names = "vic"; 199 200 iommus = <&mc TEGRA_SWGROUP_VIC>; 201 power-domains = <&pd_vic>; 202 }; 203 204 nvjpg@54380000 { 205 compatible = "nvidia,tegra210-nvjpg"; 206 reg = <0x0 0x54380000 0x0 0x00040000>; 207 status = "disabled"; 208 }; 209 210 dsi@54400000 { 211 compatible = "nvidia,tegra210-dsi"; 212 reg = <0x0 0x54400000 0x0 0x00040000>; 213 clocks = <&tegra_car TEGRA210_CLK_DSIB>, 214 <&tegra_car TEGRA210_CLK_DSIBLP>, 215 <&tegra_car TEGRA210_CLK_PLL_D_OUT0>; 216 clock-names = "dsi", "lp", "parent"; 217 resets = <&tegra_car 82>; 218 reset-names = "dsi"; 219 power-domains = <&pd_sor>; 220 nvidia,mipi-calibrate = <&mipi 0x300>; /* DSIC & DSID pads */ 221 222 status = "disabled"; 223 224 #address-cells = <1>; 225 #size-cells = <0>; 226 }; 227 228 nvdec@54480000 { 229 compatible = "nvidia,tegra210-nvdec"; 230 reg = <0x0 0x54480000 0x0 0x00040000>; 231 status = "disabled"; 232 }; 233 234 nvenc@544c0000 { 235 compatible = "nvidia,tegra210-nvenc"; 236 reg = <0x0 0x544c0000 0x0 0x00040000>; 237 status = "disabled"; 238 }; 239 240 tsec@54500000 { 241 compatible = "nvidia,tegra210-tsec"; 242 reg = <0x0 0x54500000 0x0 0x00040000>; 243 status = "disabled"; 244 }; 245 246 sor@54540000 { 247 compatible = "nvidia,tegra210-sor"; 248 reg = <0x0 0x54540000 0x0 0x00040000>; 249 interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>; 250 clocks = <&tegra_car TEGRA210_CLK_SOR0>, 251 <&tegra_car TEGRA210_CLK_PLL_D_OUT0>, 252 <&tegra_car TEGRA210_CLK_PLL_DP>, 253 <&tegra_car TEGRA210_CLK_SOR_SAFE>; 254 clock-names = "sor", "parent", "dp", "safe"; 255 resets = <&tegra_car 182>; 256 reset-names = "sor"; 257 pinctrl-0 = <&state_dpaux_aux>; 258 pinctrl-1 = <&state_dpaux_i2c>; 259 pinctrl-2 = <&state_dpaux_off>; 260 pinctrl-names = "aux", "i2c", "off"; 261 power-domains = <&pd_sor>; 262 status = "disabled"; 263 }; 264 265 sor@54580000 { 266 compatible = "nvidia,tegra210-sor1"; 267 reg = <0x0 0x54580000 0x0 0x00040000>; 268 interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>; 269 clocks = <&tegra_car TEGRA210_CLK_SOR1>, 270 <&tegra_car TEGRA210_CLK_SOR1_OUT>, 271 <&tegra_car TEGRA210_CLK_PLL_D2_OUT0>, 272 <&tegra_car TEGRA210_CLK_PLL_DP>, 273 <&tegra_car TEGRA210_CLK_SOR_SAFE>; 274 clock-names = "sor", "out", "parent", "dp", "safe"; 275 resets = <&tegra_car 183>; 276 reset-names = "sor"; 277 pinctrl-0 = <&state_dpaux1_aux>; 278 pinctrl-1 = <&state_dpaux1_i2c>; 279 pinctrl-2 = <&state_dpaux1_off>; 280 pinctrl-names = "aux", "i2c", "off"; 281 power-domains = <&pd_sor>; 282 status = "disabled"; 283 }; 284 285 dpaux: dpaux@545c0000 { 286 compatible = "nvidia,tegra124-dpaux"; 287 reg = <0x0 0x545c0000 0x0 0x00040000>; 288 interrupts = <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>; 289 clocks = <&tegra_car TEGRA210_CLK_DPAUX>, 290 <&tegra_car TEGRA210_CLK_PLL_DP>; 291 clock-names = "dpaux", "parent"; 292 resets = <&tegra_car 181>; 293 reset-names = "dpaux"; 294 power-domains = <&pd_sor>; 295 status = "disabled"; 296 297 state_dpaux_aux: pinmux-aux { 298 groups = "dpaux-io"; 299 function = "aux"; 300 }; 301 302 state_dpaux_i2c: pinmux-i2c { 303 groups = "dpaux-io"; 304 function = "i2c"; 305 }; 306 307 state_dpaux_off: pinmux-off { 308 groups = "dpaux-io"; 309 function = "off"; 310 }; 311 312 i2c-bus { 313 #address-cells = <1>; 314 #size-cells = <0>; 315 }; 316 }; 317 318 isp@54600000 { 319 compatible = "nvidia,tegra210-isp"; 320 reg = <0x0 0x54600000 0x0 0x00040000>; 321 interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>; 322 status = "disabled"; 323 }; 324 325 isp@54680000 { 326 compatible = "nvidia,tegra210-isp"; 327 reg = <0x0 0x54680000 0x0 0x00040000>; 328 interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>; 329 status = "disabled"; 330 }; 331 332 i2c@546c0000 { 333 compatible = "nvidia,tegra210-i2c-vi"; 334 reg = <0x0 0x546c0000 0x0 0x00040000>; 335 interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; 336 status = "disabled"; 337 }; 338 }; 339 340 gic: interrupt-controller@50041000 { 341 compatible = "arm,gic-400"; 342 #interrupt-cells = <3>; 343 interrupt-controller; 344 reg = <0x0 0x50041000 0x0 0x1000>, 345 <0x0 0x50042000 0x0 0x2000>, 346 <0x0 0x50044000 0x0 0x2000>, 347 <0x0 0x50046000 0x0 0x2000>; 348 interrupts = <GIC_PPI 9 349 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; 350 interrupt-parent = <&gic>; 351 }; 352 353 gpu@57000000 { 354 compatible = "nvidia,gm20b"; 355 reg = <0x0 0x57000000 0x0 0x01000000>, 356 <0x0 0x58000000 0x0 0x01000000>; 357 interrupts = <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>, 358 <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>; 359 interrupt-names = "stall", "nonstall"; 360 clocks = <&tegra_car TEGRA210_CLK_GPU>, 361 <&tegra_car TEGRA210_CLK_PLL_P_OUT5>, 362 <&tegra_car TEGRA210_CLK_PLL_G_REF>; 363 clock-names = "gpu", "pwr", "ref"; 364 resets = <&tegra_car 184>; 365 reset-names = "gpu"; 366 367 iommus = <&mc TEGRA_SWGROUP_GPU>; 368 369 status = "disabled"; 370 }; 371 372 lic: interrupt-controller@60004000 { 373 compatible = "nvidia,tegra210-ictlr"; 374 reg = <0x0 0x60004000 0x0 0x40>, /* primary controller */ 375 <0x0 0x60004100 0x0 0x40>, /* secondary controller */ 376 <0x0 0x60004200 0x0 0x40>, /* tertiary controller */ 377 <0x0 0x60004300 0x0 0x40>, /* quaternary controller */ 378 <0x0 0x60004400 0x0 0x40>, /* quinary controller */ 379 <0x0 0x60004500 0x0 0x40>; /* senary controller */ 380 interrupt-controller; 381 #interrupt-cells = <3>; 382 interrupt-parent = <&gic>; 383 }; 384 385 timer@60005000 { 386 compatible = "nvidia,tegra210-timer", "nvidia,tegra20-timer"; 387 reg = <0x0 0x60005000 0x0 0x400>; 388 interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>, 389 <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>, 390 <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>, 391 <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>, 392 <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>, 393 <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>; 394 clocks = <&tegra_car TEGRA210_CLK_TIMER>; 395 clock-names = "timer"; 396 }; 397 398 tegra_car: clock@60006000 { 399 compatible = "nvidia,tegra210-car"; 400 reg = <0x0 0x60006000 0x0 0x1000>; 401 #clock-cells = <1>; 402 #reset-cells = <1>; 403 }; 404 405 flow-controller@60007000 { 406 compatible = "nvidia,tegra210-flowctrl"; 407 reg = <0x0 0x60007000 0x0 0x1000>; 408 }; 409 410 gpio: gpio@6000d000 { 411 compatible = "nvidia,tegra210-gpio", "nvidia,tegra30-gpio"; 412 reg = <0x0 0x6000d000 0x0 0x1000>; 413 interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>, 414 <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>, 415 <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>, 416 <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>, 417 <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>, 418 <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>, 419 <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>, 420 <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>; 421 #gpio-cells = <2>; 422 gpio-controller; 423 #interrupt-cells = <2>; 424 interrupt-controller; 425 }; 426 427 apbdma: dma@60020000 { 428 compatible = "nvidia,tegra210-apbdma", "nvidia,tegra148-apbdma"; 429 reg = <0x0 0x60020000 0x0 0x1400>; 430 interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>, 431 <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>, 432 <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>, 433 <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>, 434 <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>, 435 <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>, 436 <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>, 437 <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>, 438 <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>, 439 <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>, 440 <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>, 441 <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>, 442 <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>, 443 <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>, 444 <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>, 445 <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>, 446 <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>, 447 <GIC_SPI 129 IRQ_TYPE_LEVEL_HIGH>, 448 <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>, 449 <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>, 450 <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>, 451 <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>, 452 <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>, 453 <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>, 454 <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>, 455 <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>, 456 <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>, 457 <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>, 458 <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>, 459 <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>, 460 <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>, 461 <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>; 462 clocks = <&tegra_car TEGRA210_CLK_APBDMA>; 463 clock-names = "dma"; 464 resets = <&tegra_car 34>; 465 reset-names = "dma"; 466 #dma-cells = <1>; 467 }; 468 469 apbmisc@70000800 { 470 compatible = "nvidia,tegra210-apbmisc", "nvidia,tegra20-apbmisc"; 471 reg = <0x0 0x70000800 0x0 0x64>, /* Chip revision */ 472 <0x0 0x7000e864 0x0 0x04>; /* Strapping options */ 473 }; 474 475 pinmux: pinmux@700008d4 { 476 compatible = "nvidia,tegra210-pinmux"; 477 reg = <0x0 0x700008d4 0x0 0x29c>, /* Pad control registers */ 478 <0x0 0x70003000 0x0 0x294>; /* Mux registers */ 479 }; 480 481 /* 482 * There are two serial driver i.e. 8250 based simple serial 483 * driver and APB DMA based serial driver for higher baudrate 484 * and performance. To enable the 8250 based driver, the compatible 485 * is "nvidia,tegra124-uart", "nvidia,tegra20-uart" and to enable 486 * the APB DMA based serial driver, the compatible is 487 * "nvidia,tegra124-hsuart", "nvidia,tegra30-hsuart". 488 */ 489 uarta: serial@70006000 { 490 compatible = "nvidia,tegra210-uart", "nvidia,tegra20-uart"; 491 reg = <0x0 0x70006000 0x0 0x40>; 492 reg-shift = <2>; 493 interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>; 494 clocks = <&tegra_car TEGRA210_CLK_UARTA>; 495 clock-names = "serial"; 496 resets = <&tegra_car 6>; 497 reset-names = "serial"; 498 dmas = <&apbdma 8>, <&apbdma 8>; 499 dma-names = "rx", "tx"; 500 status = "disabled"; 501 }; 502 503 uartb: serial@70006040 { 504 compatible = "nvidia,tegra210-uart", "nvidia,tegra20-uart"; 505 reg = <0x0 0x70006040 0x0 0x40>; 506 reg-shift = <2>; 507 interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>; 508 clocks = <&tegra_car TEGRA210_CLK_UARTB>; 509 clock-names = "serial"; 510 resets = <&tegra_car 7>; 511 reset-names = "serial"; 512 dmas = <&apbdma 9>, <&apbdma 9>; 513 dma-names = "rx", "tx"; 514 status = "disabled"; 515 }; 516 517 uartc: serial@70006200 { 518 compatible = "nvidia,tegra210-uart", "nvidia,tegra20-uart"; 519 reg = <0x0 0x70006200 0x0 0x40>; 520 reg-shift = <2>; 521 interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>; 522 clocks = <&tegra_car TEGRA210_CLK_UARTC>; 523 clock-names = "serial"; 524 resets = <&tegra_car 55>; 525 reset-names = "serial"; 526 dmas = <&apbdma 10>, <&apbdma 10>; 527 dma-names = "rx", "tx"; 528 status = "disabled"; 529 }; 530 531 uartd: serial@70006300 { 532 compatible = "nvidia,tegra210-uart", "nvidia,tegra20-uart"; 533 reg = <0x0 0x70006300 0x0 0x40>; 534 reg-shift = <2>; 535 interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>; 536 clocks = <&tegra_car TEGRA210_CLK_UARTD>; 537 clock-names = "serial"; 538 resets = <&tegra_car 65>; 539 reset-names = "serial"; 540 dmas = <&apbdma 19>, <&apbdma 19>; 541 dma-names = "rx", "tx"; 542 status = "disabled"; 543 }; 544 545 pwm: pwm@7000a000 { 546 compatible = "nvidia,tegra210-pwm", "nvidia,tegra20-pwm"; 547 reg = <0x0 0x7000a000 0x0 0x100>; 548 #pwm-cells = <2>; 549 clocks = <&tegra_car TEGRA210_CLK_PWM>; 550 clock-names = "pwm"; 551 resets = <&tegra_car 17>; 552 reset-names = "pwm"; 553 status = "disabled"; 554 }; 555 556 i2c@7000c000 { 557 compatible = "nvidia,tegra210-i2c", "nvidia,tegra114-i2c"; 558 reg = <0x0 0x7000c000 0x0 0x100>; 559 interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>; 560 #address-cells = <1>; 561 #size-cells = <0>; 562 clocks = <&tegra_car TEGRA210_CLK_I2C1>; 563 clock-names = "div-clk"; 564 resets = <&tegra_car 12>; 565 reset-names = "i2c"; 566 dmas = <&apbdma 21>, <&apbdma 21>; 567 dma-names = "rx", "tx"; 568 status = "disabled"; 569 }; 570 571 i2c@7000c400 { 572 compatible = "nvidia,tegra210-i2c", "nvidia,tegra114-i2c"; 573 reg = <0x0 0x7000c400 0x0 0x100>; 574 interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>; 575 #address-cells = <1>; 576 #size-cells = <0>; 577 clocks = <&tegra_car TEGRA210_CLK_I2C2>; 578 clock-names = "div-clk"; 579 resets = <&tegra_car 54>; 580 reset-names = "i2c"; 581 dmas = <&apbdma 22>, <&apbdma 22>; 582 dma-names = "rx", "tx"; 583 status = "disabled"; 584 }; 585 586 i2c@7000c500 { 587 compatible = "nvidia,tegra210-i2c", "nvidia,tegra114-i2c"; 588 reg = <0x0 0x7000c500 0x0 0x100>; 589 interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>; 590 #address-cells = <1>; 591 #size-cells = <0>; 592 clocks = <&tegra_car TEGRA210_CLK_I2C3>; 593 clock-names = "div-clk"; 594 resets = <&tegra_car 67>; 595 reset-names = "i2c"; 596 dmas = <&apbdma 23>, <&apbdma 23>; 597 dma-names = "rx", "tx"; 598 status = "disabled"; 599 }; 600 601 i2c@7000c700 { 602 compatible = "nvidia,tegra210-i2c", "nvidia,tegra114-i2c"; 603 reg = <0x0 0x7000c700 0x0 0x100>; 604 interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>; 605 #address-cells = <1>; 606 #size-cells = <0>; 607 clocks = <&tegra_car TEGRA210_CLK_I2C4>; 608 clock-names = "div-clk"; 609 resets = <&tegra_car 103>; 610 reset-names = "i2c"; 611 dmas = <&apbdma 26>, <&apbdma 26>; 612 dma-names = "rx", "tx"; 613 pinctrl-0 = <&state_dpaux1_i2c>; 614 pinctrl-1 = <&state_dpaux1_off>; 615 pinctrl-names = "default", "idle"; 616 status = "disabled"; 617 }; 618 619 i2c@7000d000 { 620 compatible = "nvidia,tegra210-i2c", "nvidia,tegra114-i2c"; 621 reg = <0x0 0x7000d000 0x0 0x100>; 622 interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>; 623 #address-cells = <1>; 624 #size-cells = <0>; 625 clocks = <&tegra_car TEGRA210_CLK_I2C5>; 626 clock-names = "div-clk"; 627 resets = <&tegra_car 47>; 628 reset-names = "i2c"; 629 dmas = <&apbdma 24>, <&apbdma 24>; 630 dma-names = "rx", "tx"; 631 status = "disabled"; 632 }; 633 634 i2c@7000d100 { 635 compatible = "nvidia,tegra210-i2c", "nvidia,tegra114-i2c"; 636 reg = <0x0 0x7000d100 0x0 0x100>; 637 interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>; 638 #address-cells = <1>; 639 #size-cells = <0>; 640 clocks = <&tegra_car TEGRA210_CLK_I2C6>; 641 clock-names = "div-clk"; 642 resets = <&tegra_car 166>; 643 reset-names = "i2c"; 644 dmas = <&apbdma 30>, <&apbdma 30>; 645 dma-names = "rx", "tx"; 646 pinctrl-0 = <&state_dpaux_i2c>; 647 pinctrl-1 = <&state_dpaux_off>; 648 pinctrl-names = "default", "idle"; 649 status = "disabled"; 650 }; 651 652 spi@7000d400 { 653 compatible = "nvidia,tegra210-spi", "nvidia,tegra114-spi"; 654 reg = <0x0 0x7000d400 0x0 0x200>; 655 interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>; 656 #address-cells = <1>; 657 #size-cells = <0>; 658 clocks = <&tegra_car TEGRA210_CLK_SBC1>; 659 clock-names = "spi"; 660 resets = <&tegra_car 41>; 661 reset-names = "spi"; 662 dmas = <&apbdma 15>, <&apbdma 15>; 663 dma-names = "rx", "tx"; 664 status = "disabled"; 665 }; 666 667 spi@7000d600 { 668 compatible = "nvidia,tegra210-spi", "nvidia,tegra114-spi"; 669 reg = <0x0 0x7000d600 0x0 0x200>; 670 interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>; 671 #address-cells = <1>; 672 #size-cells = <0>; 673 clocks = <&tegra_car TEGRA210_CLK_SBC2>; 674 clock-names = "spi"; 675 resets = <&tegra_car 44>; 676 reset-names = "spi"; 677 dmas = <&apbdma 16>, <&apbdma 16>; 678 dma-names = "rx", "tx"; 679 status = "disabled"; 680 }; 681 682 spi@7000d800 { 683 compatible = "nvidia,tegra210-spi", "nvidia,tegra114-spi"; 684 reg = <0x0 0x7000d800 0x0 0x200>; 685 interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>; 686 #address-cells = <1>; 687 #size-cells = <0>; 688 clocks = <&tegra_car TEGRA210_CLK_SBC3>; 689 clock-names = "spi"; 690 resets = <&tegra_car 46>; 691 reset-names = "spi"; 692 dmas = <&apbdma 17>, <&apbdma 17>; 693 dma-names = "rx", "tx"; 694 status = "disabled"; 695 }; 696 697 spi@7000da00 { 698 compatible = "nvidia,tegra210-spi", "nvidia,tegra114-spi"; 699 reg = <0x0 0x7000da00 0x0 0x200>; 700 interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>; 701 #address-cells = <1>; 702 #size-cells = <0>; 703 clocks = <&tegra_car TEGRA210_CLK_SBC4>; 704 clock-names = "spi"; 705 resets = <&tegra_car 68>; 706 reset-names = "spi"; 707 dmas = <&apbdma 18>, <&apbdma 18>; 708 dma-names = "rx", "tx"; 709 status = "disabled"; 710 }; 711 712 rtc@7000e000 { 713 compatible = "nvidia,tegra210-rtc", "nvidia,tegra20-rtc"; 714 reg = <0x0 0x7000e000 0x0 0x100>; 715 interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>; 716 clocks = <&tegra_car TEGRA210_CLK_RTC>; 717 clock-names = "rtc"; 718 }; 719 720 pmc: pmc@7000e400 { 721 compatible = "nvidia,tegra210-pmc"; 722 reg = <0x0 0x7000e400 0x0 0x400>; 723 clocks = <&tegra_car TEGRA210_CLK_PCLK>, <&clk32k_in>; 724 clock-names = "pclk", "clk32k_in"; 725 726 powergates { 727 pd_audio: aud { 728 clocks = <&tegra_car TEGRA210_CLK_APE>, 729 <&tegra_car TEGRA210_CLK_APB2APE>; 730 resets = <&tegra_car 198>; 731 #power-domain-cells = <0>; 732 }; 733 734 pd_sor: sor { 735 clocks = <&tegra_car TEGRA210_CLK_SOR0>, 736 <&tegra_car TEGRA210_CLK_SOR1>, 737 <&tegra_car TEGRA210_CLK_CSI>, 738 <&tegra_car TEGRA210_CLK_DSIA>, 739 <&tegra_car TEGRA210_CLK_DSIB>, 740 <&tegra_car TEGRA210_CLK_DPAUX>, 741 <&tegra_car TEGRA210_CLK_DPAUX1>, 742 <&tegra_car TEGRA210_CLK_MIPI_CAL>; 743 resets = <&tegra_car TEGRA210_CLK_SOR0>, 744 <&tegra_car TEGRA210_CLK_SOR1>, 745 <&tegra_car TEGRA210_CLK_CSI>, 746 <&tegra_car TEGRA210_CLK_DSIA>, 747 <&tegra_car TEGRA210_CLK_DSIB>, 748 <&tegra_car TEGRA210_CLK_DPAUX>, 749 <&tegra_car TEGRA210_CLK_DPAUX1>, 750 <&tegra_car TEGRA210_CLK_MIPI_CAL>; 751 #power-domain-cells = <0>; 752 }; 753 754 pd_xusbss: xusba { 755 clocks = <&tegra_car TEGRA210_CLK_XUSB_SS>; 756 resets = <&tegra_car TEGRA210_CLK_XUSB_SS>; 757 #power-domain-cells = <0>; 758 }; 759 760 pd_xusbdev: xusbb { 761 clocks = <&tegra_car TEGRA210_CLK_XUSB_DEV>; 762 resets = <&tegra_car 95>; 763 #power-domain-cells = <0>; 764 }; 765 766 pd_xusbhost: xusbc { 767 clocks = <&tegra_car TEGRA210_CLK_XUSB_HOST>; 768 resets = <&tegra_car TEGRA210_CLK_XUSB_HOST>; 769 #power-domain-cells = <0>; 770 }; 771 772 pd_vic: vic { 773 clocks = <&tegra_car TEGRA210_CLK_VIC03>; 774 clock-names = "vic"; 775 resets = <&tegra_car 178>; 776 reset-names = "vic"; 777 #power-domain-cells = <0>; 778 }; 779 }; 780 781 sdmmc1_3v3: sdmmc1-3v3 { 782 pins = "sdmmc1"; 783 power-source = <TEGRA_IO_PAD_VOLTAGE_3V3>; 784 }; 785 786 sdmmc1_1v8: sdmmc1-1v8 { 787 pins = "sdmmc1"; 788 power-source = <TEGRA_IO_PAD_VOLTAGE_1V8>; 789 }; 790 791 sdmmc3_3v3: sdmmc3-3v3 { 792 pins = "sdmmc3"; 793 power-source = <TEGRA_IO_PAD_VOLTAGE_3V3>; 794 }; 795 796 sdmmc3_1v8: sdmmc3-1v8 { 797 pins = "sdmmc3"; 798 power-source = <TEGRA_IO_PAD_VOLTAGE_1V8>; 799 }; 800 }; 801 802 fuse@7000f800 { 803 compatible = "nvidia,tegra210-efuse"; 804 reg = <0x0 0x7000f800 0x0 0x400>; 805 clocks = <&tegra_car TEGRA210_CLK_FUSE>; 806 clock-names = "fuse"; 807 resets = <&tegra_car 39>; 808 reset-names = "fuse"; 809 }; 810 811 mc: memory-controller@70019000 { 812 compatible = "nvidia,tegra210-mc"; 813 reg = <0x0 0x70019000 0x0 0x1000>; 814 clocks = <&tegra_car TEGRA210_CLK_MC>; 815 clock-names = "mc"; 816 817 interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>; 818 819 #iommu-cells = <1>; 820 }; 821 822 sata@70020000 { 823 compatible = "nvidia,tegra210-ahci"; 824 reg = <0x0 0x70027000 0x0 0x2000>, /* AHCI */ 825 <0x0 0x70020000 0x0 0x7000>, /* SATA */ 826 <0x0 0x70001100 0x0 0x1000>; /* SATA AUX */ 827 interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>; 828 clocks = <&tegra_car TEGRA210_CLK_SATA>, 829 <&tegra_car TEGRA210_CLK_SATA_OOB>; 830 clock-names = "sata", "sata-oob"; 831 resets = <&tegra_car 124>, 832 <&tegra_car 123>, 833 <&tegra_car 129>; 834 reset-names = "sata", "sata-oob", "sata-cold"; 835 status = "disabled"; 836 }; 837 838 hda@70030000 { 839 compatible = "nvidia,tegra210-hda", "nvidia,tegra30-hda"; 840 reg = <0x0 0x70030000 0x0 0x10000>; 841 interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>; 842 clocks = <&tegra_car TEGRA210_CLK_HDA>, 843 <&tegra_car TEGRA210_CLK_HDA2HDMI>, 844 <&tegra_car TEGRA210_CLK_HDA2CODEC_2X>; 845 clock-names = "hda", "hda2hdmi", "hda2codec_2x"; 846 resets = <&tegra_car 125>, /* hda */ 847 <&tegra_car 128>, /* hda2hdmi */ 848 <&tegra_car 111>; /* hda2codec_2x */ 849 reset-names = "hda", "hda2hdmi", "hda2codec_2x"; 850 status = "disabled"; 851 }; 852 853 usb@70090000 { 854 compatible = "nvidia,tegra210-xusb"; 855 reg = <0x0 0x70090000 0x0 0x8000>, 856 <0x0 0x70098000 0x0 0x1000>, 857 <0x0 0x70099000 0x0 0x1000>; 858 reg-names = "hcd", "fpci", "ipfs"; 859 860 interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>, 861 <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>; 862 863 clocks = <&tegra_car TEGRA210_CLK_XUSB_HOST>, 864 <&tegra_car TEGRA210_CLK_XUSB_HOST_SRC>, 865 <&tegra_car TEGRA210_CLK_XUSB_FALCON_SRC>, 866 <&tegra_car TEGRA210_CLK_XUSB_SS>, 867 <&tegra_car TEGRA210_CLK_XUSB_SS_DIV2>, 868 <&tegra_car TEGRA210_CLK_XUSB_SS_SRC>, 869 <&tegra_car TEGRA210_CLK_XUSB_HS_SRC>, 870 <&tegra_car TEGRA210_CLK_XUSB_FS_SRC>, 871 <&tegra_car TEGRA210_CLK_PLL_U_480M>, 872 <&tegra_car TEGRA210_CLK_CLK_M>, 873 <&tegra_car TEGRA210_CLK_PLL_E>; 874 clock-names = "xusb_host", "xusb_host_src", 875 "xusb_falcon_src", "xusb_ss", 876 "xusb_ss_div2", "xusb_ss_src", 877 "xusb_hs_src", "xusb_fs_src", 878 "pll_u_480m", "clk_m", "pll_e"; 879 resets = <&tegra_car 89>, <&tegra_car 156>, 880 <&tegra_car 143>; 881 reset-names = "xusb_host", "xusb_ss", "xusb_src"; 882 883 nvidia,xusb-padctl = <&padctl>; 884 885 status = "disabled"; 886 }; 887 888 padctl: padctl@7009f000 { 889 compatible = "nvidia,tegra210-xusb-padctl"; 890 reg = <0x0 0x7009f000 0x0 0x1000>; 891 resets = <&tegra_car 142>; 892 reset-names = "padctl"; 893 894 status = "disabled"; 895 896 pads { 897 usb2 { 898 clocks = <&tegra_car TEGRA210_CLK_USB2_TRK>; 899 clock-names = "trk"; 900 status = "disabled"; 901 902 lanes { 903 usb2-0 { 904 status = "disabled"; 905 #phy-cells = <0>; 906 }; 907 908 usb2-1 { 909 status = "disabled"; 910 #phy-cells = <0>; 911 }; 912 913 usb2-2 { 914 status = "disabled"; 915 #phy-cells = <0>; 916 }; 917 918 usb2-3 { 919 status = "disabled"; 920 #phy-cells = <0>; 921 }; 922 }; 923 }; 924 925 hsic { 926 clocks = <&tegra_car TEGRA210_CLK_HSIC_TRK>; 927 clock-names = "trk"; 928 status = "disabled"; 929 930 lanes { 931 hsic-0 { 932 status = "disabled"; 933 #phy-cells = <0>; 934 }; 935 936 hsic-1 { 937 status = "disabled"; 938 #phy-cells = <0>; 939 }; 940 }; 941 }; 942 943 pcie { 944 clocks = <&tegra_car TEGRA210_CLK_PLL_E>; 945 clock-names = "pll"; 946 resets = <&tegra_car 205>; 947 reset-names = "phy"; 948 status = "disabled"; 949 950 lanes { 951 pcie-0 { 952 status = "disabled"; 953 #phy-cells = <0>; 954 }; 955 956 pcie-1 { 957 status = "disabled"; 958 #phy-cells = <0>; 959 }; 960 961 pcie-2 { 962 status = "disabled"; 963 #phy-cells = <0>; 964 }; 965 966 pcie-3 { 967 status = "disabled"; 968 #phy-cells = <0>; 969 }; 970 971 pcie-4 { 972 status = "disabled"; 973 #phy-cells = <0>; 974 }; 975 976 pcie-5 { 977 status = "disabled"; 978 #phy-cells = <0>; 979 }; 980 981 pcie-6 { 982 status = "disabled"; 983 #phy-cells = <0>; 984 }; 985 }; 986 }; 987 988 sata { 989 clocks = <&tegra_car TEGRA210_CLK_PLL_E>; 990 clock-names = "pll"; 991 resets = <&tegra_car 204>; 992 reset-names = "phy"; 993 status = "disabled"; 994 995 lanes { 996 sata-0 { 997 status = "disabled"; 998 #phy-cells = <0>; 999 }; 1000 }; 1001 }; 1002 }; 1003 1004 ports { 1005 usb2-0 { 1006 status = "disabled"; 1007 }; 1008 1009 usb2-1 { 1010 status = "disabled"; 1011 }; 1012 1013 usb2-2 { 1014 status = "disabled"; 1015 }; 1016 1017 usb2-3 { 1018 status = "disabled"; 1019 }; 1020 1021 hsic-0 { 1022 status = "disabled"; 1023 }; 1024 1025 usb3-0 { 1026 status = "disabled"; 1027 }; 1028 1029 usb3-1 { 1030 status = "disabled"; 1031 }; 1032 1033 usb3-2 { 1034 status = "disabled"; 1035 }; 1036 1037 usb3-3 { 1038 status = "disabled"; 1039 }; 1040 }; 1041 }; 1042 1043 sdhci@700b0000 { 1044 compatible = "nvidia,tegra210-sdhci", "nvidia,tegra124-sdhci"; 1045 reg = <0x0 0x700b0000 0x0 0x200>; 1046 interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>; 1047 clocks = <&tegra_car TEGRA210_CLK_SDMMC1>; 1048 clock-names = "sdhci"; 1049 resets = <&tegra_car 14>; 1050 reset-names = "sdhci"; 1051 pinctrl-names = "sdmmc-3v3", "sdmmc-1v8"; 1052 pinctrl-0 = <&sdmmc1_3v3>; 1053 pinctrl-1 = <&sdmmc1_1v8>; 1054 nvidia,pad-autocal-pull-up-offset-3v3 = <0x00>; 1055 nvidia,pad-autocal-pull-down-offset-3v3 = <0x7d>; 1056 nvidia,pad-autocal-pull-up-offset-1v8 = <0x7b>; 1057 nvidia,pad-autocal-pull-down-offset-1v8 = <0x7b>; 1058 nvidia,default-tap = <0x2>; 1059 nvidia,default-trim = <0x4>; 1060 status = "disabled"; 1061 }; 1062 1063 sdhci@700b0200 { 1064 compatible = "nvidia,tegra210-sdhci", "nvidia,tegra124-sdhci"; 1065 reg = <0x0 0x700b0200 0x0 0x200>; 1066 interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>; 1067 clocks = <&tegra_car TEGRA210_CLK_SDMMC2>; 1068 clock-names = "sdhci"; 1069 resets = <&tegra_car 9>; 1070 reset-names = "sdhci"; 1071 nvidia,pad-autocal-pull-up-offset-1v8 = <0x05>; 1072 nvidia,pad-autocal-pull-down-offset-1v8 = <0x05>; 1073 nvidia,default-tap = <0x8>; 1074 nvidia,default-trim = <0x0>; 1075 status = "disabled"; 1076 }; 1077 1078 sdhci@700b0400 { 1079 compatible = "nvidia,tegra210-sdhci", "nvidia,tegra124-sdhci"; 1080 reg = <0x0 0x700b0400 0x0 0x200>; 1081 interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>; 1082 clocks = <&tegra_car TEGRA210_CLK_SDMMC3>; 1083 clock-names = "sdhci"; 1084 resets = <&tegra_car 69>; 1085 reset-names = "sdhci"; 1086 pinctrl-names = "sdmmc-3v3", "sdmmc-1v8"; 1087 pinctrl-0 = <&sdmmc3_3v3>; 1088 pinctrl-1 = <&sdmmc3_1v8>; 1089 nvidia,pad-autocal-pull-up-offset-3v3 = <0x00>; 1090 nvidia,pad-autocal-pull-down-offset-3v3 = <0x7d>; 1091 nvidia,pad-autocal-pull-up-offset-1v8 = <0x7b>; 1092 nvidia,pad-autocal-pull-down-offset-1v8 = <0x7b>; 1093 nvidia,default-tap = <0x3>; 1094 nvidia,default-trim = <0x3>; 1095 status = "disabled"; 1096 }; 1097 1098 sdhci@700b0600 { 1099 compatible = "nvidia,tegra210-sdhci", "nvidia,tegra124-sdhci"; 1100 reg = <0x0 0x700b0600 0x0 0x200>; 1101 interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>; 1102 clocks = <&tegra_car TEGRA210_CLK_SDMMC4>; 1103 clock-names = "sdhci"; 1104 resets = <&tegra_car 15>; 1105 reset-names = "sdhci"; 1106 nvidia,pad-autocal-pull-up-offset-1v8 = <0x05>; 1107 nvidia,pad-autocal-pull-down-offset-1v8 = <0x05>; 1108 nvidia,default-tap = <0x8>; 1109 nvidia,default-trim = <0x0>; 1110 status = "disabled"; 1111 }; 1112 1113 mipi: mipi@700e3000 { 1114 compatible = "nvidia,tegra210-mipi"; 1115 reg = <0x0 0x700e3000 0x0 0x100>; 1116 clocks = <&tegra_car TEGRA210_CLK_MIPI_CAL>; 1117 clock-names = "mipi-cal"; 1118 power-domains = <&pd_sor>; 1119 #nvidia,mipi-calibrate-cells = <1>; 1120 }; 1121 1122 aconnect@702c0000 { 1123 compatible = "nvidia,tegra210-aconnect"; 1124 clocks = <&tegra_car TEGRA210_CLK_APE>, 1125 <&tegra_car TEGRA210_CLK_APB2APE>; 1126 clock-names = "ape", "apb2ape"; 1127 power-domains = <&pd_audio>; 1128 #address-cells = <1>; 1129 #size-cells = <1>; 1130 ranges = <0x702c0000 0x0 0x702c0000 0x00040000>; 1131 status = "disabled"; 1132 1133 adma: dma@702e2000 { 1134 compatible = "nvidia,tegra210-adma"; 1135 reg = <0x702e2000 0x2000>; 1136 interrupt-parent = <&agic>; 1137 interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>, 1138 <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>, 1139 <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>, 1140 <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>, 1141 <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>, 1142 <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>, 1143 <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>, 1144 <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>, 1145 <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>, 1146 <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>, 1147 <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>, 1148 <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>, 1149 <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>, 1150 <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>, 1151 <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>, 1152 <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>, 1153 <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>, 1154 <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>, 1155 <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>, 1156 <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>, 1157 <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>, 1158 <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>; 1159 #dma-cells = <1>; 1160 clocks = <&tegra_car TEGRA210_CLK_D_AUDIO>; 1161 clock-names = "d_audio"; 1162 status = "disabled"; 1163 }; 1164 1165 agic: agic@702f9000 { 1166 compatible = "nvidia,tegra210-agic"; 1167 #interrupt-cells = <3>; 1168 interrupt-controller; 1169 reg = <0x702f9000 0x2000>, 1170 <0x702fa000 0x2000>; 1171 interrupts = <GIC_SPI 102 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; 1172 clocks = <&tegra_car TEGRA210_CLK_APE>; 1173 clock-names = "clk"; 1174 status = "disabled"; 1175 }; 1176 }; 1177 1178 spi@70410000 { 1179 compatible = "nvidia,tegra210-qspi"; 1180 reg = <0x0 0x70410000 0x0 0x1000>; 1181 interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>; 1182 #address-cells = <1>; 1183 #size-cells = <0>; 1184 clocks = <&tegra_car TEGRA210_CLK_QSPI>; 1185 clock-names = "qspi"; 1186 resets = <&tegra_car 211>; 1187 reset-names = "qspi"; 1188 dmas = <&apbdma 5>, <&apbdma 5>; 1189 dma-names = "rx", "tx"; 1190 status = "disabled"; 1191 }; 1192 1193 usb@7d000000 { 1194 compatible = "nvidia,tegra210-ehci", "nvidia,tegra30-ehci", "usb-ehci"; 1195 reg = <0x0 0x7d000000 0x0 0x4000>; 1196 interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>; 1197 phy_type = "utmi"; 1198 clocks = <&tegra_car TEGRA210_CLK_USBD>; 1199 clock-names = "usb"; 1200 resets = <&tegra_car 22>; 1201 reset-names = "usb"; 1202 nvidia,phy = <&phy1>; 1203 status = "disabled"; 1204 }; 1205 1206 phy1: usb-phy@7d000000 { 1207 compatible = "nvidia,tegra210-usb-phy", "nvidia,tegra30-usb-phy"; 1208 reg = <0x0 0x7d000000 0x0 0x4000>, 1209 <0x0 0x7d000000 0x0 0x4000>; 1210 phy_type = "utmi"; 1211 clocks = <&tegra_car TEGRA210_CLK_USBD>, 1212 <&tegra_car TEGRA210_CLK_PLL_U>, 1213 <&tegra_car TEGRA210_CLK_USBD>; 1214 clock-names = "reg", "pll_u", "utmi-pads"; 1215 resets = <&tegra_car 22>, <&tegra_car 22>; 1216 reset-names = "usb", "utmi-pads"; 1217 nvidia,hssync-start-delay = <0>; 1218 nvidia,idle-wait-delay = <17>; 1219 nvidia,elastic-limit = <16>; 1220 nvidia,term-range-adj = <6>; 1221 nvidia,xcvr-setup = <9>; 1222 nvidia,xcvr-lsfslew = <0>; 1223 nvidia,xcvr-lsrslew = <3>; 1224 nvidia,hssquelch-level = <2>; 1225 nvidia,hsdiscon-level = <5>; 1226 nvidia,xcvr-hsslew = <12>; 1227 nvidia,has-utmi-pad-registers; 1228 status = "disabled"; 1229 }; 1230 1231 usb@7d004000 { 1232 compatible = "nvidia,tegra210-ehci", "nvidia,tegra30-ehci", "usb-ehci"; 1233 reg = <0x0 0x7d004000 0x0 0x4000>; 1234 interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>; 1235 phy_type = "utmi"; 1236 clocks = <&tegra_car TEGRA210_CLK_USB2>; 1237 clock-names = "usb"; 1238 resets = <&tegra_car 58>; 1239 reset-names = "usb"; 1240 nvidia,phy = <&phy2>; 1241 status = "disabled"; 1242 }; 1243 1244 phy2: usb-phy@7d004000 { 1245 compatible = "nvidia,tegra210-usb-phy", "nvidia,tegra30-usb-phy"; 1246 reg = <0x0 0x7d004000 0x0 0x4000>, 1247 <0x0 0x7d000000 0x0 0x4000>; 1248 phy_type = "utmi"; 1249 clocks = <&tegra_car TEGRA210_CLK_USB2>, 1250 <&tegra_car TEGRA210_CLK_PLL_U>, 1251 <&tegra_car TEGRA210_CLK_USBD>; 1252 clock-names = "reg", "pll_u", "utmi-pads"; 1253 resets = <&tegra_car 58>, <&tegra_car 22>; 1254 reset-names = "usb", "utmi-pads"; 1255 nvidia,hssync-start-delay = <0>; 1256 nvidia,idle-wait-delay = <17>; 1257 nvidia,elastic-limit = <16>; 1258 nvidia,term-range-adj = <6>; 1259 nvidia,xcvr-setup = <9>; 1260 nvidia,xcvr-lsfslew = <0>; 1261 nvidia,xcvr-lsrslew = <3>; 1262 nvidia,hssquelch-level = <2>; 1263 nvidia,hsdiscon-level = <5>; 1264 nvidia,xcvr-hsslew = <12>; 1265 status = "disabled"; 1266 }; 1267 1268 cpus { 1269 #address-cells = <1>; 1270 #size-cells = <0>; 1271 1272 cpu@0 { 1273 device_type = "cpu"; 1274 compatible = "arm,cortex-a57"; 1275 reg = <0>; 1276 }; 1277 1278 cpu@1 { 1279 device_type = "cpu"; 1280 compatible = "arm,cortex-a57"; 1281 reg = <1>; 1282 }; 1283 1284 cpu@2 { 1285 device_type = "cpu"; 1286 compatible = "arm,cortex-a57"; 1287 reg = <2>; 1288 }; 1289 1290 cpu@3 { 1291 device_type = "cpu"; 1292 compatible = "arm,cortex-a57"; 1293 reg = <3>; 1294 }; 1295 }; 1296 1297 timer { 1298 compatible = "arm,armv8-timer"; 1299 interrupts = <GIC_PPI 13 1300 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 1301 <GIC_PPI 14 1302 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 1303 <GIC_PPI 11 1304 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 1305 <GIC_PPI 10 1306 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; 1307 interrupt-parent = <&gic>; 1308 }; 1309 1310 soctherm: thermal-sensor@700e2000 { 1311 compatible = "nvidia,tegra210-soctherm"; 1312 reg = <0x0 0x700e2000 0x0 0x600 /* SOC_THERM reg_base */ 1313 0x0 0x60006000 0x0 0x400>; /* CAR reg_base */ 1314 reg-names = "soctherm-reg", "car-reg"; 1315 interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>; 1316 clocks = <&tegra_car TEGRA210_CLK_TSENSOR>, 1317 <&tegra_car TEGRA210_CLK_SOC_THERM>; 1318 clock-names = "tsensor", "soctherm"; 1319 resets = <&tegra_car 78>; 1320 reset-names = "soctherm"; 1321 #thermal-sensor-cells = <1>; 1322 1323 throttle-cfgs { 1324 throttle_heavy: heavy { 1325 nvidia,priority = <100>; 1326 nvidia,cpu-throt-percent = <85>; 1327 1328 #cooling-cells = <2>; 1329 }; 1330 }; 1331 }; 1332 1333 thermal-zones { 1334 cpu { 1335 polling-delay-passive = <1000>; 1336 polling-delay = <0>; 1337 1338 thermal-sensors = 1339 <&soctherm TEGRA124_SOCTHERM_SENSOR_CPU>; 1340 1341 trips { 1342 cpu-shutdown-trip { 1343 temperature = <102500>; 1344 hysteresis = <0>; 1345 type = "critical"; 1346 }; 1347 1348 cpu_throttle_trip: throttle-trip { 1349 temperature = <98500>; 1350 hysteresis = <1000>; 1351 type = "hot"; 1352 }; 1353 }; 1354 1355 cooling-maps { 1356 map0 { 1357 trip = <&cpu_throttle_trip>; 1358 cooling-device = <&throttle_heavy 1 1>; 1359 }; 1360 }; 1361 }; 1362 mem { 1363 polling-delay-passive = <0>; 1364 polling-delay = <0>; 1365 1366 thermal-sensors = 1367 <&soctherm TEGRA124_SOCTHERM_SENSOR_MEM>; 1368 1369 trips { 1370 mem-shutdown-trip { 1371 temperature = <103000>; 1372 hysteresis = <0>; 1373 type = "critical"; 1374 }; 1375 }; 1376 1377 cooling-maps { 1378 /* 1379 * There are currently no cooling maps, 1380 * because there are no cooling devices. 1381 */ 1382 }; 1383 }; 1384 gpu { 1385 polling-delay-passive = <1000>; 1386 polling-delay = <0>; 1387 1388 thermal-sensors = 1389 <&soctherm TEGRA124_SOCTHERM_SENSOR_GPU>; 1390 1391 trips { 1392 gpu-shutdown-trip { 1393 temperature = <103000>; 1394 hysteresis = <0>; 1395 type = "critical"; 1396 }; 1397 1398 gpu_throttle_trip: throttle-trip { 1399 temperature = <100000>; 1400 hysteresis = <1000>; 1401 type = "hot"; 1402 }; 1403 }; 1404 1405 cooling-maps { 1406 map0 { 1407 trip = <&gpu_throttle_trip>; 1408 cooling-device = <&throttle_heavy 1 1>; 1409 }; 1410 }; 1411 }; 1412 pllx { 1413 polling-delay-passive = <0>; 1414 polling-delay = <0>; 1415 1416 thermal-sensors = 1417 <&soctherm TEGRA124_SOCTHERM_SENSOR_PLLX>; 1418 1419 trips { 1420 pllx-shutdown-trip { 1421 temperature = <103000>; 1422 hysteresis = <0>; 1423 type = "critical"; 1424 }; 1425 }; 1426 1427 cooling-maps { 1428 /* 1429 * There are currently no cooling maps, 1430 * because there are no cooling devices. 1431 */ 1432 }; 1433 }; 1434 }; 1435}; 1436