1 #include <dt-bindings/clock/tegra124-car.h>
2 #include <dt-bindings/gpio/tegra-gpio.h>
3 #include <dt-bindings/memory/tegra124-mc.h>
4 #include <dt-bindings/pinctrl/pinctrl-tegra.h>
5 #include <dt-bindings/pinctrl/pinctrl-tegra-xusb.h>
6 #include <dt-bindings/interrupt-controller/arm-gic.h>
7 #include <dt-bindings/reset/tegra124-car.h>
8 #include <dt-bindings/thermal/tegra124-soctherm.h>
10 #include "skeleton.dtsi"
13 compatible = "nvidia,tegra124";
14 interrupt-parent = <&lic>;
17 pcie-controller@01003000 {
18 compatible = "nvidia,tegra124-pcie";
20 reg = <0x01003000 0x00000800 /* PADS registers */
21 0x01003800 0x00000800 /* AFI registers */
22 0x02000000 0x10000000>; /* configuration space */
23 reg-names = "pads", "afi", "cs";
24 interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>, /* controller interrupt */
25 <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; /* MSI interrupt */
26 interrupt-names = "intr", "msi";
28 #interrupt-cells = <1>;
29 interrupt-map-mask = <0 0 0 0>;
30 interrupt-map = <0 0 0 0 &gic GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
32 bus-range = <0x00 0xff>;
36 ranges = <0x82000000 0 0x01000000 0x01000000 0 0x00001000 /* port 0 configuration space */
37 0x82000000 0 0x01001000 0x01001000 0 0x00001000 /* port 1 configuration space */
38 0x81000000 0 0x0 0x12000000 0 0x00010000 /* downstream I/O (64 KiB) */
39 0x82000000 0 0x13000000 0x13000000 0 0x0d000000 /* non-prefetchable memory (208 MiB) */
40 0xc2000000 0 0x20000000 0x20000000 0 0x20000000>; /* prefetchable memory (512 MiB) */
42 clocks = <&tegra_car TEGRA124_CLK_PCIE>,
43 <&tegra_car TEGRA124_CLK_AFI>,
44 <&tegra_car TEGRA124_CLK_PLL_E>,
45 <&tegra_car TEGRA124_CLK_CML0>;
46 clock-names = "pex", "afi", "pll_e", "cml";
47 resets = <&tegra_car 70>,
50 reset-names = "pex", "afi", "pcie_x";
53 phys = <&padctl TEGRA_XUSB_PADCTL_PCIE>;
58 assigned-addresses = <0x82000800 0 0x01000000 0 0x1000>;
59 reg = <0x000800 0 0 0 0>;
66 nvidia,num-lanes = <2>;
71 assigned-addresses = <0x82001000 0 0x01001000 0 0x1000>;
72 reg = <0x001000 0 0 0 0>;
79 nvidia,num-lanes = <1>;
84 compatible = "nvidia,tegra124-host1x", "simple-bus";
85 reg = <0x50000000 0x00034000>;
86 interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>, /* syncpt */
87 <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>; /* general */
88 clocks = <&tegra_car TEGRA124_CLK_HOST1X>;
89 resets = <&tegra_car 28>;
90 reset-names = "host1x";
95 ranges = <0x54000000 0x54000000 0x01000000>;
98 compatible = "nvidia,tegra124-dc";
99 reg = <0x54200000 0x00040000>;
100 interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
101 clocks = <&tegra_car TEGRA124_CLK_DISP1>,
102 <&tegra_car TEGRA124_CLK_PLL_P>;
103 clock-names = "dc", "parent";
104 resets = <&tegra_car 27>;
107 iommus = <&mc TEGRA_SWGROUP_DC>;
113 compatible = "nvidia,tegra124-dc";
114 reg = <0x54240000 0x00040000>;
115 interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
116 clocks = <&tegra_car TEGRA124_CLK_DISP2>,
117 <&tegra_car TEGRA124_CLK_PLL_P>;
118 clock-names = "dc", "parent";
119 resets = <&tegra_car 26>;
122 iommus = <&mc TEGRA_SWGROUP_DCB>;
128 compatible = "nvidia,tegra124-hdmi";
129 reg = <0x54280000 0x00040000>;
130 interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>;
131 clocks = <&tegra_car TEGRA124_CLK_HDMI>,
132 <&tegra_car TEGRA124_CLK_PLL_D2_OUT0>;
133 clock-names = "hdmi", "parent";
134 resets = <&tegra_car 51>;
135 reset-names = "hdmi";
140 compatible = "nvidia,tegra124-sor";
141 reg = <0x54540000 0x00040000>;
142 interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>;
143 clocks = <&tegra_car TEGRA124_CLK_SOR0>,
144 <&tegra_car TEGRA124_CLK_PLL_D_OUT0>,
145 <&tegra_car TEGRA124_CLK_PLL_DP>,
146 <&tegra_car TEGRA124_CLK_CLK_M>;
147 clock-names = "sor", "parent", "dp", "safe";
148 resets = <&tegra_car 182>;
153 dpaux: dpaux@545c0000 {
154 compatible = "nvidia,tegra124-dpaux";
155 reg = <0x545c0000 0x00040000>;
156 interrupts = <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>;
157 clocks = <&tegra_car TEGRA124_CLK_DPAUX>,
158 <&tegra_car TEGRA124_CLK_PLL_DP>;
159 clock-names = "dpaux", "parent";
160 resets = <&tegra_car 181>;
161 reset-names = "dpaux";
166 gic: interrupt-controller@50041000 {
167 compatible = "arm,cortex-a15-gic";
168 #interrupt-cells = <3>;
169 interrupt-controller;
170 reg = <0x50041000 0x1000>,
174 interrupts = <GIC_PPI 9
175 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
176 interrupt-parent = <&gic>;
180 compatible = "nvidia,gk20a";
181 reg = <0x57000000 0x01000000>,
182 <0x58000000 0x01000000>;
183 interrupts = <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>,
184 <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>;
185 interrupt-names = "stall", "nonstall";
186 clocks = <&tegra_car TEGRA124_CLK_GPU>,
187 <&tegra_car TEGRA124_CLK_PLL_P_OUT5>;
188 clock-names = "gpu", "pwr";
189 resets = <&tegra_car 184>;
192 iommus = <&mc TEGRA_SWGROUP_GPU>;
197 lic: interrupt-controller@60004000 {
198 compatible = "nvidia,tegra124-ictlr", "nvidia,tegra30-ictlr";
199 interrupt-controller;
200 #interrupt-cells = <3>;
201 interrupt-parent = <&gic>;
205 compatible = "nvidia,tegra124-timer", "nvidia,tegra20-timer";
206 reg = <0x60005000 0x400>;
207 interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
208 <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>,
209 <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>,
210 <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>,
211 <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>,
212 <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>;
213 clocks = <&tegra_car TEGRA124_CLK_TIMER>;
216 tegra_car: clock@60006000 {
217 compatible = "nvidia,tegra124-car";
218 reg = <0x60006000 0x1000>;
221 nvidia,external-memory-controller = <&emc>;
224 flow-controller@60007000 {
225 compatible = "nvidia,tegra124-flowctrl";
226 reg = <0x60007000 0x1000>;
230 compatible = "nvidia,tegra124-actmon";
231 reg = <0x6000c800 0x400>;
232 interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
233 clocks = <&tegra_car TEGRA124_CLK_ACTMON>,
234 <&tegra_car TEGRA124_CLK_EMC>;
235 clock-names = "actmon", "emc";
236 resets = <&tegra_car 119>;
237 reset-names = "actmon";
240 gpio: gpio@6000d000 {
241 compatible = "nvidia,tegra124-gpio", "nvidia,tegra30-gpio";
242 reg = <0x6000d000 0x1000>;
243 interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>,
244 <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>,
245 <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>,
246 <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>,
247 <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>,
248 <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>,
249 <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>,
250 <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>;
253 #interrupt-cells = <2>;
254 interrupt-controller;
256 gpio-ranges = <&pinmux 0 0 251>;
260 apbdma: dma@60020000 {
261 compatible = "nvidia,tegra124-apbdma", "nvidia,tegra148-apbdma";
262 reg = <0x60020000 0x1400>;
263 interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>,
264 <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>,
265 <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>,
266 <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>,
267 <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>,
268 <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>,
269 <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>,
270 <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>,
271 <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>,
272 <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>,
273 <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>,
274 <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>,
275 <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>,
276 <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>,
277 <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>,
278 <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>,
279 <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>,
280 <GIC_SPI 129 IRQ_TYPE_LEVEL_HIGH>,
281 <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>,
282 <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>,
283 <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>,
284 <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>,
285 <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>,
286 <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>,
287 <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>,
288 <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>,
289 <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>,
290 <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>,
291 <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>,
292 <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>,
293 <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>,
294 <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>;
295 clocks = <&tegra_car TEGRA124_CLK_APBDMA>;
296 resets = <&tegra_car 34>;
302 compatible = "nvidia,tegra124-apbmisc", "nvidia,tegra20-apbmisc";
303 reg = <0x70000800 0x64>, /* Chip revision */
304 <0x7000e864 0x04>; /* Strapping options */
307 pinmux: pinmux@70000868 {
308 compatible = "nvidia,tegra124-pinmux";
309 reg = <0x70000868 0x164>, /* Pad control registers */
310 <0x70003000 0x434>, /* Mux registers */
311 <0x70000820 0x008>; /* MIPI pad control */
315 * There are two serial driver i.e. 8250 based simple serial
316 * driver and APB DMA based serial driver for higher baudrate
317 * and performace. To enable the 8250 based driver, the compatible
318 * is "nvidia,tegra124-uart", "nvidia,tegra20-uart" and to enable
319 * the APB DMA based serial driver, the comptible is
320 * "nvidia,tegra124-hsuart", "nvidia,tegra30-hsuart".
322 uarta: serial@70006000 {
323 compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
324 reg = <0x70006000 0x40>;
326 interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
327 clocks = <&tegra_car TEGRA124_CLK_UARTA>;
328 resets = <&tegra_car 6>;
329 reset-names = "serial";
330 dmas = <&apbdma 8>, <&apbdma 8>;
331 dma-names = "rx", "tx";
335 uartb: serial@70006040 {
336 compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
337 reg = <0x70006040 0x40>;
339 interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
340 clocks = <&tegra_car TEGRA124_CLK_UARTB>;
341 resets = <&tegra_car 7>;
342 reset-names = "serial";
343 dmas = <&apbdma 9>, <&apbdma 9>;
344 dma-names = "rx", "tx";
348 uartc: serial@70006200 {
349 compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
350 reg = <0x70006200 0x40>;
352 interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
353 clocks = <&tegra_car TEGRA124_CLK_UARTC>;
354 resets = <&tegra_car 55>;
355 reset-names = "serial";
356 dmas = <&apbdma 10>, <&apbdma 10>;
357 dma-names = "rx", "tx";
361 uartd: serial@70006300 {
362 compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
363 reg = <0x70006300 0x40>;
365 interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>;
366 clocks = <&tegra_car TEGRA124_CLK_UARTD>;
367 resets = <&tegra_car 65>;
368 reset-names = "serial";
369 dmas = <&apbdma 19>, <&apbdma 19>;
370 dma-names = "rx", "tx";
375 compatible = "nvidia,tegra124-pwm", "nvidia,tegra20-pwm";
376 reg = <0x7000a000 0x100>;
378 clocks = <&tegra_car TEGRA124_CLK_PWM>;
379 resets = <&tegra_car 17>;
385 compatible = "nvidia,tegra124-i2c", "nvidia,tegra114-i2c";
386 reg = <0x7000c000 0x100>;
387 interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
388 #address-cells = <1>;
390 clocks = <&tegra_car TEGRA124_CLK_I2C1>;
391 clock-names = "div-clk";
392 resets = <&tegra_car 12>;
394 dmas = <&apbdma 21>, <&apbdma 21>;
395 dma-names = "rx", "tx";
400 compatible = "nvidia,tegra124-i2c", "nvidia,tegra114-i2c";
401 reg = <0x7000c400 0x100>;
402 interrupts = <0 84 0x04>;
403 #address-cells = <1>;
405 clocks = <&tegra_car 54>;
410 compatible = "nvidia,tegra124-i2c", "nvidia,tegra114-i2c";
411 reg = <0x7000c500 0x100>;
412 interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>;
413 #address-cells = <1>;
415 clocks = <&tegra_car TEGRA124_CLK_I2C3>;
416 clock-names = "div-clk";
417 resets = <&tegra_car 67>;
419 dmas = <&apbdma 23>, <&apbdma 23>;
420 dma-names = "rx", "tx";
425 compatible = "nvidia,tegra124-i2c", "nvidia,tegra114-i2c";
426 reg = <0x7000c700 0x100>;
427 interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>;
428 #address-cells = <1>;
430 clocks = <&tegra_car TEGRA124_CLK_I2C4>;
431 clock-names = "div-clk";
432 resets = <&tegra_car 103>;
434 dmas = <&apbdma 26>, <&apbdma 26>;
435 dma-names = "rx", "tx";
440 compatible = "nvidia,tegra124-i2c", "nvidia,tegra114-i2c";
441 reg = <0x7000d000 0x100>;
442 interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
443 #address-cells = <1>;
445 clocks = <&tegra_car TEGRA124_CLK_I2C5>;
446 clock-names = "div-clk";
447 resets = <&tegra_car 47>;
449 dmas = <&apbdma 24>, <&apbdma 24>;
450 dma-names = "rx", "tx";
455 compatible = "nvidia,tegra124-i2c", "nvidia,tegra114-i2c";
456 reg = <0x7000d100 0x100>;
457 interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>;
458 #address-cells = <1>;
460 clocks = <&tegra_car TEGRA124_CLK_I2C6>;
461 clock-names = "div-clk";
462 resets = <&tegra_car 166>;
464 dmas = <&apbdma 30>, <&apbdma 30>;
465 dma-names = "rx", "tx";
470 compatible = "nvidia,tegra124-spi", "nvidia,tegra114-spi";
471 reg = <0x7000d400 0x200>;
472 interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>;
473 #address-cells = <1>;
475 clocks = <&tegra_car TEGRA124_CLK_SBC1>;
477 resets = <&tegra_car 41>;
479 dmas = <&apbdma 15>, <&apbdma 15>;
480 dma-names = "rx", "tx";
485 compatible = "nvidia,tegra124-spi", "nvidia,tegra114-spi";
486 reg = <0x7000d600 0x200>;
487 interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
488 #address-cells = <1>;
490 clocks = <&tegra_car TEGRA124_CLK_SBC2>;
492 resets = <&tegra_car 44>;
494 dmas = <&apbdma 16>, <&apbdma 16>;
495 dma-names = "rx", "tx";
500 compatible = "nvidia,tegra124-spi", "nvidia,tegra114-spi";
501 reg = <0x7000d800 0x200>;
502 interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
503 #address-cells = <1>;
505 clocks = <&tegra_car TEGRA124_CLK_SBC3>;
507 resets = <&tegra_car 46>;
509 dmas = <&apbdma 17>, <&apbdma 17>;
510 dma-names = "rx", "tx";
515 compatible = "nvidia,tegra124-spi", "nvidia,tegra114-spi";
516 reg = <0x7000da00 0x200>;
517 interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>;
518 #address-cells = <1>;
520 clocks = <&tegra_car TEGRA124_CLK_SBC4>;
522 resets = <&tegra_car 68>;
524 dmas = <&apbdma 18>, <&apbdma 18>;
525 dma-names = "rx", "tx";
530 compatible = "nvidia,tegra124-spi", "nvidia,tegra114-spi";
531 reg = <0x7000dc00 0x200>;
532 interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>;
533 #address-cells = <1>;
535 clocks = <&tegra_car TEGRA124_CLK_SBC5>;
537 resets = <&tegra_car 104>;
539 dmas = <&apbdma 27>, <&apbdma 27>;
540 dma-names = "rx", "tx";
545 compatible = "nvidia,tegra124-spi", "nvidia,tegra114-spi";
546 reg = <0x7000de00 0x200>;
547 interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
548 #address-cells = <1>;
550 clocks = <&tegra_car TEGRA124_CLK_SBC6>;
552 resets = <&tegra_car 105>;
554 dmas = <&apbdma 28>, <&apbdma 28>;
555 dma-names = "rx", "tx";
560 compatible = "nvidia,tegra124-rtc", "nvidia,tegra20-rtc";
561 reg = <0x7000e000 0x100>;
562 interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>;
563 clocks = <&tegra_car TEGRA124_CLK_RTC>;
567 compatible = "nvidia,tegra124-pmc";
568 reg = <0x7000e400 0x400>;
569 clocks = <&tegra_car TEGRA124_CLK_PCLK>, <&clk32k_in>;
570 clock-names = "pclk", "clk32k_in";
574 compatible = "nvidia,tegra124-efuse";
575 reg = <0x7000f800 0x400>;
576 clocks = <&tegra_car TEGRA124_CLK_FUSE>;
577 clock-names = "fuse";
578 resets = <&tegra_car 39>;
579 reset-names = "fuse";
582 mc: memory-controller@70019000 {
583 compatible = "nvidia,tegra124-mc";
584 reg = <0x70019000 0x1000>;
585 clocks = <&tegra_car TEGRA124_CLK_MC>;
588 interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>;
594 compatible = "nvidia,tegra124-emc";
595 reg = <0x7001b000 0x1000>;
597 nvidia,memory-controller = <&mc>;
601 compatible = "nvidia,tegra124-ahci";
602 reg = <0x70027000 0x2000>, /* AHCI */
603 <0x70020000 0x7000>; /* SATA */
604 interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
605 clocks = <&tegra_car TEGRA124_CLK_SATA>,
606 <&tegra_car TEGRA124_CLK_SATA_OOB>,
607 <&tegra_car TEGRA124_CLK_CML1>,
608 <&tegra_car TEGRA124_CLK_PLL_E>;
609 clock-names = "sata", "sata-oob", "cml1", "pll_e";
610 resets = <&tegra_car 124>,
613 reset-names = "sata", "sata-oob", "sata-cold";
614 phys = <&padctl TEGRA_XUSB_PADCTL_SATA>;
615 phy-names = "sata-phy";
620 compatible = "nvidia,tegra124-hda", "nvidia,tegra30-hda";
621 reg = <0x70030000 0x10000>;
622 interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
623 clocks = <&tegra_car TEGRA124_CLK_HDA>,
624 <&tegra_car TEGRA124_CLK_HDA2HDMI>,
625 <&tegra_car TEGRA124_CLK_HDA2CODEC_2X>;
626 clock-names = "hda", "hda2hdmi", "hda2codec_2x";
627 resets = <&tegra_car 125>, /* hda */
628 <&tegra_car 128>, /* hda2hdmi */
629 <&tegra_car 111>; /* hda2codec_2x */
630 reset-names = "hda", "hda2hdmi", "hda2codec_2x";
634 padctl: padctl@7009f000 {
635 compatible = "nvidia,tegra124-xusb-padctl";
636 reg = <0x7009f000 0x1000>;
637 resets = <&tegra_car 142>;
638 reset-names = "padctl";
644 compatible = "nvidia,tegra124-sdhci";
645 reg = <0x700b0000 0x200>;
646 interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
647 clocks = <&tegra_car TEGRA124_CLK_SDMMC1>;
648 resets = <&tegra_car 14>;
649 reset-names = "sdhci";
654 compatible = "nvidia,tegra124-sdhci";
655 reg = <0x700b0200 0x200>;
656 interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
657 clocks = <&tegra_car TEGRA124_CLK_SDMMC2>;
658 resets = <&tegra_car 9>;
659 reset-names = "sdhci";
664 compatible = "nvidia,tegra124-sdhci";
665 reg = <0x700b0400 0x200>;
666 interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>;
667 clocks = <&tegra_car TEGRA124_CLK_SDMMC3>;
668 resets = <&tegra_car 69>;
669 reset-names = "sdhci";
674 compatible = "nvidia,tegra124-sdhci";
675 reg = <0x700b0600 0x200>;
676 interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
677 clocks = <&tegra_car TEGRA124_CLK_SDMMC4>;
678 resets = <&tegra_car 15>;
679 reset-names = "sdhci";
683 soctherm: thermal-sensor@700e2000 {
684 compatible = "nvidia,tegra124-soctherm";
685 reg = <0x700e2000 0x1000>;
686 interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
687 clocks = <&tegra_car TEGRA124_CLK_TSENSOR>,
688 <&tegra_car TEGRA124_CLK_SOC_THERM>;
689 clock-names = "tsensor", "soctherm";
690 resets = <&tegra_car 78>;
691 reset-names = "soctherm";
692 #thermal-sensor-cells = <1>;
695 dfll: clock@70110000 {
696 compatible = "nvidia,tegra124-dfll";
697 reg = <0x70110000 0x100>, /* DFLL control */
698 <0x70110000 0x100>, /* I2C output control */
699 <0x70110100 0x100>, /* Integrated I2C controller */
700 <0x70110200 0x100>; /* Look-up table RAM */
701 interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
702 clocks = <&tegra_car TEGRA124_CLK_DFLL_SOC>,
703 <&tegra_car TEGRA124_CLK_DFLL_REF>,
704 <&tegra_car TEGRA124_CLK_I2C5>;
705 clock-names = "soc", "ref", "i2c";
706 resets = <&tegra_car TEGRA124_RST_DFLL_DVCO>;
707 reset-names = "dvco";
709 clock-output-names = "dfllCPU_out";
710 nvidia,sample-rate = <12500>;
711 nvidia,droop-ctrl = <0x00000f00>;
712 nvidia,force-mode = <1>;
720 compatible = "nvidia,tegra124-ahub";
721 reg = <0x70300000 0x200>,
724 interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
725 clocks = <&tegra_car TEGRA124_CLK_D_AUDIO>,
726 <&tegra_car TEGRA124_CLK_APBIF>;
727 clock-names = "d_audio", "apbif";
728 resets = <&tegra_car 106>, /* d_audio */
729 <&tegra_car 107>, /* apbif */
730 <&tegra_car 30>, /* i2s0 */
731 <&tegra_car 11>, /* i2s1 */
732 <&tegra_car 18>, /* i2s2 */
733 <&tegra_car 101>, /* i2s3 */
734 <&tegra_car 102>, /* i2s4 */
735 <&tegra_car 108>, /* dam0 */
736 <&tegra_car 109>, /* dam1 */
737 <&tegra_car 110>, /* dam2 */
738 <&tegra_car 10>, /* spdif */
739 <&tegra_car 153>, /* amx */
740 <&tegra_car 185>, /* amx1 */
741 <&tegra_car 154>, /* adx */
742 <&tegra_car 180>, /* adx1 */
743 <&tegra_car 186>, /* afc0 */
744 <&tegra_car 187>, /* afc1 */
745 <&tegra_car 188>, /* afc2 */
746 <&tegra_car 189>, /* afc3 */
747 <&tegra_car 190>, /* afc4 */
748 <&tegra_car 191>; /* afc5 */
749 reset-names = "d_audio", "apbif", "i2s0", "i2s1", "i2s2",
750 "i2s3", "i2s4", "dam0", "dam1", "dam2",
751 "spdif", "amx", "amx1", "adx", "adx1",
752 "afc0", "afc1", "afc2", "afc3", "afc4", "afc5";
753 dmas = <&apbdma 1>, <&apbdma 1>,
754 <&apbdma 2>, <&apbdma 2>,
755 <&apbdma 3>, <&apbdma 3>,
756 <&apbdma 4>, <&apbdma 4>,
757 <&apbdma 6>, <&apbdma 6>,
758 <&apbdma 7>, <&apbdma 7>,
759 <&apbdma 12>, <&apbdma 12>,
760 <&apbdma 13>, <&apbdma 13>,
761 <&apbdma 14>, <&apbdma 14>,
762 <&apbdma 29>, <&apbdma 29>;
763 dma-names = "rx0", "tx0", "rx1", "tx1", "rx2", "tx2",
764 "rx3", "tx3", "rx4", "tx4", "rx5", "tx5",
765 "rx6", "tx6", "rx7", "tx7", "rx8", "tx8",
768 #address-cells = <1>;
771 tegra_i2s0: i2s@70301000 {
772 compatible = "nvidia,tegra124-i2s";
773 reg = <0x70301000 0x100>;
774 nvidia,ahub-cif-ids = <4 4>;
775 clocks = <&tegra_car TEGRA124_CLK_I2S0>;
776 resets = <&tegra_car 30>;
781 tegra_i2s1: i2s@70301100 {
782 compatible = "nvidia,tegra124-i2s";
783 reg = <0x70301100 0x100>;
784 nvidia,ahub-cif-ids = <5 5>;
785 clocks = <&tegra_car TEGRA124_CLK_I2S1>;
786 resets = <&tegra_car 11>;
791 tegra_i2s2: i2s@70301200 {
792 compatible = "nvidia,tegra124-i2s";
793 reg = <0x70301200 0x100>;
794 nvidia,ahub-cif-ids = <6 6>;
795 clocks = <&tegra_car TEGRA124_CLK_I2S2>;
796 resets = <&tegra_car 18>;
801 tegra_i2s3: i2s@70301300 {
802 compatible = "nvidia,tegra124-i2s";
803 reg = <0x70301300 0x100>;
804 nvidia,ahub-cif-ids = <7 7>;
805 clocks = <&tegra_car TEGRA124_CLK_I2S3>;
806 resets = <&tegra_car 101>;
811 tegra_i2s4: i2s@70301400 {
812 compatible = "nvidia,tegra124-i2s";
813 reg = <0x70301400 0x100>;
814 nvidia,ahub-cif-ids = <8 8>;
815 clocks = <&tegra_car TEGRA124_CLK_I2S4>;
816 resets = <&tegra_car 102>;
823 compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci";
824 reg = <0x7d000000 0x4000>;
825 interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
827 clocks = <&tegra_car TEGRA124_CLK_USBD>;
828 resets = <&tegra_car 22>;
830 nvidia,phy = <&phy1>;
834 phy1: usb-phy@7d000000 {
835 compatible = "nvidia,tegra124-usb-phy", "nvidia,tegra30-usb-phy";
836 reg = <0x7d000000 0x4000>,
839 clocks = <&tegra_car TEGRA124_CLK_USBD>,
840 <&tegra_car TEGRA124_CLK_PLL_U>,
841 <&tegra_car TEGRA124_CLK_USBD>;
842 clock-names = "reg", "pll_u", "utmi-pads";
843 resets = <&tegra_car 22>, <&tegra_car 22>;
844 reset-names = "usb", "utmi-pads";
845 nvidia,hssync-start-delay = <0>;
846 nvidia,idle-wait-delay = <17>;
847 nvidia,elastic-limit = <16>;
848 nvidia,term-range-adj = <6>;
849 nvidia,xcvr-setup = <9>;
850 nvidia,xcvr-lsfslew = <0>;
851 nvidia,xcvr-lsrslew = <3>;
852 nvidia,hssquelch-level = <2>;
853 nvidia,hsdiscon-level = <5>;
854 nvidia,xcvr-hsslew = <12>;
855 nvidia,has-utmi-pad-registers;
860 compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci";
861 reg = <0x7d004000 0x4000>;
862 interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>;
864 clocks = <&tegra_car TEGRA124_CLK_USB2>;
865 resets = <&tegra_car 58>;
867 nvidia,phy = <&phy2>;
871 phy2: usb-phy@7d004000 {
872 compatible = "nvidia,tegra124-usb-phy", "nvidia,tegra30-usb-phy";
873 reg = <0x7d004000 0x4000>,
876 clocks = <&tegra_car TEGRA124_CLK_USB2>,
877 <&tegra_car TEGRA124_CLK_PLL_U>,
878 <&tegra_car TEGRA124_CLK_USBD>;
879 clock-names = "reg", "pll_u", "utmi-pads";
880 resets = <&tegra_car 58>, <&tegra_car 22>;
881 reset-names = "usb", "utmi-pads";
882 nvidia,hssync-start-delay = <0>;
883 nvidia,idle-wait-delay = <17>;
884 nvidia,elastic-limit = <16>;
885 nvidia,term-range-adj = <6>;
886 nvidia,xcvr-setup = <9>;
887 nvidia,xcvr-lsfslew = <0>;
888 nvidia,xcvr-lsrslew = <3>;
889 nvidia,hssquelch-level = <2>;
890 nvidia,hsdiscon-level = <5>;
891 nvidia,xcvr-hsslew = <12>;
896 compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci";
897 reg = <0x7d008000 0x4000>;
898 interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
900 clocks = <&tegra_car TEGRA124_CLK_USB3>;
901 resets = <&tegra_car 59>;
903 nvidia,phy = <&phy3>;
907 phy3: usb-phy@7d008000 {
908 compatible = "nvidia,tegra124-usb-phy", "nvidia,tegra30-usb-phy";
909 reg = <0x7d008000 0x4000>,
912 clocks = <&tegra_car TEGRA124_CLK_USB3>,
913 <&tegra_car TEGRA124_CLK_PLL_U>,
914 <&tegra_car TEGRA124_CLK_USBD>;
915 clock-names = "reg", "pll_u", "utmi-pads";
916 resets = <&tegra_car 59>, <&tegra_car 22>;
917 reset-names = "usb", "utmi-pads";
918 nvidia,hssync-start-delay = <0>;
919 nvidia,idle-wait-delay = <17>;
920 nvidia,elastic-limit = <16>;
921 nvidia,term-range-adj = <6>;
922 nvidia,xcvr-setup = <9>;
923 nvidia,xcvr-lsfslew = <0>;
924 nvidia,xcvr-lsrslew = <3>;
925 nvidia,hssquelch-level = <2>;
926 nvidia,hsdiscon-level = <5>;
927 nvidia,xcvr-hsslew = <12>;
932 #address-cells = <1>;
937 compatible = "arm,cortex-a15";
940 clocks = <&tegra_car TEGRA124_CLK_CCLK_G>,
941 <&tegra_car TEGRA124_CLK_CCLK_LP>,
942 <&tegra_car TEGRA124_CLK_PLL_X>,
943 <&tegra_car TEGRA124_CLK_PLL_P>,
945 clock-names = "cpu_g", "cpu_lp", "pll_x", "pll_p", "dfll";
946 /* FIXME: what's the actual transition time? */
947 clock-latency = <300000>;
952 compatible = "arm,cortex-a15";
958 compatible = "arm,cortex-a15";
964 compatible = "arm,cortex-a15";
970 compatible = "arm,cortex-a15-pmu";
971 interrupts = <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>,
972 <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>,
973 <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>,
974 <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>;
975 interrupt-affinity = <&{/cpus/cpu@0}>,
983 polling-delay-passive = <1000>;
984 polling-delay = <1000>;
987 <&soctherm TEGRA124_SOCTHERM_SENSOR_CPU>;
991 polling-delay-passive = <1000>;
992 polling-delay = <1000>;
995 <&soctherm TEGRA124_SOCTHERM_SENSOR_MEM>;
999 polling-delay-passive = <1000>;
1000 polling-delay = <1000>;
1003 <&soctherm TEGRA124_SOCTHERM_SENSOR_GPU>;
1007 polling-delay-passive = <1000>;
1008 polling-delay = <1000>;
1011 <&soctherm TEGRA124_SOCTHERM_SENSOR_PLLX>;
1016 compatible = "arm,armv7-timer";
1017 interrupts = <GIC_PPI 13
1018 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
1020 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
1022 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
1024 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
1025 interrupt-parent = <&gic>;