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 0x70000008 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 power-domains = <&pd_xusbhost>, <&pd_xusbss>; 883 power-domain-names = "xusb_host", "xusb_ss"; 884 885 nvidia,xusb-padctl = <&padctl>; 886 887 status = "disabled"; 888 }; 889 890 padctl: padctl@7009f000 { 891 compatible = "nvidia,tegra210-xusb-padctl"; 892 reg = <0x0 0x7009f000 0x0 0x1000>; 893 resets = <&tegra_car 142>; 894 reset-names = "padctl"; 895 896 status = "disabled"; 897 898 pads { 899 usb2 { 900 clocks = <&tegra_car TEGRA210_CLK_USB2_TRK>; 901 clock-names = "trk"; 902 status = "disabled"; 903 904 lanes { 905 usb2-0 { 906 status = "disabled"; 907 #phy-cells = <0>; 908 }; 909 910 usb2-1 { 911 status = "disabled"; 912 #phy-cells = <0>; 913 }; 914 915 usb2-2 { 916 status = "disabled"; 917 #phy-cells = <0>; 918 }; 919 920 usb2-3 { 921 status = "disabled"; 922 #phy-cells = <0>; 923 }; 924 }; 925 }; 926 927 hsic { 928 clocks = <&tegra_car TEGRA210_CLK_HSIC_TRK>; 929 clock-names = "trk"; 930 status = "disabled"; 931 932 lanes { 933 hsic-0 { 934 status = "disabled"; 935 #phy-cells = <0>; 936 }; 937 938 hsic-1 { 939 status = "disabled"; 940 #phy-cells = <0>; 941 }; 942 }; 943 }; 944 945 pcie { 946 clocks = <&tegra_car TEGRA210_CLK_PLL_E>; 947 clock-names = "pll"; 948 resets = <&tegra_car 205>; 949 reset-names = "phy"; 950 status = "disabled"; 951 952 lanes { 953 pcie-0 { 954 status = "disabled"; 955 #phy-cells = <0>; 956 }; 957 958 pcie-1 { 959 status = "disabled"; 960 #phy-cells = <0>; 961 }; 962 963 pcie-2 { 964 status = "disabled"; 965 #phy-cells = <0>; 966 }; 967 968 pcie-3 { 969 status = "disabled"; 970 #phy-cells = <0>; 971 }; 972 973 pcie-4 { 974 status = "disabled"; 975 #phy-cells = <0>; 976 }; 977 978 pcie-5 { 979 status = "disabled"; 980 #phy-cells = <0>; 981 }; 982 983 pcie-6 { 984 status = "disabled"; 985 #phy-cells = <0>; 986 }; 987 }; 988 }; 989 990 sata { 991 clocks = <&tegra_car TEGRA210_CLK_PLL_E>; 992 clock-names = "pll"; 993 resets = <&tegra_car 204>; 994 reset-names = "phy"; 995 status = "disabled"; 996 997 lanes { 998 sata-0 { 999 status = "disabled"; 1000 #phy-cells = <0>; 1001 }; 1002 }; 1003 }; 1004 }; 1005 1006 ports { 1007 usb2-0 { 1008 status = "disabled"; 1009 }; 1010 1011 usb2-1 { 1012 status = "disabled"; 1013 }; 1014 1015 usb2-2 { 1016 status = "disabled"; 1017 }; 1018 1019 usb2-3 { 1020 status = "disabled"; 1021 }; 1022 1023 hsic-0 { 1024 status = "disabled"; 1025 }; 1026 1027 usb3-0 { 1028 status = "disabled"; 1029 }; 1030 1031 usb3-1 { 1032 status = "disabled"; 1033 }; 1034 1035 usb3-2 { 1036 status = "disabled"; 1037 }; 1038 1039 usb3-3 { 1040 status = "disabled"; 1041 }; 1042 }; 1043 }; 1044 1045 sdhci@700b0000 { 1046 compatible = "nvidia,tegra210-sdhci", "nvidia,tegra124-sdhci"; 1047 reg = <0x0 0x700b0000 0x0 0x200>; 1048 interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>; 1049 clocks = <&tegra_car TEGRA210_CLK_SDMMC1>; 1050 clock-names = "sdhci"; 1051 resets = <&tegra_car 14>; 1052 reset-names = "sdhci"; 1053 pinctrl-names = "sdmmc-3v3", "sdmmc-1v8"; 1054 pinctrl-0 = <&sdmmc1_3v3>; 1055 pinctrl-1 = <&sdmmc1_1v8>; 1056 nvidia,pad-autocal-pull-up-offset-3v3 = <0x00>; 1057 nvidia,pad-autocal-pull-down-offset-3v3 = <0x7d>; 1058 nvidia,pad-autocal-pull-up-offset-1v8 = <0x7b>; 1059 nvidia,pad-autocal-pull-down-offset-1v8 = <0x7b>; 1060 nvidia,default-tap = <0x2>; 1061 nvidia,default-trim = <0x4>; 1062 assigned-clocks = <&tegra_car TEGRA210_CLK_SDMMC4>, 1063 <&tegra_car TEGRA210_CLK_PLL_C4_OUT0>, 1064 <&tegra_car TEGRA210_CLK_PLL_C4>; 1065 assigned-clock-parents = <&tegra_car TEGRA210_CLK_PLL_C4_OUT0>; 1066 assigned-clock-rates = <200000000>, <1000000000>, <1000000000>; 1067 status = "disabled"; 1068 }; 1069 1070 sdhci@700b0200 { 1071 compatible = "nvidia,tegra210-sdhci", "nvidia,tegra124-sdhci"; 1072 reg = <0x0 0x700b0200 0x0 0x200>; 1073 interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>; 1074 clocks = <&tegra_car TEGRA210_CLK_SDMMC2>; 1075 clock-names = "sdhci"; 1076 resets = <&tegra_car 9>; 1077 reset-names = "sdhci"; 1078 nvidia,pad-autocal-pull-up-offset-1v8 = <0x05>; 1079 nvidia,pad-autocal-pull-down-offset-1v8 = <0x05>; 1080 nvidia,default-tap = <0x8>; 1081 nvidia,default-trim = <0x0>; 1082 status = "disabled"; 1083 }; 1084 1085 sdhci@700b0400 { 1086 compatible = "nvidia,tegra210-sdhci", "nvidia,tegra124-sdhci"; 1087 reg = <0x0 0x700b0400 0x0 0x200>; 1088 interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>; 1089 clocks = <&tegra_car TEGRA210_CLK_SDMMC3>; 1090 clock-names = "sdhci"; 1091 resets = <&tegra_car 69>; 1092 reset-names = "sdhci"; 1093 pinctrl-names = "sdmmc-3v3", "sdmmc-1v8"; 1094 pinctrl-0 = <&sdmmc3_3v3>; 1095 pinctrl-1 = <&sdmmc3_1v8>; 1096 nvidia,pad-autocal-pull-up-offset-3v3 = <0x00>; 1097 nvidia,pad-autocal-pull-down-offset-3v3 = <0x7d>; 1098 nvidia,pad-autocal-pull-up-offset-1v8 = <0x7b>; 1099 nvidia,pad-autocal-pull-down-offset-1v8 = <0x7b>; 1100 nvidia,default-tap = <0x3>; 1101 nvidia,default-trim = <0x3>; 1102 status = "disabled"; 1103 }; 1104 1105 sdhci@700b0600 { 1106 compatible = "nvidia,tegra210-sdhci", "nvidia,tegra124-sdhci"; 1107 reg = <0x0 0x700b0600 0x0 0x200>; 1108 interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>; 1109 clocks = <&tegra_car TEGRA210_CLK_SDMMC4>; 1110 clock-names = "sdhci"; 1111 resets = <&tegra_car 15>; 1112 reset-names = "sdhci"; 1113 nvidia,pad-autocal-pull-up-offset-1v8 = <0x05>; 1114 nvidia,pad-autocal-pull-down-offset-1v8 = <0x05>; 1115 nvidia,default-tap = <0x8>; 1116 nvidia,default-trim = <0x0>; 1117 assigned-clocks = <&tegra_car TEGRA210_CLK_SDMMC4>, 1118 <&tegra_car TEGRA210_CLK_PLL_C4_OUT0>; 1119 assigned-clock-parents = <&tegra_car TEGRA210_CLK_PLL_C4_OUT0>; 1120 nvidia,dqs-trim = <40>; 1121 mmc-hs400-1_8v; 1122 status = "disabled"; 1123 }; 1124 1125 mipi: mipi@700e3000 { 1126 compatible = "nvidia,tegra210-mipi"; 1127 reg = <0x0 0x700e3000 0x0 0x100>; 1128 clocks = <&tegra_car TEGRA210_CLK_MIPI_CAL>; 1129 clock-names = "mipi-cal"; 1130 power-domains = <&pd_sor>; 1131 #nvidia,mipi-calibrate-cells = <1>; 1132 }; 1133 1134 aconnect@702c0000 { 1135 compatible = "nvidia,tegra210-aconnect"; 1136 clocks = <&tegra_car TEGRA210_CLK_APE>, 1137 <&tegra_car TEGRA210_CLK_APB2APE>; 1138 clock-names = "ape", "apb2ape"; 1139 power-domains = <&pd_audio>; 1140 #address-cells = <1>; 1141 #size-cells = <1>; 1142 ranges = <0x702c0000 0x0 0x702c0000 0x00040000>; 1143 status = "disabled"; 1144 1145 adma: dma@702e2000 { 1146 compatible = "nvidia,tegra210-adma"; 1147 reg = <0x702e2000 0x2000>; 1148 interrupt-parent = <&agic>; 1149 interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>, 1150 <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>, 1151 <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>, 1152 <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>, 1153 <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>, 1154 <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>, 1155 <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>, 1156 <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>, 1157 <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>, 1158 <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>, 1159 <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>, 1160 <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>, 1161 <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>, 1162 <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>, 1163 <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>, 1164 <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>, 1165 <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>, 1166 <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>, 1167 <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>, 1168 <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>, 1169 <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>, 1170 <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>; 1171 #dma-cells = <1>; 1172 clocks = <&tegra_car TEGRA210_CLK_D_AUDIO>; 1173 clock-names = "d_audio"; 1174 status = "disabled"; 1175 }; 1176 1177 agic: agic@702f9000 { 1178 compatible = "nvidia,tegra210-agic"; 1179 #interrupt-cells = <3>; 1180 interrupt-controller; 1181 reg = <0x702f9000 0x2000>, 1182 <0x702fa000 0x2000>; 1183 interrupts = <GIC_SPI 102 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; 1184 clocks = <&tegra_car TEGRA210_CLK_APE>; 1185 clock-names = "clk"; 1186 status = "disabled"; 1187 }; 1188 }; 1189 1190 spi@70410000 { 1191 compatible = "nvidia,tegra210-qspi"; 1192 reg = <0x0 0x70410000 0x0 0x1000>; 1193 interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>; 1194 #address-cells = <1>; 1195 #size-cells = <0>; 1196 clocks = <&tegra_car TEGRA210_CLK_QSPI>; 1197 clock-names = "qspi"; 1198 resets = <&tegra_car 211>; 1199 reset-names = "qspi"; 1200 dmas = <&apbdma 5>, <&apbdma 5>; 1201 dma-names = "rx", "tx"; 1202 status = "disabled"; 1203 }; 1204 1205 usb@7d000000 { 1206 compatible = "nvidia,tegra210-ehci", "nvidia,tegra30-ehci", "usb-ehci"; 1207 reg = <0x0 0x7d000000 0x0 0x4000>; 1208 interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>; 1209 phy_type = "utmi"; 1210 clocks = <&tegra_car TEGRA210_CLK_USBD>; 1211 clock-names = "usb"; 1212 resets = <&tegra_car 22>; 1213 reset-names = "usb"; 1214 nvidia,phy = <&phy1>; 1215 status = "disabled"; 1216 }; 1217 1218 phy1: usb-phy@7d000000 { 1219 compatible = "nvidia,tegra210-usb-phy", "nvidia,tegra30-usb-phy"; 1220 reg = <0x0 0x7d000000 0x0 0x4000>, 1221 <0x0 0x7d000000 0x0 0x4000>; 1222 phy_type = "utmi"; 1223 clocks = <&tegra_car TEGRA210_CLK_USBD>, 1224 <&tegra_car TEGRA210_CLK_PLL_U>, 1225 <&tegra_car TEGRA210_CLK_USBD>; 1226 clock-names = "reg", "pll_u", "utmi-pads"; 1227 resets = <&tegra_car 22>, <&tegra_car 22>; 1228 reset-names = "usb", "utmi-pads"; 1229 nvidia,hssync-start-delay = <0>; 1230 nvidia,idle-wait-delay = <17>; 1231 nvidia,elastic-limit = <16>; 1232 nvidia,term-range-adj = <6>; 1233 nvidia,xcvr-setup = <9>; 1234 nvidia,xcvr-lsfslew = <0>; 1235 nvidia,xcvr-lsrslew = <3>; 1236 nvidia,hssquelch-level = <2>; 1237 nvidia,hsdiscon-level = <5>; 1238 nvidia,xcvr-hsslew = <12>; 1239 nvidia,has-utmi-pad-registers; 1240 status = "disabled"; 1241 }; 1242 1243 usb@7d004000 { 1244 compatible = "nvidia,tegra210-ehci", "nvidia,tegra30-ehci", "usb-ehci"; 1245 reg = <0x0 0x7d004000 0x0 0x4000>; 1246 interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>; 1247 phy_type = "utmi"; 1248 clocks = <&tegra_car TEGRA210_CLK_USB2>; 1249 clock-names = "usb"; 1250 resets = <&tegra_car 58>; 1251 reset-names = "usb"; 1252 nvidia,phy = <&phy2>; 1253 status = "disabled"; 1254 }; 1255 1256 phy2: usb-phy@7d004000 { 1257 compatible = "nvidia,tegra210-usb-phy", "nvidia,tegra30-usb-phy"; 1258 reg = <0x0 0x7d004000 0x0 0x4000>, 1259 <0x0 0x7d000000 0x0 0x4000>; 1260 phy_type = "utmi"; 1261 clocks = <&tegra_car TEGRA210_CLK_USB2>, 1262 <&tegra_car TEGRA210_CLK_PLL_U>, 1263 <&tegra_car TEGRA210_CLK_USBD>; 1264 clock-names = "reg", "pll_u", "utmi-pads"; 1265 resets = <&tegra_car 58>, <&tegra_car 22>; 1266 reset-names = "usb", "utmi-pads"; 1267 nvidia,hssync-start-delay = <0>; 1268 nvidia,idle-wait-delay = <17>; 1269 nvidia,elastic-limit = <16>; 1270 nvidia,term-range-adj = <6>; 1271 nvidia,xcvr-setup = <9>; 1272 nvidia,xcvr-lsfslew = <0>; 1273 nvidia,xcvr-lsrslew = <3>; 1274 nvidia,hssquelch-level = <2>; 1275 nvidia,hsdiscon-level = <5>; 1276 nvidia,xcvr-hsslew = <12>; 1277 status = "disabled"; 1278 }; 1279 1280 cpus { 1281 #address-cells = <1>; 1282 #size-cells = <0>; 1283 1284 cpu@0 { 1285 device_type = "cpu"; 1286 compatible = "arm,cortex-a57"; 1287 reg = <0>; 1288 }; 1289 1290 cpu@1 { 1291 device_type = "cpu"; 1292 compatible = "arm,cortex-a57"; 1293 reg = <1>; 1294 }; 1295 1296 cpu@2 { 1297 device_type = "cpu"; 1298 compatible = "arm,cortex-a57"; 1299 reg = <2>; 1300 }; 1301 1302 cpu@3 { 1303 device_type = "cpu"; 1304 compatible = "arm,cortex-a57"; 1305 reg = <3>; 1306 }; 1307 }; 1308 1309 timer { 1310 compatible = "arm,armv8-timer"; 1311 interrupts = <GIC_PPI 13 1312 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 1313 <GIC_PPI 14 1314 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 1315 <GIC_PPI 11 1316 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 1317 <GIC_PPI 10 1318 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; 1319 interrupt-parent = <&gic>; 1320 }; 1321 1322 soctherm: thermal-sensor@700e2000 { 1323 compatible = "nvidia,tegra210-soctherm"; 1324 reg = <0x0 0x700e2000 0x0 0x600 /* SOC_THERM reg_base */ 1325 0x0 0x60006000 0x0 0x400>; /* CAR reg_base */ 1326 reg-names = "soctherm-reg", "car-reg"; 1327 interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>; 1328 clocks = <&tegra_car TEGRA210_CLK_TSENSOR>, 1329 <&tegra_car TEGRA210_CLK_SOC_THERM>; 1330 clock-names = "tsensor", "soctherm"; 1331 resets = <&tegra_car 78>; 1332 reset-names = "soctherm"; 1333 #thermal-sensor-cells = <1>; 1334 1335 throttle-cfgs { 1336 throttle_heavy: heavy { 1337 nvidia,priority = <100>; 1338 nvidia,cpu-throt-percent = <85>; 1339 1340 #cooling-cells = <2>; 1341 }; 1342 }; 1343 }; 1344 1345 thermal-zones { 1346 cpu { 1347 polling-delay-passive = <1000>; 1348 polling-delay = <0>; 1349 1350 thermal-sensors = 1351 <&soctherm TEGRA124_SOCTHERM_SENSOR_CPU>; 1352 1353 trips { 1354 cpu-shutdown-trip { 1355 temperature = <102500>; 1356 hysteresis = <0>; 1357 type = "critical"; 1358 }; 1359 1360 cpu_throttle_trip: throttle-trip { 1361 temperature = <98500>; 1362 hysteresis = <1000>; 1363 type = "hot"; 1364 }; 1365 }; 1366 1367 cooling-maps { 1368 map0 { 1369 trip = <&cpu_throttle_trip>; 1370 cooling-device = <&throttle_heavy 1 1>; 1371 }; 1372 }; 1373 }; 1374 mem { 1375 polling-delay-passive = <0>; 1376 polling-delay = <0>; 1377 1378 thermal-sensors = 1379 <&soctherm TEGRA124_SOCTHERM_SENSOR_MEM>; 1380 1381 trips { 1382 mem-shutdown-trip { 1383 temperature = <103000>; 1384 hysteresis = <0>; 1385 type = "critical"; 1386 }; 1387 }; 1388 1389 cooling-maps { 1390 /* 1391 * There are currently no cooling maps, 1392 * because there are no cooling devices. 1393 */ 1394 }; 1395 }; 1396 gpu { 1397 polling-delay-passive = <1000>; 1398 polling-delay = <0>; 1399 1400 thermal-sensors = 1401 <&soctherm TEGRA124_SOCTHERM_SENSOR_GPU>; 1402 1403 trips { 1404 gpu-shutdown-trip { 1405 temperature = <103000>; 1406 hysteresis = <0>; 1407 type = "critical"; 1408 }; 1409 1410 gpu_throttle_trip: throttle-trip { 1411 temperature = <100000>; 1412 hysteresis = <1000>; 1413 type = "hot"; 1414 }; 1415 }; 1416 1417 cooling-maps { 1418 map0 { 1419 trip = <&gpu_throttle_trip>; 1420 cooling-device = <&throttle_heavy 1 1>; 1421 }; 1422 }; 1423 }; 1424 pllx { 1425 polling-delay-passive = <0>; 1426 polling-delay = <0>; 1427 1428 thermal-sensors = 1429 <&soctherm TEGRA124_SOCTHERM_SENSOR_PLLX>; 1430 1431 trips { 1432 pllx-shutdown-trip { 1433 temperature = <103000>; 1434 hysteresis = <0>; 1435 type = "critical"; 1436 }; 1437 }; 1438 1439 cooling-maps { 1440 /* 1441 * There are currently no cooling maps, 1442 * because there are no cooling devices. 1443 */ 1444 }; 1445 }; 1446 }; 1447}; 1448