1 #include <dt-bindings/clock/tegra124-car.h>
2 #include <dt-bindings/gpio/tegra-gpio.h>
3 #include <dt-bindings/pinctrl/pinctrl-tegra.h>
4 #include <dt-bindings/interrupt-controller/arm-gic.h>
5 #include <dt-bindings/pinctrl/pinctrl-tegra-xusb.h>
7 #include "skeleton.dtsi"
10 compatible = "nvidia,tegra124";
12 tegra_car: clock@60006000 {
13 compatible = "nvidia,tegra124-car";
14 reg = <0x60006000 0x1000>;
18 apbdma: dma@60020000 {
19 compatible = "nvidia,tegra124-apbdma", "nvidia,tegra148-apbdma";
20 reg = <0x60020000 0x1400>;
21 interrupts = <0 104 0x04
56 compatible = "nvidia,tegra124-gpio", "nvidia,tegra30-gpio";
57 reg = <0x6000d000 0x1000>;
58 interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>,
59 <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>,
60 <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>,
61 <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>,
62 <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>,
63 <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>,
64 <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>,
65 <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>;
68 #interrupt-cells = <2>;
73 compatible = "nvidia,tegra124-i2c", "nvidia,tegra114-i2c";
74 reg = <0x7000c000 0x100>;
75 interrupts = <0 38 0x04>;
78 clocks = <&tegra_car 12>;
83 compatible = "nvidia,tegra124-i2c", "nvidia,tegra114-i2c";
84 reg = <0x7000c400 0x100>;
85 interrupts = <0 84 0x04>;
88 clocks = <&tegra_car 54>;
93 compatible = "nvidia,tegra124-i2c", "nvidia,tegra114-i2c";
94 reg = <0x7000c500 0x100>;
95 interrupts = <0 92 0x04>;
98 clocks = <&tegra_car 67>;
103 compatible = "nvidia,tegra124-i2c", "nvidia,tegra114-i2c";
104 reg = <0x7000c700 0x100>;
105 interrupts = <0 120 0x04>;
106 #address-cells = <1>;
108 clocks = <&tegra_car 103>;
113 compatible = "nvidia,tegra124-i2c", "nvidia,tegra114-i2c";
114 reg = <0x7000d000 0x100>;
115 interrupts = <0 53 0x04>;
116 #address-cells = <1>;
118 clocks = <&tegra_car 47>;
123 compatible = "nvidia,tegra124-i2c", "nvidia,tegra114-i2c";
124 reg = <0x7000d100 0x100>;
125 interrupts = <0 53 0x04>;
126 #address-cells = <1>;
128 clocks = <&tegra_car 47>;
132 uarta: serial@70006000 {
133 compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
134 reg = <0x70006000 0x40>;
136 interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
137 clocks = <&tegra_car TEGRA124_CLK_UARTA>;
138 resets = <&tegra_car 6>;
139 reset-names = "serial";
140 dmas = <&apbdma 8>, <&apbdma 8>;
141 dma-names = "rx", "tx";
145 uartb: serial@70006040 {
146 compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
147 reg = <0x70006040 0x40>;
149 interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
150 clocks = <&tegra_car TEGRA124_CLK_UARTB>;
151 resets = <&tegra_car 7>;
152 reset-names = "serial";
153 dmas = <&apbdma 9>, <&apbdma 9>;
154 dma-names = "rx", "tx";
158 uartc: serial@70006200 {
159 compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
160 reg = <0x70006200 0x40>;
162 interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
163 clocks = <&tegra_car TEGRA124_CLK_UARTC>;
164 resets = <&tegra_car 55>;
165 reset-names = "serial";
166 dmas = <&apbdma 10>, <&apbdma 10>;
167 dma-names = "rx", "tx";
171 uartd: serial@70006300 {
172 compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
173 reg = <0x70006300 0x40>;
175 interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>;
176 clocks = <&tegra_car TEGRA124_CLK_UARTD>;
177 resets = <&tegra_car 65>;
178 reset-names = "serial";
179 dmas = <&apbdma 19>, <&apbdma 19>;
180 dma-names = "rx", "tx";
184 uarte: serial@70006400 {
185 compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
186 reg = <0x70006400 0x40>;
188 interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>;
189 clocks = <&tegra_car TEGRA124_CLK_UARTE>;
190 resets = <&tegra_car 66>;
191 reset-names = "serial";
192 dmas = <&apbdma 20>, <&apbdma 20>;
193 dma-names = "rx", "tx";
198 compatible = "nvidia,tegra124-pwm", "nvidia,tegra20-pwm";
199 reg = <0x7000a000 0x100>;
201 clocks = <&tegra_car TEGRA124_CLK_PWM>;
202 resets = <&tegra_car 17>;
208 compatible = "nvidia,tegra124-spi", "nvidia,tegra114-spi";
209 reg = <0x7000d400 0x200>;
210 interrupts = <0 59 0x04>;
211 nvidia,dma-request-selector = <&apbdma 15>;
212 #address-cells = <1>;
215 clocks = <&tegra_car 41>;
219 compatible = "nvidia,tegra124-spi", "nvidia,tegra114-spi";
220 reg = <0x7000d600 0x200>;
221 interrupts = <0 82 0x04>;
222 nvidia,dma-request-selector = <&apbdma 16>;
223 #address-cells = <1>;
226 clocks = <&tegra_car 44>;
230 compatible = "nvidia,tegra124-spi", "nvidia,tegra114-spi";
231 reg = <0x7000d800 0x200>;
232 interrupts = <0 83 0x04>;
233 nvidia,dma-request-selector = <&apbdma 17>;
234 #address-cells = <1>;
237 clocks = <&tegra_car 46>;
241 compatible = "nvidia,tegra124-spi", "nvidia,tegra114-spi";
242 reg = <0x7000da00 0x200>;
243 interrupts = <0 93 0x04>;
244 nvidia,dma-request-selector = <&apbdma 18>;
245 #address-cells = <1>;
248 clocks = <&tegra_car 68>;
252 compatible = "nvidia,tegra124-spi", "nvidia,tegra114-spi";
253 reg = <0x7000dc00 0x200>;
254 interrupts = <0 94 0x04>;
255 nvidia,dma-request-selector = <&apbdma 27>;
256 #address-cells = <1>;
259 clocks = <&tegra_car 104>;
263 compatible = "nvidia,tegra124-spi", "nvidia,tegra114-spi";
264 reg = <0x7000de00 0x200>;
265 interrupts = <0 79 0x04>;
266 nvidia,dma-request-selector = <&apbdma 28>;
267 #address-cells = <1>;
270 clocks = <&tegra_car 105>;
273 padctl: padctl@7009f000 {
274 compatible = "nvidia,tegra124-xusb-padctl";
275 reg = <0x7009f000 0x1000>;
276 resets = <&tegra_car 142>;
277 reset-names = "padctl";
283 compatible = "nvidia,tegra124-sdhci";
284 reg = <0x700b0000 0x200>;
285 interrupts = <0 14 0x04>;
286 clocks = <&tegra_car 14>;
291 compatible = "nvidia,tegra124-sdhci";
292 reg = <0x700b0200 0x200>;
293 interrupts = <0 15 0x04>;
294 clocks = <&tegra_car 9>;
299 compatible = "nvidia,tegra124-sdhci";
300 reg = <0x700b0400 0x200>;
301 interrupts = <0 19 0x04>;
302 clocks = <&tegra_car 69>;
307 compatible = "nvidia,tegra124-sdhci";
308 reg = <0x700b0600 0x200>;
309 interrupts = <0 31 0x04>;
310 clocks = <&tegra_car 15>;
315 compatible = "nvidia,tegra124-ahub";
316 reg = <0x70300000 0x200>,
319 interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
320 clocks = <&tegra_car TEGRA124_CLK_D_AUDIO>,
321 <&tegra_car TEGRA124_CLK_APBIF>;
322 clock-names = "d_audio", "apbif";
323 resets = <&tegra_car 106>, /* d_audio */
324 <&tegra_car 107>, /* apbif */
325 <&tegra_car 30>, /* i2s0 */
326 <&tegra_car 11>, /* i2s1 */
327 <&tegra_car 18>, /* i2s2 */
328 <&tegra_car 101>, /* i2s3 */
329 <&tegra_car 102>, /* i2s4 */
330 <&tegra_car 108>, /* dam0 */
331 <&tegra_car 109>, /* dam1 */
332 <&tegra_car 110>, /* dam2 */
333 <&tegra_car 10>, /* spdif */
334 <&tegra_car 153>, /* amx */
335 <&tegra_car 185>, /* amx1 */
336 <&tegra_car 154>, /* adx */
337 <&tegra_car 180>, /* adx1 */
338 <&tegra_car 186>, /* afc0 */
339 <&tegra_car 187>, /* afc1 */
340 <&tegra_car 188>, /* afc2 */
341 <&tegra_car 189>, /* afc3 */
342 <&tegra_car 190>, /* afc4 */
343 <&tegra_car 191>; /* afc5 */
344 reset-names = "d_audio", "apbif", "i2s0", "i2s1", "i2s2",
345 "i2s3", "i2s4", "dam0", "dam1", "dam2",
346 "spdif", "amx", "amx1", "adx", "adx1",
347 "afc0", "afc1", "afc2", "afc3", "afc4", "afc5";
348 dmas = <&apbdma 1>, <&apbdma 1>,
349 <&apbdma 2>, <&apbdma 2>,
350 <&apbdma 3>, <&apbdma 3>,
351 <&apbdma 4>, <&apbdma 4>,
352 <&apbdma 6>, <&apbdma 6>,
353 <&apbdma 7>, <&apbdma 7>,
354 <&apbdma 12>, <&apbdma 12>,
355 <&apbdma 13>, <&apbdma 13>,
356 <&apbdma 14>, <&apbdma 14>,
357 <&apbdma 29>, <&apbdma 29>;
358 dma-names = "rx0", "tx0", "rx1", "tx1", "rx2", "tx2",
359 "rx3", "tx3", "rx4", "tx4", "rx5", "tx5",
360 "rx6", "tx6", "rx7", "tx7", "rx8", "tx8",
363 #address-cells = <1>;
366 tegra_i2s0: i2s@70301000 {
367 compatible = "nvidia,tegra124-i2s";
368 reg = <0x70301000 0x100>;
369 nvidia,ahub-cif-ids = <4 4>;
370 clocks = <&tegra_car TEGRA124_CLK_I2S0>;
371 resets = <&tegra_car 30>;
376 tegra_i2s1: i2s@70301100 {
377 compatible = "nvidia,tegra124-i2s";
378 reg = <0x70301100 0x100>;
379 nvidia,ahub-cif-ids = <5 5>;
380 clocks = <&tegra_car TEGRA124_CLK_I2S1>;
381 resets = <&tegra_car 11>;
386 tegra_i2s2: i2s@70301200 {
387 compatible = "nvidia,tegra124-i2s";
388 reg = <0x70301200 0x100>;
389 nvidia,ahub-cif-ids = <6 6>;
390 clocks = <&tegra_car TEGRA124_CLK_I2S2>;
391 resets = <&tegra_car 18>;
396 tegra_i2s3: i2s@70301300 {
397 compatible = "nvidia,tegra124-i2s";
398 reg = <0x70301300 0x100>;
399 nvidia,ahub-cif-ids = <7 7>;
400 clocks = <&tegra_car TEGRA124_CLK_I2S3>;
401 resets = <&tegra_car 101>;
406 tegra_i2s4: i2s@70301400 {
407 compatible = "nvidia,tegra124-i2s";
408 reg = <0x70301400 0x100>;
409 nvidia,ahub-cif-ids = <8 8>;
410 clocks = <&tegra_car TEGRA124_CLK_I2S4>;
411 resets = <&tegra_car 102>;
418 compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci";
419 reg = <0x7d000000 0x4000>;
422 clocks = <&tegra_car 22>; /* PERIPH_ID_USBD */
427 compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci";
428 reg = <0x7d004000 0x4000>;
431 clocks = <&tegra_car 58>; /* PERIPH_ID_USB2 */
436 compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci";
437 reg = <0x7d008000 0x4000>;
438 interrupts = < 129 >;
440 clocks = <&tegra_car 59>; /* PERIPH_ID_USB3 */