1// SPDX-License-Identifier: GPL-2.0 2#include <dt-bindings/clock/tegra114-car.h> 3#include <dt-bindings/gpio/tegra-gpio.h> 4#include <dt-bindings/memory/tegra114-mc.h> 5#include <dt-bindings/pinctrl/pinctrl-tegra.h> 6#include <dt-bindings/interrupt-controller/arm-gic.h> 7 8/ { 9 compatible = "nvidia,tegra114"; 10 interrupt-parent = <&lic>; 11 #address-cells = <1>; 12 #size-cells = <1>; 13 14 memory@80000000 { 15 device_type = "memory"; 16 reg = <0x80000000 0x0>; 17 }; 18 19 host1x@50000000 { 20 compatible = "nvidia,tegra114-host1x", "simple-bus"; 21 reg = <0x50000000 0x00028000>; 22 interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>, /* syncpt */ 23 <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>; /* general */ 24 clocks = <&tegra_car TEGRA114_CLK_HOST1X>; 25 resets = <&tegra_car 28>; 26 reset-names = "host1x"; 27 iommus = <&mc TEGRA_SWGROUP_HC>; 28 29 #address-cells = <1>; 30 #size-cells = <1>; 31 32 ranges = <0x54000000 0x54000000 0x01000000>; 33 34 gr2d@54140000 { 35 compatible = "nvidia,tegra114-gr2d", "nvidia,tegra20-gr2d"; 36 reg = <0x54140000 0x00040000>; 37 interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>; 38 clocks = <&tegra_car TEGRA114_CLK_GR2D>; 39 resets = <&tegra_car 21>; 40 reset-names = "2d"; 41 42 iommus = <&mc TEGRA_SWGROUP_G2>; 43 }; 44 45 gr3d@54180000 { 46 compatible = "nvidia,tegra114-gr3d", "nvidia,tegra20-gr3d"; 47 reg = <0x54180000 0x00040000>; 48 clocks = <&tegra_car TEGRA114_CLK_GR3D>; 49 resets = <&tegra_car 24>; 50 reset-names = "3d"; 51 52 iommus = <&mc TEGRA_SWGROUP_NV>; 53 }; 54 55 dc@54200000 { 56 compatible = "nvidia,tegra114-dc", "nvidia,tegra20-dc"; 57 reg = <0x54200000 0x00040000>; 58 interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; 59 clocks = <&tegra_car TEGRA114_CLK_DISP1>, 60 <&tegra_car TEGRA114_CLK_PLL_P>; 61 clock-names = "dc", "parent"; 62 resets = <&tegra_car 27>; 63 reset-names = "dc"; 64 65 iommus = <&mc TEGRA_SWGROUP_DC>; 66 67 nvidia,head = <0>; 68 69 rgb { 70 status = "disabled"; 71 }; 72 }; 73 74 dc@54240000 { 75 compatible = "nvidia,tegra114-dc", "nvidia,tegra20-dc"; 76 reg = <0x54240000 0x00040000>; 77 interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>; 78 clocks = <&tegra_car TEGRA114_CLK_DISP2>, 79 <&tegra_car TEGRA114_CLK_PLL_P>; 80 clock-names = "dc", "parent"; 81 resets = <&tegra_car 26>; 82 reset-names = "dc"; 83 84 iommus = <&mc TEGRA_SWGROUP_DCB>; 85 86 nvidia,head = <1>; 87 88 rgb { 89 status = "disabled"; 90 }; 91 }; 92 93 hdmi@54280000 { 94 compatible = "nvidia,tegra114-hdmi"; 95 reg = <0x54280000 0x00040000>; 96 interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>; 97 clocks = <&tegra_car TEGRA114_CLK_HDMI>, 98 <&tegra_car TEGRA114_CLK_PLL_D2_OUT0>; 99 clock-names = "hdmi", "parent"; 100 resets = <&tegra_car 51>; 101 reset-names = "hdmi"; 102 status = "disabled"; 103 }; 104 105 dsi@54300000 { 106 compatible = "nvidia,tegra114-dsi"; 107 reg = <0x54300000 0x00040000>; 108 clocks = <&tegra_car TEGRA114_CLK_DSIA>, 109 <&tegra_car TEGRA114_CLK_DSIALP>, 110 <&tegra_car TEGRA114_CLK_PLL_D_OUT0>; 111 clock-names = "dsi", "lp", "parent"; 112 resets = <&tegra_car 48>; 113 reset-names = "dsi"; 114 nvidia,mipi-calibrate = <&mipi 0x060>; /* DSIA & DSIB pads */ 115 status = "disabled"; 116 117 #address-cells = <1>; 118 #size-cells = <0>; 119 }; 120 121 dsi@54400000 { 122 compatible = "nvidia,tegra114-dsi"; 123 reg = <0x54400000 0x00040000>; 124 clocks = <&tegra_car TEGRA114_CLK_DSIB>, 125 <&tegra_car TEGRA114_CLK_DSIBLP>, 126 <&tegra_car TEGRA114_CLK_PLL_D2_OUT0>; 127 clock-names = "dsi", "lp", "parent"; 128 resets = <&tegra_car 82>; 129 reset-names = "dsi"; 130 nvidia,mipi-calibrate = <&mipi 0x180>; /* DSIC & DSID pads */ 131 status = "disabled"; 132 133 #address-cells = <1>; 134 #size-cells = <0>; 135 }; 136 }; 137 138 gic: interrupt-controller@50041000 { 139 compatible = "arm,cortex-a15-gic"; 140 #interrupt-cells = <3>; 141 interrupt-controller; 142 reg = <0x50041000 0x1000>, 143 <0x50042000 0x1000>, 144 <0x50044000 0x2000>, 145 <0x50046000 0x2000>; 146 interrupts = <GIC_PPI 9 147 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; 148 interrupt-parent = <&gic>; 149 }; 150 151 lic: interrupt-controller@60004000 { 152 compatible = "nvidia,tegra114-ictlr", "nvidia,tegra30-ictlr"; 153 reg = <0x60004000 0x100>, 154 <0x60004100 0x50>, 155 <0x60004200 0x50>, 156 <0x60004300 0x50>, 157 <0x60004400 0x50>; 158 interrupt-controller; 159 #interrupt-cells = <3>; 160 interrupt-parent = <&gic>; 161 }; 162 163 timer@60005000 { 164 compatible = "nvidia,tegra114-timer", "nvidia,tegra30-timer", "nvidia,tegra20-timer"; 165 reg = <0x60005000 0x400>; 166 interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>, 167 <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>, 168 <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>, 169 <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>, 170 <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>, 171 <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>; 172 clocks = <&tegra_car TEGRA114_CLK_TIMER>; 173 }; 174 175 tegra_car: clock@60006000 { 176 compatible = "nvidia,tegra114-car"; 177 reg = <0x60006000 0x1000>; 178 #clock-cells = <1>; 179 #reset-cells = <1>; 180 }; 181 182 flow-controller@60007000 { 183 compatible = "nvidia,tegra114-flowctrl"; 184 reg = <0x60007000 0x1000>; 185 }; 186 187 apbdma: dma@6000a000 { 188 compatible = "nvidia,tegra114-apbdma"; 189 reg = <0x6000a000 0x1400>; 190 interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>, 191 <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>, 192 <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>, 193 <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>, 194 <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>, 195 <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>, 196 <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>, 197 <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>, 198 <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>, 199 <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>, 200 <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>, 201 <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>, 202 <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>, 203 <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>, 204 <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>, 205 <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>, 206 <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>, 207 <GIC_SPI 129 IRQ_TYPE_LEVEL_HIGH>, 208 <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>, 209 <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>, 210 <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>, 211 <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>, 212 <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>, 213 <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>, 214 <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>, 215 <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>, 216 <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>, 217 <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>, 218 <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>, 219 <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>, 220 <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>, 221 <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>; 222 clocks = <&tegra_car TEGRA114_CLK_APBDMA>; 223 resets = <&tegra_car 34>; 224 reset-names = "dma"; 225 #dma-cells = <1>; 226 }; 227 228 ahb: ahb@6000c000 { 229 compatible = "nvidia,tegra114-ahb", "nvidia,tegra30-ahb"; 230 reg = <0x6000c000 0x150>; 231 }; 232 233 gpio: gpio@6000d000 { 234 compatible = "nvidia,tegra114-gpio", "nvidia,tegra30-gpio"; 235 reg = <0x6000d000 0x1000>; 236 interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>, 237 <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>, 238 <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>, 239 <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>, 240 <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>, 241 <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>, 242 <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>, 243 <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>; 244 #gpio-cells = <2>; 245 gpio-controller; 246 #interrupt-cells = <2>; 247 interrupt-controller; 248 /* 249 gpio-ranges = <&pinmux 0 0 246>; 250 */ 251 }; 252 253 apbmisc@70000800 { 254 compatible = "nvidia,tegra114-apbmisc", "nvidia,tegra20-apbmisc"; 255 reg = <0x70000800 0x64 /* Chip revision */ 256 0x70000008 0x04>; /* Strapping options */ 257 }; 258 259 pinmux: pinmux@70000868 { 260 compatible = "nvidia,tegra114-pinmux"; 261 reg = <0x70000868 0x148 /* Pad control registers */ 262 0x70003000 0x40c>; /* Mux registers */ 263 }; 264 265 /* 266 * There are two serial driver i.e. 8250 based simple serial 267 * driver and APB DMA based serial driver for higher baudrate 268 * and performace. To enable the 8250 based driver, the compatible 269 * is "nvidia,tegra114-uart", "nvidia,tegra20-uart" and to enable 270 * the APB DMA based serial driver, the compatible is 271 * "nvidia,tegra114-hsuart", "nvidia,tegra30-hsuart". 272 */ 273 uarta: serial@70006000 { 274 compatible = "nvidia,tegra114-uart", "nvidia,tegra20-uart"; 275 reg = <0x70006000 0x40>; 276 reg-shift = <2>; 277 interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>; 278 clocks = <&tegra_car TEGRA114_CLK_UARTA>; 279 resets = <&tegra_car 6>; 280 reset-names = "serial"; 281 dmas = <&apbdma 8>, <&apbdma 8>; 282 dma-names = "rx", "tx"; 283 status = "disabled"; 284 }; 285 286 uartb: serial@70006040 { 287 compatible = "nvidia,tegra114-uart", "nvidia,tegra20-uart"; 288 reg = <0x70006040 0x40>; 289 reg-shift = <2>; 290 interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>; 291 clocks = <&tegra_car TEGRA114_CLK_UARTB>; 292 resets = <&tegra_car 7>; 293 reset-names = "serial"; 294 dmas = <&apbdma 9>, <&apbdma 9>; 295 dma-names = "rx", "tx"; 296 status = "disabled"; 297 }; 298 299 uartc: serial@70006200 { 300 compatible = "nvidia,tegra114-uart", "nvidia,tegra20-uart"; 301 reg = <0x70006200 0x100>; 302 reg-shift = <2>; 303 interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>; 304 clocks = <&tegra_car TEGRA114_CLK_UARTC>; 305 resets = <&tegra_car 55>; 306 reset-names = "serial"; 307 dmas = <&apbdma 10>, <&apbdma 10>; 308 dma-names = "rx", "tx"; 309 status = "disabled"; 310 }; 311 312 uartd: serial@70006300 { 313 compatible = "nvidia,tegra114-uart", "nvidia,tegra20-uart"; 314 reg = <0x70006300 0x100>; 315 reg-shift = <2>; 316 interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>; 317 clocks = <&tegra_car TEGRA114_CLK_UARTD>; 318 resets = <&tegra_car 65>; 319 reset-names = "serial"; 320 dmas = <&apbdma 19>, <&apbdma 19>; 321 dma-names = "rx", "tx"; 322 status = "disabled"; 323 }; 324 325 pwm: pwm@7000a000 { 326 compatible = "nvidia,tegra114-pwm", "nvidia,tegra20-pwm"; 327 reg = <0x7000a000 0x100>; 328 #pwm-cells = <2>; 329 clocks = <&tegra_car TEGRA114_CLK_PWM>; 330 resets = <&tegra_car 17>; 331 reset-names = "pwm"; 332 status = "disabled"; 333 }; 334 335 i2c@7000c000 { 336 compatible = "nvidia,tegra114-i2c"; 337 reg = <0x7000c000 0x100>; 338 interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>; 339 #address-cells = <1>; 340 #size-cells = <0>; 341 clocks = <&tegra_car TEGRA114_CLK_I2C1>; 342 clock-names = "div-clk"; 343 resets = <&tegra_car 12>; 344 reset-names = "i2c"; 345 dmas = <&apbdma 21>, <&apbdma 21>; 346 dma-names = "rx", "tx"; 347 status = "disabled"; 348 }; 349 350 i2c@7000c400 { 351 compatible = "nvidia,tegra114-i2c"; 352 reg = <0x7000c400 0x100>; 353 interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>; 354 #address-cells = <1>; 355 #size-cells = <0>; 356 clocks = <&tegra_car TEGRA114_CLK_I2C2>; 357 clock-names = "div-clk"; 358 resets = <&tegra_car 54>; 359 reset-names = "i2c"; 360 dmas = <&apbdma 22>, <&apbdma 22>; 361 dma-names = "rx", "tx"; 362 status = "disabled"; 363 }; 364 365 i2c@7000c500 { 366 compatible = "nvidia,tegra114-i2c"; 367 reg = <0x7000c500 0x100>; 368 interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>; 369 #address-cells = <1>; 370 #size-cells = <0>; 371 clocks = <&tegra_car TEGRA114_CLK_I2C3>; 372 clock-names = "div-clk"; 373 resets = <&tegra_car 67>; 374 reset-names = "i2c"; 375 dmas = <&apbdma 23>, <&apbdma 23>; 376 dma-names = "rx", "tx"; 377 status = "disabled"; 378 }; 379 380 i2c@7000c700 { 381 compatible = "nvidia,tegra114-i2c"; 382 reg = <0x7000c700 0x100>; 383 interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>; 384 #address-cells = <1>; 385 #size-cells = <0>; 386 clocks = <&tegra_car TEGRA114_CLK_I2C4>; 387 clock-names = "div-clk"; 388 resets = <&tegra_car 103>; 389 reset-names = "i2c"; 390 dmas = <&apbdma 26>, <&apbdma 26>; 391 dma-names = "rx", "tx"; 392 status = "disabled"; 393 }; 394 395 i2c@7000d000 { 396 compatible = "nvidia,tegra114-i2c"; 397 reg = <0x7000d000 0x100>; 398 interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>; 399 #address-cells = <1>; 400 #size-cells = <0>; 401 clocks = <&tegra_car TEGRA114_CLK_I2C5>; 402 clock-names = "div-clk"; 403 resets = <&tegra_car 47>; 404 reset-names = "i2c"; 405 dmas = <&apbdma 24>, <&apbdma 24>; 406 dma-names = "rx", "tx"; 407 status = "disabled"; 408 }; 409 410 spi@7000d400 { 411 compatible = "nvidia,tegra114-spi"; 412 reg = <0x7000d400 0x200>; 413 interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>; 414 #address-cells = <1>; 415 #size-cells = <0>; 416 clocks = <&tegra_car TEGRA114_CLK_SBC1>; 417 clock-names = "spi"; 418 resets = <&tegra_car 41>; 419 reset-names = "spi"; 420 dmas = <&apbdma 15>, <&apbdma 15>; 421 dma-names = "rx", "tx"; 422 status = "disabled"; 423 }; 424 425 spi@7000d600 { 426 compatible = "nvidia,tegra114-spi"; 427 reg = <0x7000d600 0x200>; 428 interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>; 429 #address-cells = <1>; 430 #size-cells = <0>; 431 clocks = <&tegra_car TEGRA114_CLK_SBC2>; 432 clock-names = "spi"; 433 resets = <&tegra_car 44>; 434 reset-names = "spi"; 435 dmas = <&apbdma 16>, <&apbdma 16>; 436 dma-names = "rx", "tx"; 437 status = "disabled"; 438 }; 439 440 spi@7000d800 { 441 compatible = "nvidia,tegra114-spi"; 442 reg = <0x7000d800 0x200>; 443 interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>; 444 #address-cells = <1>; 445 #size-cells = <0>; 446 clocks = <&tegra_car TEGRA114_CLK_SBC3>; 447 clock-names = "spi"; 448 resets = <&tegra_car 46>; 449 reset-names = "spi"; 450 dmas = <&apbdma 17>, <&apbdma 17>; 451 dma-names = "rx", "tx"; 452 status = "disabled"; 453 }; 454 455 spi@7000da00 { 456 compatible = "nvidia,tegra114-spi"; 457 reg = <0x7000da00 0x200>; 458 interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>; 459 #address-cells = <1>; 460 #size-cells = <0>; 461 clocks = <&tegra_car TEGRA114_CLK_SBC4>; 462 clock-names = "spi"; 463 resets = <&tegra_car 68>; 464 reset-names = "spi"; 465 dmas = <&apbdma 18>, <&apbdma 18>; 466 dma-names = "rx", "tx"; 467 status = "disabled"; 468 }; 469 470 spi@7000dc00 { 471 compatible = "nvidia,tegra114-spi"; 472 reg = <0x7000dc00 0x200>; 473 interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>; 474 #address-cells = <1>; 475 #size-cells = <0>; 476 clocks = <&tegra_car TEGRA114_CLK_SBC5>; 477 clock-names = "spi"; 478 resets = <&tegra_car 104>; 479 reset-names = "spi"; 480 dmas = <&apbdma 27>, <&apbdma 27>; 481 dma-names = "rx", "tx"; 482 status = "disabled"; 483 }; 484 485 spi@7000de00 { 486 compatible = "nvidia,tegra114-spi"; 487 reg = <0x7000de00 0x200>; 488 interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>; 489 #address-cells = <1>; 490 #size-cells = <0>; 491 clocks = <&tegra_car TEGRA114_CLK_SBC6>; 492 clock-names = "spi"; 493 resets = <&tegra_car 105>; 494 reset-names = "spi"; 495 dmas = <&apbdma 28>, <&apbdma 28>; 496 dma-names = "rx", "tx"; 497 status = "disabled"; 498 }; 499 500 rtc@7000e000 { 501 compatible = "nvidia,tegra114-rtc", "nvidia,tegra20-rtc"; 502 reg = <0x7000e000 0x100>; 503 interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>; 504 clocks = <&tegra_car TEGRA114_CLK_RTC>; 505 }; 506 507 kbc@7000e200 { 508 compatible = "nvidia,tegra114-kbc"; 509 reg = <0x7000e200 0x100>; 510 interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>; 511 clocks = <&tegra_car TEGRA114_CLK_KBC>; 512 resets = <&tegra_car 36>; 513 reset-names = "kbc"; 514 status = "disabled"; 515 }; 516 517 pmc@7000e400 { 518 compatible = "nvidia,tegra114-pmc"; 519 reg = <0x7000e400 0x400>; 520 clocks = <&tegra_car TEGRA114_CLK_PCLK>, <&clk32k_in>; 521 clock-names = "pclk", "clk32k_in"; 522 }; 523 524 fuse@7000f800 { 525 compatible = "nvidia,tegra114-efuse"; 526 reg = <0x7000f800 0x400>; 527 clocks = <&tegra_car TEGRA114_CLK_FUSE>; 528 clock-names = "fuse"; 529 resets = <&tegra_car 39>; 530 reset-names = "fuse"; 531 }; 532 533 mc: memory-controller@70019000 { 534 compatible = "nvidia,tegra114-mc"; 535 reg = <0x70019000 0x1000>; 536 clocks = <&tegra_car TEGRA114_CLK_MC>; 537 clock-names = "mc"; 538 539 interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>; 540 541 #iommu-cells = <1>; 542 }; 543 544 ahub@70080000 { 545 compatible = "nvidia,tegra114-ahub"; 546 reg = <0x70080000 0x200>, 547 <0x70080200 0x100>, 548 <0x70081000 0x200>; 549 interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>; 550 clocks = <&tegra_car TEGRA114_CLK_D_AUDIO>, 551 <&tegra_car TEGRA114_CLK_APBIF>; 552 clock-names = "d_audio", "apbif"; 553 resets = <&tegra_car 106>, /* d_audio */ 554 <&tegra_car 107>, /* apbif */ 555 <&tegra_car 30>, /* i2s0 */ 556 <&tegra_car 11>, /* i2s1 */ 557 <&tegra_car 18>, /* i2s2 */ 558 <&tegra_car 101>, /* i2s3 */ 559 <&tegra_car 102>, /* i2s4 */ 560 <&tegra_car 108>, /* dam0 */ 561 <&tegra_car 109>, /* dam1 */ 562 <&tegra_car 110>, /* dam2 */ 563 <&tegra_car 10>, /* spdif */ 564 <&tegra_car 153>, /* amx */ 565 <&tegra_car 154>; /* adx */ 566 reset-names = "d_audio", "apbif", "i2s0", "i2s1", "i2s2", 567 "i2s3", "i2s4", "dam0", "dam1", "dam2", 568 "spdif", "amx", "adx"; 569 dmas = <&apbdma 1>, <&apbdma 1>, 570 <&apbdma 2>, <&apbdma 2>, 571 <&apbdma 3>, <&apbdma 3>, 572 <&apbdma 4>, <&apbdma 4>, 573 <&apbdma 6>, <&apbdma 6>, 574 <&apbdma 7>, <&apbdma 7>, 575 <&apbdma 12>, <&apbdma 12>, 576 <&apbdma 13>, <&apbdma 13>, 577 <&apbdma 14>, <&apbdma 14>, 578 <&apbdma 29>, <&apbdma 29>; 579 dma-names = "rx0", "tx0", "rx1", "tx1", "rx2", "tx2", 580 "rx3", "tx3", "rx4", "tx4", "rx5", "tx5", 581 "rx6", "tx6", "rx7", "tx7", "rx8", "tx8", 582 "rx9", "tx9"; 583 ranges; 584 #address-cells = <1>; 585 #size-cells = <1>; 586 587 tegra_i2s0: i2s@70080300 { 588 compatible = "nvidia,tegra114-i2s", "nvidia,tegra30-i2s"; 589 reg = <0x70080300 0x100>; 590 nvidia,ahub-cif-ids = <4 4>; 591 clocks = <&tegra_car TEGRA114_CLK_I2S0>; 592 resets = <&tegra_car 30>; 593 reset-names = "i2s"; 594 status = "disabled"; 595 }; 596 597 tegra_i2s1: i2s@70080400 { 598 compatible = "nvidia,tegra114-i2s", "nvidia,tegra30-i2s"; 599 reg = <0x70080400 0x100>; 600 nvidia,ahub-cif-ids = <5 5>; 601 clocks = <&tegra_car TEGRA114_CLK_I2S1>; 602 resets = <&tegra_car 11>; 603 reset-names = "i2s"; 604 status = "disabled"; 605 }; 606 607 tegra_i2s2: i2s@70080500 { 608 compatible = "nvidia,tegra114-i2s", "nvidia,tegra30-i2s"; 609 reg = <0x70080500 0x100>; 610 nvidia,ahub-cif-ids = <6 6>; 611 clocks = <&tegra_car TEGRA114_CLK_I2S2>; 612 resets = <&tegra_car 18>; 613 reset-names = "i2s"; 614 status = "disabled"; 615 }; 616 617 tegra_i2s3: i2s@70080600 { 618 compatible = "nvidia,tegra114-i2s", "nvidia,tegra30-i2s"; 619 reg = <0x70080600 0x100>; 620 nvidia,ahub-cif-ids = <7 7>; 621 clocks = <&tegra_car TEGRA114_CLK_I2S3>; 622 resets = <&tegra_car 101>; 623 reset-names = "i2s"; 624 status = "disabled"; 625 }; 626 627 tegra_i2s4: i2s@70080700 { 628 compatible = "nvidia,tegra114-i2s", "nvidia,tegra30-i2s"; 629 reg = <0x70080700 0x100>; 630 nvidia,ahub-cif-ids = <8 8>; 631 clocks = <&tegra_car TEGRA114_CLK_I2S4>; 632 resets = <&tegra_car 102>; 633 reset-names = "i2s"; 634 status = "disabled"; 635 }; 636 }; 637 638 mipi: mipi@700e3000 { 639 compatible = "nvidia,tegra114-mipi"; 640 reg = <0x700e3000 0x100>; 641 clocks = <&tegra_car TEGRA114_CLK_MIPI_CAL>; 642 #nvidia,mipi-calibrate-cells = <1>; 643 }; 644 645 sdhci@78000000 { 646 compatible = "nvidia,tegra114-sdhci", "nvidia,tegra30-sdhci"; 647 reg = <0x78000000 0x200>; 648 interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>; 649 clocks = <&tegra_car TEGRA114_CLK_SDMMC1>; 650 resets = <&tegra_car 14>; 651 reset-names = "sdhci"; 652 status = "disabled"; 653 }; 654 655 sdhci@78000200 { 656 compatible = "nvidia,tegra114-sdhci", "nvidia,tegra30-sdhci"; 657 reg = <0x78000200 0x200>; 658 interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>; 659 clocks = <&tegra_car TEGRA114_CLK_SDMMC2>; 660 resets = <&tegra_car 9>; 661 reset-names = "sdhci"; 662 status = "disabled"; 663 }; 664 665 sdhci@78000400 { 666 compatible = "nvidia,tegra114-sdhci", "nvidia,tegra30-sdhci"; 667 reg = <0x78000400 0x200>; 668 interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>; 669 clocks = <&tegra_car TEGRA114_CLK_SDMMC3>; 670 resets = <&tegra_car 69>; 671 reset-names = "sdhci"; 672 status = "disabled"; 673 }; 674 675 sdhci@78000600 { 676 compatible = "nvidia,tegra114-sdhci", "nvidia,tegra30-sdhci"; 677 reg = <0x78000600 0x200>; 678 interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>; 679 clocks = <&tegra_car TEGRA114_CLK_SDMMC4>; 680 resets = <&tegra_car 15>; 681 reset-names = "sdhci"; 682 status = "disabled"; 683 }; 684 685 usb@7d000000 { 686 compatible = "nvidia,tegra114-ehci", "nvidia,tegra30-ehci", "usb-ehci"; 687 reg = <0x7d000000 0x4000>; 688 interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>; 689 phy_type = "utmi"; 690 clocks = <&tegra_car TEGRA114_CLK_USBD>; 691 resets = <&tegra_car 22>; 692 reset-names = "usb"; 693 nvidia,phy = <&phy1>; 694 status = "disabled"; 695 }; 696 697 phy1: usb-phy@7d000000 { 698 compatible = "nvidia,tegra114-usb-phy", "nvidia,tegra30-usb-phy"; 699 reg = <0x7d000000 0x4000 0x7d000000 0x4000>; 700 phy_type = "utmi"; 701 clocks = <&tegra_car TEGRA114_CLK_USBD>, 702 <&tegra_car TEGRA114_CLK_PLL_U>, 703 <&tegra_car TEGRA114_CLK_USBD>; 704 clock-names = "reg", "pll_u", "utmi-pads"; 705 resets = <&tegra_car 22>, <&tegra_car 22>; 706 reset-names = "usb", "utmi-pads"; 707 nvidia,hssync-start-delay = <0>; 708 nvidia,idle-wait-delay = <17>; 709 nvidia,elastic-limit = <16>; 710 nvidia,term-range-adj = <6>; 711 nvidia,xcvr-setup = <9>; 712 nvidia,xcvr-lsfslew = <0>; 713 nvidia,xcvr-lsrslew = <3>; 714 nvidia,hssquelch-level = <2>; 715 nvidia,hsdiscon-level = <5>; 716 nvidia,xcvr-hsslew = <12>; 717 nvidia,has-utmi-pad-registers; 718 status = "disabled"; 719 }; 720 721 usb@7d008000 { 722 compatible = "nvidia,tegra114-ehci", "nvidia,tegra30-ehci", "usb-ehci"; 723 reg = <0x7d008000 0x4000>; 724 interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>; 725 phy_type = "utmi"; 726 clocks = <&tegra_car TEGRA114_CLK_USB3>; 727 resets = <&tegra_car 59>; 728 reset-names = "usb"; 729 nvidia,phy = <&phy3>; 730 status = "disabled"; 731 }; 732 733 phy3: usb-phy@7d008000 { 734 compatible = "nvidia,tegra114-usb-phy", "nvidia,tegra30-usb-phy"; 735 reg = <0x7d008000 0x4000 0x7d000000 0x4000>; 736 phy_type = "utmi"; 737 clocks = <&tegra_car TEGRA114_CLK_USB3>, 738 <&tegra_car TEGRA114_CLK_PLL_U>, 739 <&tegra_car TEGRA114_CLK_USBD>; 740 clock-names = "reg", "pll_u", "utmi-pads"; 741 resets = <&tegra_car 59>, <&tegra_car 22>; 742 reset-names = "usb", "utmi-pads"; 743 nvidia,hssync-start-delay = <0>; 744 nvidia,idle-wait-delay = <17>; 745 nvidia,elastic-limit = <16>; 746 nvidia,term-range-adj = <6>; 747 nvidia,xcvr-setup = <9>; 748 nvidia,xcvr-lsfslew = <0>; 749 nvidia,xcvr-lsrslew = <3>; 750 nvidia,hssquelch-level = <2>; 751 nvidia,hsdiscon-level = <5>; 752 nvidia,xcvr-hsslew = <12>; 753 status = "disabled"; 754 }; 755 756 cpus { 757 #address-cells = <1>; 758 #size-cells = <0>; 759 760 cpu@0 { 761 device_type = "cpu"; 762 compatible = "arm,cortex-a15"; 763 reg = <0>; 764 }; 765 766 cpu@1 { 767 device_type = "cpu"; 768 compatible = "arm,cortex-a15"; 769 reg = <1>; 770 }; 771 772 cpu@2 { 773 device_type = "cpu"; 774 compatible = "arm,cortex-a15"; 775 reg = <2>; 776 }; 777 778 cpu@3 { 779 device_type = "cpu"; 780 compatible = "arm,cortex-a15"; 781 reg = <3>; 782 }; 783 }; 784 785 timer { 786 compatible = "arm,armv7-timer"; 787 interrupts = 788 <GIC_PPI 13 789 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 790 <GIC_PPI 14 791 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 792 <GIC_PPI 11 793 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 794 <GIC_PPI 10 795 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; 796 interrupt-parent = <&gic>; 797 }; 798}; 799