1// SPDX-License-Identifier: GPL-2.0
2#include <dt-bindings/clock/tegra194-clock.h>
3#include <dt-bindings/gpio/tegra194-gpio.h>
4#include <dt-bindings/interrupt-controller/arm-gic.h>
5#include <dt-bindings/mailbox/tegra186-hsp.h>
6#include <dt-bindings/pinctrl/pinctrl-tegra.h>
7#include <dt-bindings/power/tegra194-powergate.h>
8#include <dt-bindings/reset/tegra194-reset.h>
9#include <dt-bindings/thermal/tegra194-bpmp-thermal.h>
10#include <dt-bindings/memory/tegra194-mc.h>
11
12/ {
13	compatible = "nvidia,tegra194";
14	interrupt-parent = <&gic>;
15	#address-cells = <2>;
16	#size-cells = <2>;
17
18	/* control backbone */
19	bus@0 {
20		compatible = "simple-bus";
21		#address-cells = <1>;
22		#size-cells = <1>;
23		ranges = <0x0 0x0 0x0 0x40000000>;
24
25		misc@100000 {
26			compatible = "nvidia,tegra194-misc";
27			reg = <0x00100000 0xf000>,
28			      <0x0010f000 0x1000>;
29		};
30
31		gpio: gpio@2200000 {
32			compatible = "nvidia,tegra194-gpio";
33			reg-names = "security", "gpio";
34			reg = <0x2200000 0x10000>,
35			      <0x2210000 0x10000>;
36			interrupts = <GIC_SPI 288 IRQ_TYPE_LEVEL_HIGH>,
37				     <GIC_SPI 296 IRQ_TYPE_LEVEL_HIGH>,
38				     <GIC_SPI 304 IRQ_TYPE_LEVEL_HIGH>,
39				     <GIC_SPI 312 IRQ_TYPE_LEVEL_HIGH>,
40				     <GIC_SPI 320 IRQ_TYPE_LEVEL_HIGH>,
41				     <GIC_SPI 328 IRQ_TYPE_LEVEL_HIGH>;
42			#interrupt-cells = <2>;
43			interrupt-controller;
44			#gpio-cells = <2>;
45			gpio-controller;
46		};
47
48		ethernet@2490000 {
49			compatible = "nvidia,tegra194-eqos",
50				     "nvidia,tegra186-eqos",
51				     "snps,dwc-qos-ethernet-4.10";
52			reg = <0x02490000 0x10000>;
53			interrupts = <GIC_SPI 194 IRQ_TYPE_LEVEL_HIGH>;
54			clocks = <&bpmp TEGRA194_CLK_AXI_CBB>,
55				 <&bpmp TEGRA194_CLK_EQOS_AXI>,
56				 <&bpmp TEGRA194_CLK_EQOS_RX>,
57				 <&bpmp TEGRA194_CLK_EQOS_TX>,
58				 <&bpmp TEGRA194_CLK_EQOS_PTP_REF>;
59			clock-names = "master_bus", "slave_bus", "rx", "tx", "ptp_ref";
60			resets = <&bpmp TEGRA194_RESET_EQOS>;
61			reset-names = "eqos";
62			interconnects = <&mc TEGRA194_MEMORY_CLIENT_EQOSR &emc>,
63					<&mc TEGRA194_MEMORY_CLIENT_EQOSW &emc>;
64			interconnect-names = "dma-mem", "write";
65			status = "disabled";
66
67			snps,write-requests = <1>;
68			snps,read-requests = <3>;
69			snps,burst-map = <0x7>;
70			snps,txpbl = <16>;
71			snps,rxpbl = <8>;
72		};
73
74		aconnect@2900000 {
75			compatible = "nvidia,tegra194-aconnect",
76				     "nvidia,tegra210-aconnect";
77			clocks = <&bpmp TEGRA194_CLK_APE>,
78				 <&bpmp TEGRA194_CLK_APB2APE>;
79			clock-names = "ape", "apb2ape";
80			power-domains = <&bpmp TEGRA194_POWER_DOMAIN_AUD>;
81			#address-cells = <1>;
82			#size-cells = <1>;
83			ranges = <0x02900000 0x02900000 0x200000>;
84			status = "disabled";
85
86			dma-controller@2930000 {
87				compatible = "nvidia,tegra194-adma",
88					     "nvidia,tegra186-adma";
89				reg = <0x02930000 0x20000>;
90				interrupt-parent = <&agic>;
91				interrupts =  <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
92					      <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>,
93					      <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>,
94					      <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>,
95					      <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
96					      <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>,
97					      <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
98					      <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>,
99					      <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
100					      <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
101					      <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>,
102					      <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>,
103					      <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
104					      <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>,
105					      <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>,
106					      <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>,
107					      <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>,
108					      <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>,
109					      <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>,
110					      <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>,
111					      <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>,
112					      <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>,
113					      <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>,
114					      <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>,
115					      <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>,
116					      <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>,
117					      <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>,
118					      <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>,
119					      <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>,
120					      <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>,
121					      <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>,
122					      <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
123				#dma-cells = <1>;
124				clocks = <&bpmp TEGRA194_CLK_AHUB>;
125				clock-names = "d_audio";
126				status = "disabled";
127			};
128
129			agic: interrupt-controller@2a40000 {
130				compatible = "nvidia,tegra194-agic",
131					     "nvidia,tegra210-agic";
132				#interrupt-cells = <3>;
133				interrupt-controller;
134				reg = <0x02a41000 0x1000>,
135				      <0x02a42000 0x2000>;
136				interrupts = <GIC_SPI 145
137					      (GIC_CPU_MASK_SIMPLE(4) |
138					       IRQ_TYPE_LEVEL_HIGH)>;
139				clocks = <&bpmp TEGRA194_CLK_APE>;
140				clock-names = "clk";
141				status = "disabled";
142			};
143		};
144
145		pinmux: pinmux@2430000 {
146			compatible = "nvidia,tegra194-pinmux";
147			reg = <0x2430000 0x17000>,
148			      <0xc300000 0x4000>;
149
150			status = "okay";
151
152			pex_rst_c5_out_state: pex_rst_c5_out {
153				pex_rst {
154					nvidia,pins = "pex_l5_rst_n_pgg1";
155					nvidia,schmitt = <TEGRA_PIN_DISABLE>;
156					nvidia,lpdr = <TEGRA_PIN_ENABLE>;
157					nvidia,enable-input = <TEGRA_PIN_DISABLE>;
158					nvidia,io-high-voltage = <TEGRA_PIN_ENABLE>;
159					nvidia,tristate = <TEGRA_PIN_DISABLE>;
160					nvidia,pull = <TEGRA_PIN_PULL_NONE>;
161				};
162			};
163
164			clkreq_c5_bi_dir_state: clkreq_c5_bi_dir {
165				clkreq {
166					nvidia,pins = "pex_l5_clkreq_n_pgg0";
167					nvidia,schmitt = <TEGRA_PIN_DISABLE>;
168					nvidia,lpdr = <TEGRA_PIN_ENABLE>;
169					nvidia,enable-input = <TEGRA_PIN_ENABLE>;
170					nvidia,io-high-voltage = <TEGRA_PIN_ENABLE>;
171					nvidia,tristate = <TEGRA_PIN_DISABLE>;
172					nvidia,pull = <TEGRA_PIN_PULL_NONE>;
173				};
174			};
175		};
176
177		mc: memory-controller@2c00000 {
178			compatible = "nvidia,tegra194-mc";
179			reg = <0x02c00000 0x100000>,
180			      <0x02b80000 0x040000>,
181			      <0x01700000 0x100000>;
182			interrupts = <GIC_SPI 223 IRQ_TYPE_LEVEL_HIGH>;
183			#interconnect-cells = <1>;
184			status = "disabled";
185
186			#address-cells = <2>;
187			#size-cells = <2>;
188
189			ranges = <0x01700000 0x0 0x01700000 0x0 0x100000>,
190				 <0x02b80000 0x0 0x02b80000 0x0 0x040000>,
191				 <0x02c00000 0x0 0x02c00000 0x0 0x100000>;
192
193			/*
194			 * Bit 39 of addresses passing through the memory
195			 * controller selects the XBAR format used when memory
196			 * is accessed. This is used to transparently access
197			 * memory in the XBAR format used by the discrete GPU
198			 * (bit 39 set) or Tegra (bit 39 clear).
199			 *
200			 * As a consequence, the operating system must ensure
201			 * that bit 39 is never used implicitly, for example
202			 * via an I/O virtual address mapping of an IOMMU. If
203			 * devices require access to the XBAR switch, their
204			 * drivers must set this bit explicitly.
205			 *
206			 * Limit the DMA range for memory clients to [38:0].
207			 */
208			dma-ranges = <0x0 0x0 0x0 0x80 0x0>;
209
210			emc: external-memory-controller@2c60000 {
211				compatible = "nvidia,tegra194-emc";
212				reg = <0x0 0x02c60000 0x0 0x90000>,
213				      <0x0 0x01780000 0x0 0x80000>;
214				clocks = <&bpmp TEGRA194_CLK_EMC>;
215				clock-names = "emc";
216
217				#interconnect-cells = <0>;
218
219				nvidia,bpmp = <&bpmp>;
220			};
221		};
222
223		uarta: serial@3100000 {
224			compatible = "nvidia,tegra194-uart", "nvidia,tegra20-uart";
225			reg = <0x03100000 0x40>;
226			reg-shift = <2>;
227			interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>;
228			clocks = <&bpmp TEGRA194_CLK_UARTA>;
229			clock-names = "serial";
230			resets = <&bpmp TEGRA194_RESET_UARTA>;
231			reset-names = "serial";
232			status = "disabled";
233		};
234
235		uartb: serial@3110000 {
236			compatible = "nvidia,tegra194-uart", "nvidia,tegra20-uart";
237			reg = <0x03110000 0x40>;
238			reg-shift = <2>;
239			interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>;
240			clocks = <&bpmp TEGRA194_CLK_UARTB>;
241			clock-names = "serial";
242			resets = <&bpmp TEGRA194_RESET_UARTB>;
243			reset-names = "serial";
244			status = "disabled";
245		};
246
247		uartd: serial@3130000 {
248			compatible = "nvidia,tegra194-uart", "nvidia,tegra20-uart";
249			reg = <0x03130000 0x40>;
250			reg-shift = <2>;
251			interrupts = <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>;
252			clocks = <&bpmp TEGRA194_CLK_UARTD>;
253			clock-names = "serial";
254			resets = <&bpmp TEGRA194_RESET_UARTD>;
255			reset-names = "serial";
256			status = "disabled";
257		};
258
259		uarte: serial@3140000 {
260			compatible = "nvidia,tegra194-uart", "nvidia,tegra20-uart";
261			reg = <0x03140000 0x40>;
262			reg-shift = <2>;
263			interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>;
264			clocks = <&bpmp TEGRA194_CLK_UARTE>;
265			clock-names = "serial";
266			resets = <&bpmp TEGRA194_RESET_UARTE>;
267			reset-names = "serial";
268			status = "disabled";
269		};
270
271		uartf: serial@3150000 {
272			compatible = "nvidia,tegra194-uart", "nvidia,tegra20-uart";
273			reg = <0x03150000 0x40>;
274			reg-shift = <2>;
275			interrupts = <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>;
276			clocks = <&bpmp TEGRA194_CLK_UARTF>;
277			clock-names = "serial";
278			resets = <&bpmp TEGRA194_RESET_UARTF>;
279			reset-names = "serial";
280			status = "disabled";
281		};
282
283		gen1_i2c: i2c@3160000 {
284			compatible = "nvidia,tegra194-i2c";
285			reg = <0x03160000 0x10000>;
286			interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
287			#address-cells = <1>;
288			#size-cells = <0>;
289			clocks = <&bpmp TEGRA194_CLK_I2C1>;
290			clock-names = "div-clk";
291			resets = <&bpmp TEGRA194_RESET_I2C1>;
292			reset-names = "i2c";
293			status = "disabled";
294		};
295
296		uarth: serial@3170000 {
297			compatible = "nvidia,tegra194-uart", "nvidia,tegra20-uart";
298			reg = <0x03170000 0x40>;
299			reg-shift = <2>;
300			interrupts = <GIC_SPI 207 IRQ_TYPE_LEVEL_HIGH>;
301			clocks = <&bpmp TEGRA194_CLK_UARTH>;
302			clock-names = "serial";
303			resets = <&bpmp TEGRA194_RESET_UARTH>;
304			reset-names = "serial";
305			status = "disabled";
306		};
307
308		cam_i2c: i2c@3180000 {
309			compatible = "nvidia,tegra194-i2c";
310			reg = <0x03180000 0x10000>;
311			interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>;
312			#address-cells = <1>;
313			#size-cells = <0>;
314			clocks = <&bpmp TEGRA194_CLK_I2C3>;
315			clock-names = "div-clk";
316			resets = <&bpmp TEGRA194_RESET_I2C3>;
317			reset-names = "i2c";
318			status = "disabled";
319		};
320
321		/* shares pads with dpaux1 */
322		dp_aux_ch1_i2c: i2c@3190000 {
323			compatible = "nvidia,tegra194-i2c";
324			reg = <0x03190000 0x10000>;
325			interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>;
326			#address-cells = <1>;
327			#size-cells = <0>;
328			clocks = <&bpmp TEGRA194_CLK_I2C4>;
329			clock-names = "div-clk";
330			resets = <&bpmp TEGRA194_RESET_I2C4>;
331			reset-names = "i2c";
332			status = "disabled";
333		};
334
335		/* shares pads with dpaux0 */
336		dp_aux_ch0_i2c: i2c@31b0000 {
337			compatible = "nvidia,tegra194-i2c";
338			reg = <0x031b0000 0x10000>;
339			interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
340			#address-cells = <1>;
341			#size-cells = <0>;
342			clocks = <&bpmp TEGRA194_CLK_I2C6>;
343			clock-names = "div-clk";
344			resets = <&bpmp TEGRA194_RESET_I2C6>;
345			reset-names = "i2c";
346			status = "disabled";
347		};
348
349		gen7_i2c: i2c@31c0000 {
350			compatible = "nvidia,tegra194-i2c";
351			reg = <0x031c0000 0x10000>;
352			interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
353			#address-cells = <1>;
354			#size-cells = <0>;
355			clocks = <&bpmp TEGRA194_CLK_I2C7>;
356			clock-names = "div-clk";
357			resets = <&bpmp TEGRA194_RESET_I2C7>;
358			reset-names = "i2c";
359			status = "disabled";
360		};
361
362		gen9_i2c: i2c@31e0000 {
363			compatible = "nvidia,tegra194-i2c";
364			reg = <0x031e0000 0x10000>;
365			interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
366			#address-cells = <1>;
367			#size-cells = <0>;
368			clocks = <&bpmp TEGRA194_CLK_I2C9>;
369			clock-names = "div-clk";
370			resets = <&bpmp TEGRA194_RESET_I2C9>;
371			reset-names = "i2c";
372			status = "disabled";
373		};
374
375		pwm1: pwm@3280000 {
376			compatible = "nvidia,tegra194-pwm",
377				     "nvidia,tegra186-pwm";
378			reg = <0x3280000 0x10000>;
379			clocks = <&bpmp TEGRA194_CLK_PWM1>;
380			clock-names = "pwm";
381			resets = <&bpmp TEGRA194_RESET_PWM1>;
382			reset-names = "pwm";
383			status = "disabled";
384			#pwm-cells = <2>;
385		};
386
387		pwm2: pwm@3290000 {
388			compatible = "nvidia,tegra194-pwm",
389				     "nvidia,tegra186-pwm";
390			reg = <0x3290000 0x10000>;
391			clocks = <&bpmp TEGRA194_CLK_PWM2>;
392			clock-names = "pwm";
393			resets = <&bpmp TEGRA194_RESET_PWM2>;
394			reset-names = "pwm";
395			status = "disabled";
396			#pwm-cells = <2>;
397		};
398
399		pwm3: pwm@32a0000 {
400			compatible = "nvidia,tegra194-pwm",
401				     "nvidia,tegra186-pwm";
402			reg = <0x32a0000 0x10000>;
403			clocks = <&bpmp TEGRA194_CLK_PWM3>;
404			clock-names = "pwm";
405			resets = <&bpmp TEGRA194_RESET_PWM3>;
406			reset-names = "pwm";
407			status = "disabled";
408			#pwm-cells = <2>;
409		};
410
411		pwm5: pwm@32c0000 {
412			compatible = "nvidia,tegra194-pwm",
413				     "nvidia,tegra186-pwm";
414			reg = <0x32c0000 0x10000>;
415			clocks = <&bpmp TEGRA194_CLK_PWM5>;
416			clock-names = "pwm";
417			resets = <&bpmp TEGRA194_RESET_PWM5>;
418			reset-names = "pwm";
419			status = "disabled";
420			#pwm-cells = <2>;
421		};
422
423		pwm6: pwm@32d0000 {
424			compatible = "nvidia,tegra194-pwm",
425				     "nvidia,tegra186-pwm";
426			reg = <0x32d0000 0x10000>;
427			clocks = <&bpmp TEGRA194_CLK_PWM6>;
428			clock-names = "pwm";
429			resets = <&bpmp TEGRA194_RESET_PWM6>;
430			reset-names = "pwm";
431			status = "disabled";
432			#pwm-cells = <2>;
433		};
434
435		pwm7: pwm@32e0000 {
436			compatible = "nvidia,tegra194-pwm",
437				     "nvidia,tegra186-pwm";
438			reg = <0x32e0000 0x10000>;
439			clocks = <&bpmp TEGRA194_CLK_PWM7>;
440			clock-names = "pwm";
441			resets = <&bpmp TEGRA194_RESET_PWM7>;
442			reset-names = "pwm";
443			status = "disabled";
444			#pwm-cells = <2>;
445		};
446
447		pwm8: pwm@32f0000 {
448			compatible = "nvidia,tegra194-pwm",
449				     "nvidia,tegra186-pwm";
450			reg = <0x32f0000 0x10000>;
451			clocks = <&bpmp TEGRA194_CLK_PWM8>;
452			clock-names = "pwm";
453			resets = <&bpmp TEGRA194_RESET_PWM8>;
454			reset-names = "pwm";
455			status = "disabled";
456			#pwm-cells = <2>;
457		};
458
459		sdmmc1: mmc@3400000 {
460			compatible = "nvidia,tegra194-sdhci";
461			reg = <0x03400000 0x10000>;
462			interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
463			clocks = <&bpmp TEGRA194_CLK_SDMMC1>;
464			clock-names = "sdhci";
465			resets = <&bpmp TEGRA194_RESET_SDMMC1>;
466			reset-names = "sdhci";
467			interconnects = <&mc TEGRA194_MEMORY_CLIENT_SDMMCRA &emc>,
468					<&mc TEGRA194_MEMORY_CLIENT_SDMMCWA &emc>;
469			interconnect-names = "dma-mem", "write";
470			nvidia,pad-autocal-pull-up-offset-3v3-timeout =
471									<0x07>;
472			nvidia,pad-autocal-pull-down-offset-3v3-timeout =
473									<0x07>;
474			nvidia,pad-autocal-pull-up-offset-1v8-timeout = <0x06>;
475			nvidia,pad-autocal-pull-down-offset-1v8-timeout =
476									<0x07>;
477			nvidia,pad-autocal-pull-up-offset-sdr104 = <0x00>;
478			nvidia,pad-autocal-pull-down-offset-sdr104 = <0x00>;
479			nvidia,default-tap = <0x9>;
480			nvidia,default-trim = <0x5>;
481			status = "disabled";
482		};
483
484		sdmmc3: mmc@3440000 {
485			compatible = "nvidia,tegra194-sdhci";
486			reg = <0x03440000 0x10000>;
487			interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>;
488			clocks = <&bpmp TEGRA194_CLK_SDMMC3>;
489			clock-names = "sdhci";
490			resets = <&bpmp TEGRA194_RESET_SDMMC3>;
491			reset-names = "sdhci";
492			interconnects = <&mc TEGRA194_MEMORY_CLIENT_SDMMCR &emc>,
493					<&mc TEGRA194_MEMORY_CLIENT_SDMMCW &emc>;
494			interconnect-names = "dma-mem", "write";
495			nvidia,pad-autocal-pull-up-offset-1v8 = <0x00>;
496			nvidia,pad-autocal-pull-down-offset-1v8 = <0x7a>;
497			nvidia,pad-autocal-pull-up-offset-3v3-timeout = <0x07>;
498			nvidia,pad-autocal-pull-down-offset-3v3-timeout =
499									<0x07>;
500			nvidia,pad-autocal-pull-up-offset-1v8-timeout = <0x06>;
501			nvidia,pad-autocal-pull-down-offset-1v8-timeout =
502									<0x07>;
503			nvidia,pad-autocal-pull-up-offset-sdr104 = <0x00>;
504			nvidia,pad-autocal-pull-down-offset-sdr104 = <0x00>;
505			nvidia,default-tap = <0x9>;
506			nvidia,default-trim = <0x5>;
507			status = "disabled";
508		};
509
510		sdmmc4: mmc@3460000 {
511			compatible = "nvidia,tegra194-sdhci";
512			reg = <0x03460000 0x10000>;
513			interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>;
514			clocks = <&bpmp TEGRA194_CLK_SDMMC4>;
515			clock-names = "sdhci";
516			assigned-clocks = <&bpmp TEGRA194_CLK_SDMMC4>,
517					  <&bpmp TEGRA194_CLK_PLLC4>;
518			assigned-clock-parents =
519					  <&bpmp TEGRA194_CLK_PLLC4>;
520			resets = <&bpmp TEGRA194_RESET_SDMMC4>;
521			reset-names = "sdhci";
522			interconnects = <&mc TEGRA194_MEMORY_CLIENT_SDMMCRAB &emc>,
523					<&mc TEGRA194_MEMORY_CLIENT_SDMMCWAB &emc>;
524			interconnect-names = "dma-mem", "write";
525			nvidia,pad-autocal-pull-up-offset-hs400 = <0x00>;
526			nvidia,pad-autocal-pull-down-offset-hs400 = <0x00>;
527			nvidia,pad-autocal-pull-up-offset-1v8-timeout = <0x0a>;
528			nvidia,pad-autocal-pull-down-offset-1v8-timeout =
529									<0x0a>;
530			nvidia,pad-autocal-pull-up-offset-3v3-timeout = <0x0a>;
531			nvidia,pad-autocal-pull-down-offset-3v3-timeout =
532									<0x0a>;
533			nvidia,default-tap = <0x8>;
534			nvidia,default-trim = <0x14>;
535			nvidia,dqs-trim = <40>;
536			supports-cqe;
537			status = "disabled";
538		};
539
540		hda@3510000 {
541			compatible = "nvidia,tegra194-hda", "nvidia,tegra30-hda";
542			reg = <0x3510000 0x10000>;
543			interrupts = <GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>;
544			clocks = <&bpmp TEGRA194_CLK_HDA>,
545				 <&bpmp TEGRA194_CLK_HDA2CODEC_2X>,
546				 <&bpmp TEGRA194_CLK_HDA2HDMICODEC>;
547			clock-names = "hda", "hda2codec_2x", "hda2hdmi";
548			resets = <&bpmp TEGRA194_RESET_HDA>,
549				 <&bpmp TEGRA194_RESET_HDA2CODEC_2X>,
550				 <&bpmp TEGRA194_RESET_HDA2HDMICODEC>;
551			reset-names = "hda", "hda2codec_2x", "hda2hdmi";
552			power-domains = <&bpmp TEGRA194_POWER_DOMAIN_DISP>;
553			interconnects = <&mc TEGRA194_MEMORY_CLIENT_HDAR &emc>,
554					<&mc TEGRA194_MEMORY_CLIENT_HDAW &emc>;
555			interconnect-names = "dma-mem", "write";
556			status = "disabled";
557		};
558
559		xusb_padctl: padctl@3520000 {
560			compatible = "nvidia,tegra194-xusb-padctl";
561			reg = <0x03520000 0x1000>,
562			      <0x03540000 0x1000>;
563			reg-names = "padctl", "ao";
564
565			resets = <&bpmp TEGRA194_RESET_XUSB_PADCTL>;
566			reset-names = "padctl";
567
568			status = "disabled";
569
570			pads {
571				usb2 {
572					clocks = <&bpmp TEGRA194_CLK_USB2_TRK>;
573					clock-names = "trk";
574
575					lanes {
576						usb2-0 {
577							nvidia,function = "xusb";
578							status = "disabled";
579							#phy-cells = <0>;
580						};
581
582						usb2-1 {
583							nvidia,function = "xusb";
584							status = "disabled";
585							#phy-cells = <0>;
586						};
587
588						usb2-2 {
589							nvidia,function = "xusb";
590							status = "disabled";
591							#phy-cells = <0>;
592						};
593
594						usb2-3 {
595							nvidia,function = "xusb";
596							status = "disabled";
597							#phy-cells = <0>;
598						};
599					};
600				};
601
602				usb3 {
603					lanes {
604						usb3-0 {
605							nvidia,function = "xusb";
606							status = "disabled";
607							#phy-cells = <0>;
608						};
609
610						usb3-1 {
611							nvidia,function = "xusb";
612							status = "disabled";
613							#phy-cells = <0>;
614						};
615
616						usb3-2 {
617							nvidia,function = "xusb";
618							status = "disabled";
619							#phy-cells = <0>;
620						};
621
622						usb3-3 {
623							nvidia,function = "xusb";
624							status = "disabled";
625							#phy-cells = <0>;
626						};
627					};
628				};
629			};
630
631			ports {
632				usb2-0 {
633					status = "disabled";
634				};
635
636				usb2-1 {
637					status = "disabled";
638				};
639
640				usb2-2 {
641					status = "disabled";
642				};
643
644				usb2-3 {
645					status = "disabled";
646				};
647
648				usb3-0 {
649					status = "disabled";
650				};
651
652				usb3-1 {
653					status = "disabled";
654				};
655
656				usb3-2 {
657					status = "disabled";
658				};
659
660				usb3-3 {
661					status = "disabled";
662				};
663			};
664		};
665
666		usb@3550000 {
667			compatible = "nvidia,tegra194-xudc";
668			reg = <0x03550000 0x8000>,
669			      <0x03558000 0x1000>;
670			reg-names = "base", "fpci";
671			interrupts = <GIC_SPI 166 IRQ_TYPE_LEVEL_HIGH>;
672			clocks = <&bpmp TEGRA194_CLK_XUSB_CORE_DEV>,
673				 <&bpmp TEGRA194_CLK_XUSB_CORE_SS>,
674				 <&bpmp TEGRA194_CLK_XUSB_SS>,
675				 <&bpmp TEGRA194_CLK_XUSB_FS>;
676			clock-names = "dev", "ss", "ss_src", "fs_src";
677			power-domains = <&bpmp TEGRA194_POWER_DOMAIN_XUSBB>,
678					<&bpmp TEGRA194_POWER_DOMAIN_XUSBA>;
679			power-domain-names = "dev", "ss";
680			nvidia,xusb-padctl = <&xusb_padctl>;
681			status = "disabled";
682		};
683
684		usb@3610000 {
685			compatible = "nvidia,tegra194-xusb";
686			reg = <0x03610000 0x40000>,
687			      <0x03600000 0x10000>;
688			reg-names = "hcd", "fpci";
689
690			interrupts = <GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>,
691				     <GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>;
692
693			clocks = <&bpmp TEGRA194_CLK_XUSB_CORE_HOST>,
694				 <&bpmp TEGRA194_CLK_XUSB_FALCON>,
695				 <&bpmp TEGRA194_CLK_XUSB_CORE_SS>,
696				 <&bpmp TEGRA194_CLK_XUSB_SS>,
697				 <&bpmp TEGRA194_CLK_CLK_M>,
698				 <&bpmp TEGRA194_CLK_XUSB_FS>,
699				 <&bpmp TEGRA194_CLK_UTMIPLL>,
700				 <&bpmp TEGRA194_CLK_CLK_M>,
701				 <&bpmp TEGRA194_CLK_PLLE>;
702			clock-names = "xusb_host", "xusb_falcon_src",
703				      "xusb_ss", "xusb_ss_src", "xusb_hs_src",
704				      "xusb_fs_src", "pll_u_480m", "clk_m",
705				      "pll_e";
706
707			power-domains = <&bpmp TEGRA194_POWER_DOMAIN_XUSBC>,
708					<&bpmp TEGRA194_POWER_DOMAIN_XUSBA>;
709			power-domain-names = "xusb_host", "xusb_ss";
710
711			nvidia,xusb-padctl = <&xusb_padctl>;
712			status = "disabled";
713		};
714
715		fuse@3820000 {
716			compatible = "nvidia,tegra194-efuse";
717			reg = <0x03820000 0x10000>;
718			clocks = <&bpmp TEGRA194_CLK_FUSE>;
719			clock-names = "fuse";
720		};
721
722		gic: interrupt-controller@3881000 {
723			compatible = "arm,gic-400";
724			#interrupt-cells = <3>;
725			interrupt-controller;
726			reg = <0x03881000 0x1000>,
727			      <0x03882000 0x2000>,
728			      <0x03884000 0x2000>,
729			      <0x03886000 0x2000>;
730			interrupts = <GIC_PPI 9
731				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
732			interrupt-parent = <&gic>;
733		};
734
735		cec@3960000 {
736			compatible = "nvidia,tegra194-cec";
737			reg = <0x03960000 0x10000>;
738			interrupts = <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>;
739			clocks = <&bpmp TEGRA194_CLK_CEC>;
740			clock-names = "cec";
741			status = "disabled";
742		};
743
744		hsp_top0: hsp@3c00000 {
745			compatible = "nvidia,tegra194-hsp", "nvidia,tegra186-hsp";
746			reg = <0x03c00000 0xa0000>;
747			interrupts = <GIC_SPI 176 IRQ_TYPE_LEVEL_HIGH>,
748			             <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>,
749			             <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>,
750			             <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>,
751			             <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>,
752			             <GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>,
753			             <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>,
754			             <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>,
755			             <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>;
756			interrupt-names = "doorbell", "shared0", "shared1", "shared2",
757			                  "shared3", "shared4", "shared5", "shared6",
758			                  "shared7";
759			#mbox-cells = <2>;
760		};
761
762		p2u_hsio_0: phy@3e10000 {
763			compatible = "nvidia,tegra194-p2u";
764			reg = <0x03e10000 0x10000>;
765			reg-names = "ctl";
766
767			#phy-cells = <0>;
768		};
769
770		p2u_hsio_1: phy@3e20000 {
771			compatible = "nvidia,tegra194-p2u";
772			reg = <0x03e20000 0x10000>;
773			reg-names = "ctl";
774
775			#phy-cells = <0>;
776		};
777
778		p2u_hsio_2: phy@3e30000 {
779			compatible = "nvidia,tegra194-p2u";
780			reg = <0x03e30000 0x10000>;
781			reg-names = "ctl";
782
783			#phy-cells = <0>;
784		};
785
786		p2u_hsio_3: phy@3e40000 {
787			compatible = "nvidia,tegra194-p2u";
788			reg = <0x03e40000 0x10000>;
789			reg-names = "ctl";
790
791			#phy-cells = <0>;
792		};
793
794		p2u_hsio_4: phy@3e50000 {
795			compatible = "nvidia,tegra194-p2u";
796			reg = <0x03e50000 0x10000>;
797			reg-names = "ctl";
798
799			#phy-cells = <0>;
800		};
801
802		p2u_hsio_5: phy@3e60000 {
803			compatible = "nvidia,tegra194-p2u";
804			reg = <0x03e60000 0x10000>;
805			reg-names = "ctl";
806
807			#phy-cells = <0>;
808		};
809
810		p2u_hsio_6: phy@3e70000 {
811			compatible = "nvidia,tegra194-p2u";
812			reg = <0x03e70000 0x10000>;
813			reg-names = "ctl";
814
815			#phy-cells = <0>;
816		};
817
818		p2u_hsio_7: phy@3e80000 {
819			compatible = "nvidia,tegra194-p2u";
820			reg = <0x03e80000 0x10000>;
821			reg-names = "ctl";
822
823			#phy-cells = <0>;
824		};
825
826		p2u_hsio_8: phy@3e90000 {
827			compatible = "nvidia,tegra194-p2u";
828			reg = <0x03e90000 0x10000>;
829			reg-names = "ctl";
830
831			#phy-cells = <0>;
832		};
833
834		p2u_hsio_9: phy@3ea0000 {
835			compatible = "nvidia,tegra194-p2u";
836			reg = <0x03ea0000 0x10000>;
837			reg-names = "ctl";
838
839			#phy-cells = <0>;
840		};
841
842		p2u_nvhs_0: phy@3eb0000 {
843			compatible = "nvidia,tegra194-p2u";
844			reg = <0x03eb0000 0x10000>;
845			reg-names = "ctl";
846
847			#phy-cells = <0>;
848		};
849
850		p2u_nvhs_1: phy@3ec0000 {
851			compatible = "nvidia,tegra194-p2u";
852			reg = <0x03ec0000 0x10000>;
853			reg-names = "ctl";
854
855			#phy-cells = <0>;
856		};
857
858		p2u_nvhs_2: phy@3ed0000 {
859			compatible = "nvidia,tegra194-p2u";
860			reg = <0x03ed0000 0x10000>;
861			reg-names = "ctl";
862
863			#phy-cells = <0>;
864		};
865
866		p2u_nvhs_3: phy@3ee0000 {
867			compatible = "nvidia,tegra194-p2u";
868			reg = <0x03ee0000 0x10000>;
869			reg-names = "ctl";
870
871			#phy-cells = <0>;
872		};
873
874		p2u_nvhs_4: phy@3ef0000 {
875			compatible = "nvidia,tegra194-p2u";
876			reg = <0x03ef0000 0x10000>;
877			reg-names = "ctl";
878
879			#phy-cells = <0>;
880		};
881
882		p2u_nvhs_5: phy@3f00000 {
883			compatible = "nvidia,tegra194-p2u";
884			reg = <0x03f00000 0x10000>;
885			reg-names = "ctl";
886
887			#phy-cells = <0>;
888		};
889
890		p2u_nvhs_6: phy@3f10000 {
891			compatible = "nvidia,tegra194-p2u";
892			reg = <0x03f10000 0x10000>;
893			reg-names = "ctl";
894
895			#phy-cells = <0>;
896		};
897
898		p2u_nvhs_7: phy@3f20000 {
899			compatible = "nvidia,tegra194-p2u";
900			reg = <0x03f20000 0x10000>;
901			reg-names = "ctl";
902
903			#phy-cells = <0>;
904		};
905
906		p2u_hsio_10: phy@3f30000 {
907			compatible = "nvidia,tegra194-p2u";
908			reg = <0x03f30000 0x10000>;
909			reg-names = "ctl";
910
911			#phy-cells = <0>;
912		};
913
914		p2u_hsio_11: phy@3f40000 {
915			compatible = "nvidia,tegra194-p2u";
916			reg = <0x03f40000 0x10000>;
917			reg-names = "ctl";
918
919			#phy-cells = <0>;
920		};
921
922		hsp_aon: hsp@c150000 {
923			compatible = "nvidia,tegra194-hsp", "nvidia,tegra186-hsp";
924			reg = <0x0c150000 0xa0000>;
925			interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>,
926			             <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>,
927			             <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>,
928			             <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>;
929			/*
930			 * Shared interrupt 0 is routed only to AON/SPE, so
931			 * we only have 4 shared interrupts for the CCPLEX.
932			 */
933			interrupt-names = "shared1", "shared2", "shared3", "shared4";
934			#mbox-cells = <2>;
935		};
936
937		gen2_i2c: i2c@c240000 {
938			compatible = "nvidia,tegra194-i2c";
939			reg = <0x0c240000 0x10000>;
940			interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>;
941			#address-cells = <1>;
942			#size-cells = <0>;
943			clocks = <&bpmp TEGRA194_CLK_I2C2>;
944			clock-names = "div-clk";
945			resets = <&bpmp TEGRA194_RESET_I2C2>;
946			reset-names = "i2c";
947			status = "disabled";
948		};
949
950		gen8_i2c: i2c@c250000 {
951			compatible = "nvidia,tegra194-i2c";
952			reg = <0x0c250000 0x10000>;
953			interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
954			#address-cells = <1>;
955			#size-cells = <0>;
956			clocks = <&bpmp TEGRA194_CLK_I2C8>;
957			clock-names = "div-clk";
958			resets = <&bpmp TEGRA194_RESET_I2C8>;
959			reset-names = "i2c";
960			status = "disabled";
961		};
962
963		uartc: serial@c280000 {
964			compatible = "nvidia,tegra194-uart", "nvidia,tegra20-uart";
965			reg = <0x0c280000 0x40>;
966			reg-shift = <2>;
967			interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>;
968			clocks = <&bpmp TEGRA194_CLK_UARTC>;
969			clock-names = "serial";
970			resets = <&bpmp TEGRA194_RESET_UARTC>;
971			reset-names = "serial";
972			status = "disabled";
973		};
974
975		uartg: serial@c290000 {
976			compatible = "nvidia,tegra194-uart", "nvidia,tegra20-uart";
977			reg = <0x0c290000 0x40>;
978			reg-shift = <2>;
979			interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>;
980			clocks = <&bpmp TEGRA194_CLK_UARTG>;
981			clock-names = "serial";
982			resets = <&bpmp TEGRA194_RESET_UARTG>;
983			reset-names = "serial";
984			status = "disabled";
985		};
986
987		rtc: rtc@c2a0000 {
988			compatible = "nvidia,tegra194-rtc", "nvidia,tegra20-rtc";
989			reg = <0x0c2a0000 0x10000>;
990			interrupt-parent = <&pmc>;
991			interrupts = <73 IRQ_TYPE_LEVEL_HIGH>;
992			clocks = <&bpmp TEGRA194_CLK_CLK_32K>;
993			clock-names = "rtc";
994			status = "disabled";
995		};
996
997		gpio_aon: gpio@c2f0000 {
998			compatible = "nvidia,tegra194-gpio-aon";
999			reg-names = "security", "gpio";
1000			reg = <0xc2f0000 0x1000>,
1001			      <0xc2f1000 0x1000>;
1002			interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>;
1003			gpio-controller;
1004			#gpio-cells = <2>;
1005			interrupt-controller;
1006			#interrupt-cells = <2>;
1007		};
1008
1009		pwm4: pwm@c340000 {
1010			compatible = "nvidia,tegra194-pwm",
1011				     "nvidia,tegra186-pwm";
1012			reg = <0xc340000 0x10000>;
1013			clocks = <&bpmp TEGRA194_CLK_PWM4>;
1014			clock-names = "pwm";
1015			resets = <&bpmp TEGRA194_RESET_PWM4>;
1016			reset-names = "pwm";
1017			status = "disabled";
1018			#pwm-cells = <2>;
1019		};
1020
1021		pmc: pmc@c360000 {
1022			compatible = "nvidia,tegra194-pmc";
1023			reg = <0x0c360000 0x10000>,
1024			      <0x0c370000 0x10000>,
1025			      <0x0c380000 0x10000>,
1026			      <0x0c390000 0x10000>,
1027			      <0x0c3a0000 0x10000>;
1028			reg-names = "pmc", "wake", "aotag", "scratch", "misc";
1029
1030			#interrupt-cells = <2>;
1031			interrupt-controller;
1032		};
1033
1034		host1x@13e00000 {
1035			compatible = "nvidia,tegra194-host1x";
1036			reg = <0x13e00000 0x10000>,
1037			      <0x13e10000 0x10000>;
1038			reg-names = "hypervisor", "vm";
1039			interrupts = <GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH>,
1040				     <GIC_SPI 263 IRQ_TYPE_LEVEL_HIGH>;
1041			interrupt-names = "syncpt", "host1x";
1042			clocks = <&bpmp TEGRA194_CLK_HOST1X>;
1043			clock-names = "host1x";
1044			resets = <&bpmp TEGRA194_RESET_HOST1X>;
1045			reset-names = "host1x";
1046
1047			#address-cells = <1>;
1048			#size-cells = <1>;
1049
1050			ranges = <0x15000000 0x15000000 0x01000000>;
1051			interconnects = <&mc TEGRA194_MEMORY_CLIENT_HOST1XDMAR &emc>;
1052			interconnect-names = "dma-mem";
1053
1054			display-hub@15200000 {
1055				compatible = "nvidia,tegra194-display";
1056				reg = <0x15200000 0x00040000>;
1057				resets = <&bpmp TEGRA194_RESET_NVDISPLAY0_MISC>,
1058					 <&bpmp TEGRA194_RESET_NVDISPLAY0_WGRP0>,
1059					 <&bpmp TEGRA194_RESET_NVDISPLAY0_WGRP1>,
1060					 <&bpmp TEGRA194_RESET_NVDISPLAY0_WGRP2>,
1061					 <&bpmp TEGRA194_RESET_NVDISPLAY0_WGRP3>,
1062					 <&bpmp TEGRA194_RESET_NVDISPLAY0_WGRP4>,
1063					 <&bpmp TEGRA194_RESET_NVDISPLAY0_WGRP5>;
1064				reset-names = "misc", "wgrp0", "wgrp1", "wgrp2",
1065					      "wgrp3", "wgrp4", "wgrp5";
1066				clocks = <&bpmp TEGRA194_CLK_NVDISPLAY_DISP>,
1067					 <&bpmp TEGRA194_CLK_NVDISPLAYHUB>;
1068				clock-names = "disp", "hub";
1069				status = "disabled";
1070
1071				power-domains = <&bpmp TEGRA194_POWER_DOMAIN_DISP>;
1072
1073				#address-cells = <1>;
1074				#size-cells = <1>;
1075
1076				ranges = <0x15200000 0x15200000 0x40000>;
1077
1078				display@15200000 {
1079					compatible = "nvidia,tegra194-dc";
1080					reg = <0x15200000 0x10000>;
1081					interrupts = <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>;
1082					clocks = <&bpmp TEGRA194_CLK_NVDISPLAY_P0>;
1083					clock-names = "dc";
1084					resets = <&bpmp TEGRA194_RESET_NVDISPLAY0_HEAD0>;
1085					reset-names = "dc";
1086
1087					power-domains = <&bpmp TEGRA194_POWER_DOMAIN_DISP>;
1088					interconnects = <&mc TEGRA194_MEMORY_CLIENT_NVDISPLAYR &emc>,
1089							<&mc TEGRA194_MEMORY_CLIENT_NVDISPLAYR1 &emc>;
1090					interconnect-names = "dma-mem", "read-1";
1091
1092					nvidia,outputs = <&sor0 &sor1 &sor2 &sor3>;
1093					nvidia,head = <0>;
1094				};
1095
1096				display@15210000 {
1097					compatible = "nvidia,tegra194-dc";
1098					reg = <0x15210000 0x10000>;
1099					interrupts = <GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>;
1100					clocks = <&bpmp TEGRA194_CLK_NVDISPLAY_P1>;
1101					clock-names = "dc";
1102					resets = <&bpmp TEGRA194_RESET_NVDISPLAY0_HEAD1>;
1103					reset-names = "dc";
1104
1105					power-domains = <&bpmp TEGRA194_POWER_DOMAIN_DISPB>;
1106					interconnects = <&mc TEGRA194_MEMORY_CLIENT_NVDISPLAYR &emc>,
1107							<&mc TEGRA194_MEMORY_CLIENT_NVDISPLAYR1 &emc>;
1108					interconnect-names = "dma-mem", "read-1";
1109
1110					nvidia,outputs = <&sor0 &sor1 &sor2 &sor3>;
1111					nvidia,head = <1>;
1112				};
1113
1114				display@15220000 {
1115					compatible = "nvidia,tegra194-dc";
1116					reg = <0x15220000 0x10000>;
1117					interrupts = <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>;
1118					clocks = <&bpmp TEGRA194_CLK_NVDISPLAY_P2>;
1119					clock-names = "dc";
1120					resets = <&bpmp TEGRA194_RESET_NVDISPLAY0_HEAD2>;
1121					reset-names = "dc";
1122
1123					power-domains = <&bpmp TEGRA194_POWER_DOMAIN_DISPC>;
1124					interconnects = <&mc TEGRA194_MEMORY_CLIENT_NVDISPLAYR &emc>,
1125							<&mc TEGRA194_MEMORY_CLIENT_NVDISPLAYR1 &emc>;
1126					interconnect-names = "dma-mem", "read-1";
1127
1128					nvidia,outputs = <&sor0 &sor1 &sor2 &sor3>;
1129					nvidia,head = <2>;
1130				};
1131
1132				display@15230000 {
1133					compatible = "nvidia,tegra194-dc";
1134					reg = <0x15230000 0x10000>;
1135					interrupts = <GIC_SPI 242 IRQ_TYPE_LEVEL_HIGH>;
1136					clocks = <&bpmp TEGRA194_CLK_NVDISPLAY_P3>;
1137					clock-names = "dc";
1138					resets = <&bpmp TEGRA194_RESET_NVDISPLAY0_HEAD3>;
1139					reset-names = "dc";
1140
1141					power-domains = <&bpmp TEGRA194_POWER_DOMAIN_DISPC>;
1142					interconnects = <&mc TEGRA194_MEMORY_CLIENT_NVDISPLAYR &emc>,
1143							<&mc TEGRA194_MEMORY_CLIENT_NVDISPLAYR1 &emc>;
1144					interconnect-names = "dma-mem", "read-1";
1145
1146					nvidia,outputs = <&sor0 &sor1 &sor2 &sor3>;
1147					nvidia,head = <3>;
1148				};
1149			};
1150
1151			vic@15340000 {
1152				compatible = "nvidia,tegra194-vic";
1153				reg = <0x15340000 0x00040000>;
1154				interrupts = <GIC_SPI 206 IRQ_TYPE_LEVEL_HIGH>;
1155				clocks = <&bpmp TEGRA194_CLK_VIC>;
1156				clock-names = "vic";
1157				resets = <&bpmp TEGRA194_RESET_VIC>;
1158				reset-names = "vic";
1159
1160				power-domains = <&bpmp TEGRA194_POWER_DOMAIN_VIC>;
1161				interconnects = <&mc TEGRA194_MEMORY_CLIENT_VICSRD &emc>,
1162						<&mc TEGRA194_MEMORY_CLIENT_VICSWR &emc>;
1163				interconnect-names = "dma-mem", "write";
1164			};
1165
1166			dpaux0: dpaux@155c0000 {
1167				compatible = "nvidia,tegra194-dpaux";
1168				reg = <0x155c0000 0x10000>;
1169				interrupts = <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>;
1170				clocks = <&bpmp TEGRA194_CLK_DPAUX>,
1171					 <&bpmp TEGRA194_CLK_PLLDP>;
1172				clock-names = "dpaux", "parent";
1173				resets = <&bpmp TEGRA194_RESET_DPAUX>;
1174				reset-names = "dpaux";
1175				status = "disabled";
1176
1177				power-domains = <&bpmp TEGRA194_POWER_DOMAIN_DISP>;
1178
1179				state_dpaux0_aux: pinmux-aux {
1180					groups = "dpaux-io";
1181					function = "aux";
1182				};
1183
1184				state_dpaux0_i2c: pinmux-i2c {
1185					groups = "dpaux-io";
1186					function = "i2c";
1187				};
1188
1189				state_dpaux0_off: pinmux-off {
1190					groups = "dpaux-io";
1191					function = "off";
1192				};
1193
1194				i2c-bus {
1195					#address-cells = <1>;
1196					#size-cells = <0>;
1197				};
1198			};
1199
1200			dpaux1: dpaux@155d0000 {
1201				compatible = "nvidia,tegra194-dpaux";
1202				reg = <0x155d0000 0x10000>;
1203				interrupts = <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>;
1204				clocks = <&bpmp TEGRA194_CLK_DPAUX1>,
1205					 <&bpmp TEGRA194_CLK_PLLDP>;
1206				clock-names = "dpaux", "parent";
1207				resets = <&bpmp TEGRA194_RESET_DPAUX1>;
1208				reset-names = "dpaux";
1209				status = "disabled";
1210
1211				power-domains = <&bpmp TEGRA194_POWER_DOMAIN_DISP>;
1212
1213				state_dpaux1_aux: pinmux-aux {
1214					groups = "dpaux-io";
1215					function = "aux";
1216				};
1217
1218				state_dpaux1_i2c: pinmux-i2c {
1219					groups = "dpaux-io";
1220					function = "i2c";
1221				};
1222
1223				state_dpaux1_off: pinmux-off {
1224					groups = "dpaux-io";
1225					function = "off";
1226				};
1227
1228				i2c-bus {
1229					#address-cells = <1>;
1230					#size-cells = <0>;
1231				};
1232			};
1233
1234			dpaux2: dpaux@155e0000 {
1235				compatible = "nvidia,tegra194-dpaux";
1236				reg = <0x155e0000 0x10000>;
1237				interrupts = <GIC_SPI 245 IRQ_TYPE_LEVEL_HIGH>;
1238				clocks = <&bpmp TEGRA194_CLK_DPAUX2>,
1239					 <&bpmp TEGRA194_CLK_PLLDP>;
1240				clock-names = "dpaux", "parent";
1241				resets = <&bpmp TEGRA194_RESET_DPAUX2>;
1242				reset-names = "dpaux";
1243				status = "disabled";
1244
1245				power-domains = <&bpmp TEGRA194_POWER_DOMAIN_DISP>;
1246
1247				state_dpaux2_aux: pinmux-aux {
1248					groups = "dpaux-io";
1249					function = "aux";
1250				};
1251
1252				state_dpaux2_i2c: pinmux-i2c {
1253					groups = "dpaux-io";
1254					function = "i2c";
1255				};
1256
1257				state_dpaux2_off: pinmux-off {
1258					groups = "dpaux-io";
1259					function = "off";
1260				};
1261
1262				i2c-bus {
1263					#address-cells = <1>;
1264					#size-cells = <0>;
1265				};
1266			};
1267
1268			dpaux3: dpaux@155f0000 {
1269				compatible = "nvidia,tegra194-dpaux";
1270				reg = <0x155f0000 0x10000>;
1271				interrupts = <GIC_SPI 246 IRQ_TYPE_LEVEL_HIGH>;
1272				clocks = <&bpmp TEGRA194_CLK_DPAUX3>,
1273					 <&bpmp TEGRA194_CLK_PLLDP>;
1274				clock-names = "dpaux", "parent";
1275				resets = <&bpmp TEGRA194_RESET_DPAUX3>;
1276				reset-names = "dpaux";
1277				status = "disabled";
1278
1279				power-domains = <&bpmp TEGRA194_POWER_DOMAIN_DISP>;
1280
1281				state_dpaux3_aux: pinmux-aux {
1282					groups = "dpaux-io";
1283					function = "aux";
1284				};
1285
1286				state_dpaux3_i2c: pinmux-i2c {
1287					groups = "dpaux-io";
1288					function = "i2c";
1289				};
1290
1291				state_dpaux3_off: pinmux-off {
1292					groups = "dpaux-io";
1293					function = "off";
1294				};
1295
1296				i2c-bus {
1297					#address-cells = <1>;
1298					#size-cells = <0>;
1299				};
1300			};
1301
1302			sor0: sor@15b00000 {
1303				compatible = "nvidia,tegra194-sor";
1304				reg = <0x15b00000 0x40000>;
1305				interrupts = <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>;
1306				clocks = <&bpmp TEGRA194_CLK_SOR0_REF>,
1307					 <&bpmp TEGRA194_CLK_SOR0_OUT>,
1308					 <&bpmp TEGRA194_CLK_PLLD>,
1309					 <&bpmp TEGRA194_CLK_PLLDP>,
1310					 <&bpmp TEGRA194_CLK_SOR_SAFE>,
1311					 <&bpmp TEGRA194_CLK_SOR0_PAD_CLKOUT>;
1312				clock-names = "sor", "out", "parent", "dp", "safe",
1313					      "pad";
1314				resets = <&bpmp TEGRA194_RESET_SOR0>;
1315				reset-names = "sor";
1316				pinctrl-0 = <&state_dpaux0_aux>;
1317				pinctrl-1 = <&state_dpaux0_i2c>;
1318				pinctrl-2 = <&state_dpaux0_off>;
1319				pinctrl-names = "aux", "i2c", "off";
1320				status = "disabled";
1321
1322				power-domains = <&bpmp TEGRA194_POWER_DOMAIN_DISP>;
1323				nvidia,interface = <0>;
1324			};
1325
1326			sor1: sor@15b40000 {
1327				compatible = "nvidia,tegra194-sor";
1328				reg = <0x15b40000 0x40000>;
1329				interrupts = <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>;
1330				clocks = <&bpmp TEGRA194_CLK_SOR1_REF>,
1331					 <&bpmp TEGRA194_CLK_SOR1_OUT>,
1332					 <&bpmp TEGRA194_CLK_PLLD2>,
1333					 <&bpmp TEGRA194_CLK_PLLDP>,
1334					 <&bpmp TEGRA194_CLK_SOR_SAFE>,
1335					 <&bpmp TEGRA194_CLK_SOR1_PAD_CLKOUT>;
1336				clock-names = "sor", "out", "parent", "dp", "safe",
1337					      "pad";
1338				resets = <&bpmp TEGRA194_RESET_SOR1>;
1339				reset-names = "sor";
1340				pinctrl-0 = <&state_dpaux1_aux>;
1341				pinctrl-1 = <&state_dpaux1_i2c>;
1342				pinctrl-2 = <&state_dpaux1_off>;
1343				pinctrl-names = "aux", "i2c", "off";
1344				status = "disabled";
1345
1346				power-domains = <&bpmp TEGRA194_POWER_DOMAIN_DISP>;
1347				nvidia,interface = <1>;
1348			};
1349
1350			sor2: sor@15b80000 {
1351				compatible = "nvidia,tegra194-sor";
1352				reg = <0x15b80000 0x40000>;
1353				interrupts = <GIC_SPI 243 IRQ_TYPE_LEVEL_HIGH>;
1354				clocks = <&bpmp TEGRA194_CLK_SOR2_REF>,
1355					 <&bpmp TEGRA194_CLK_SOR2_OUT>,
1356					 <&bpmp TEGRA194_CLK_PLLD3>,
1357					 <&bpmp TEGRA194_CLK_PLLDP>,
1358					 <&bpmp TEGRA194_CLK_SOR_SAFE>,
1359					 <&bpmp TEGRA194_CLK_SOR2_PAD_CLKOUT>;
1360				clock-names = "sor", "out", "parent", "dp", "safe",
1361					      "pad";
1362				resets = <&bpmp TEGRA194_RESET_SOR2>;
1363				reset-names = "sor";
1364				pinctrl-0 = <&state_dpaux2_aux>;
1365				pinctrl-1 = <&state_dpaux2_i2c>;
1366				pinctrl-2 = <&state_dpaux2_off>;
1367				pinctrl-names = "aux", "i2c", "off";
1368				status = "disabled";
1369
1370				power-domains = <&bpmp TEGRA194_POWER_DOMAIN_DISP>;
1371				nvidia,interface = <2>;
1372			};
1373
1374			sor3: sor@15bc0000 {
1375				compatible = "nvidia,tegra194-sor";
1376				reg = <0x15bc0000 0x40000>;
1377				interrupts = <GIC_SPI 244 IRQ_TYPE_LEVEL_HIGH>;
1378				clocks = <&bpmp TEGRA194_CLK_SOR3_REF>,
1379					 <&bpmp TEGRA194_CLK_SOR3_OUT>,
1380					 <&bpmp TEGRA194_CLK_PLLD4>,
1381					 <&bpmp TEGRA194_CLK_PLLDP>,
1382					 <&bpmp TEGRA194_CLK_SOR_SAFE>,
1383					 <&bpmp TEGRA194_CLK_SOR3_PAD_CLKOUT>;
1384				clock-names = "sor", "out", "parent", "dp", "safe",
1385					      "pad";
1386				resets = <&bpmp TEGRA194_RESET_SOR3>;
1387				reset-names = "sor";
1388				pinctrl-0 = <&state_dpaux3_aux>;
1389				pinctrl-1 = <&state_dpaux3_i2c>;
1390				pinctrl-2 = <&state_dpaux3_off>;
1391				pinctrl-names = "aux", "i2c", "off";
1392				status = "disabled";
1393
1394				power-domains = <&bpmp TEGRA194_POWER_DOMAIN_DISP>;
1395				nvidia,interface = <3>;
1396			};
1397		};
1398	};
1399
1400	pcie@14100000 {
1401		compatible = "nvidia,tegra194-pcie";
1402		power-domains = <&bpmp TEGRA194_POWER_DOMAIN_PCIEX1A>;
1403		reg = <0x00 0x14100000 0x0 0x00020000>, /* appl registers (128K)      */
1404		      <0x00 0x30000000 0x0 0x00040000>, /* configuration space (256K) */
1405		      <0x00 0x30040000 0x0 0x00040000>, /* iATU_DMA reg space (256K)  */
1406		      <0x00 0x30080000 0x0 0x00040000>; /* DBI reg space (256K)       */
1407		reg-names = "appl", "config", "atu_dma", "dbi";
1408
1409		status = "disabled";
1410
1411		#address-cells = <3>;
1412		#size-cells = <2>;
1413		device_type = "pci";
1414		num-lanes = <1>;
1415		num-viewport = <8>;
1416		linux,pci-domain = <1>;
1417
1418		clocks = <&bpmp TEGRA194_CLK_PEX0_CORE_1>;
1419		clock-names = "core";
1420
1421		resets = <&bpmp TEGRA194_RESET_PEX0_CORE_1_APB>,
1422			 <&bpmp TEGRA194_RESET_PEX0_CORE_1>;
1423		reset-names = "apb", "core";
1424
1425		interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>,	/* controller interrupt */
1426			     <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;	/* MSI interrupt */
1427		interrupt-names = "intr", "msi";
1428
1429		#interrupt-cells = <1>;
1430		interrupt-map-mask = <0 0 0 0>;
1431		interrupt-map = <0 0 0 0 &gic GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
1432
1433		nvidia,bpmp = <&bpmp 1>;
1434
1435		nvidia,aspm-cmrt-us = <60>;
1436		nvidia,aspm-pwr-on-t-us = <20>;
1437		nvidia,aspm-l0s-entrance-latency-us = <3>;
1438
1439		bus-range = <0x0 0xff>;
1440
1441		ranges = <0x43000000 0x12 0x00000000 0x12 0x00000000 0x0 0x30000000>, /* prefetchable memory (768 MiB) */
1442			 <0x02000000 0x0  0x40000000 0x12 0x30000000 0x0 0x0fff0000>, /* non-prefetchable memory (256 MiB - 64 KiB) */
1443			 <0x01000000 0x0  0x00000000 0x12 0x3fff0000 0x0 0x00010000>; /* downstream I/O (64 KiB) */
1444
1445		interconnects = <&mc TEGRA194_MEMORY_CLIENT_PCIE1R &emc>,
1446				<&mc TEGRA194_MEMORY_CLIENT_PCIE1W &emc>;
1447		interconnect-names = "read", "write";
1448	};
1449
1450	pcie@14120000 {
1451		compatible = "nvidia,tegra194-pcie";
1452		power-domains = <&bpmp TEGRA194_POWER_DOMAIN_PCIEX1A>;
1453		reg = <0x00 0x14120000 0x0 0x00020000>, /* appl registers (128K)      */
1454		      <0x00 0x32000000 0x0 0x00040000>, /* configuration space (256K) */
1455		      <0x00 0x32040000 0x0 0x00040000>, /* iATU_DMA reg space (256K)  */
1456		      <0x00 0x32080000 0x0 0x00040000>; /* DBI reg space (256K)       */
1457		reg-names = "appl", "config", "atu_dma", "dbi";
1458
1459		status = "disabled";
1460
1461		#address-cells = <3>;
1462		#size-cells = <2>;
1463		device_type = "pci";
1464		num-lanes = <1>;
1465		num-viewport = <8>;
1466		linux,pci-domain = <2>;
1467
1468		clocks = <&bpmp TEGRA194_CLK_PEX0_CORE_2>;
1469		clock-names = "core";
1470
1471		resets = <&bpmp TEGRA194_RESET_PEX0_CORE_2_APB>,
1472			 <&bpmp TEGRA194_RESET_PEX0_CORE_2>;
1473		reset-names = "apb", "core";
1474
1475		interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>,	/* controller interrupt */
1476			     <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;	/* MSI interrupt */
1477		interrupt-names = "intr", "msi";
1478
1479		#interrupt-cells = <1>;
1480		interrupt-map-mask = <0 0 0 0>;
1481		interrupt-map = <0 0 0 0 &gic GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
1482
1483		nvidia,bpmp = <&bpmp 2>;
1484
1485		nvidia,aspm-cmrt-us = <60>;
1486		nvidia,aspm-pwr-on-t-us = <20>;
1487		nvidia,aspm-l0s-entrance-latency-us = <3>;
1488
1489		bus-range = <0x0 0xff>;
1490
1491		ranges = <0x43000000 0x12 0x40000000 0x12 0x40000000 0x0 0x30000000>, /* prefetchable memory (768 MiB) */
1492			 <0x02000000 0x0  0x40000000 0x12 0x70000000 0x0 0x0fff0000>, /* non-prefetchable memory (256 MiB - 64 KiB) */
1493			 <0x01000000 0x0  0x00000000 0x12 0x7fff0000 0x0 0x00010000>; /* downstream I/O (64 KiB) */
1494
1495		interconnects = <&mc TEGRA194_MEMORY_CLIENT_PCIE2AR &emc>,
1496				<&mc TEGRA194_MEMORY_CLIENT_PCIE2AW &emc>;
1497		interconnect-names = "read", "write";
1498	};
1499
1500	pcie@14140000 {
1501		compatible = "nvidia,tegra194-pcie";
1502		power-domains = <&bpmp TEGRA194_POWER_DOMAIN_PCIEX1A>;
1503		reg = <0x00 0x14140000 0x0 0x00020000>, /* appl registers (128K)      */
1504		      <0x00 0x34000000 0x0 0x00040000>, /* configuration space (256K) */
1505		      <0x00 0x34040000 0x0 0x00040000>, /* iATU_DMA reg space (256K)  */
1506		      <0x00 0x34080000 0x0 0x00040000>; /* DBI reg space (256K)       */
1507		reg-names = "appl", "config", "atu_dma", "dbi";
1508
1509		status = "disabled";
1510
1511		#address-cells = <3>;
1512		#size-cells = <2>;
1513		device_type = "pci";
1514		num-lanes = <1>;
1515		num-viewport = <8>;
1516		linux,pci-domain = <3>;
1517
1518		clocks = <&bpmp TEGRA194_CLK_PEX0_CORE_3>;
1519		clock-names = "core";
1520
1521		resets = <&bpmp TEGRA194_RESET_PEX0_CORE_3_APB>,
1522			 <&bpmp TEGRA194_RESET_PEX0_CORE_3>;
1523		reset-names = "apb", "core";
1524
1525		interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>,	/* controller interrupt */
1526			     <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>;	/* MSI interrupt */
1527		interrupt-names = "intr", "msi";
1528
1529		#interrupt-cells = <1>;
1530		interrupt-map-mask = <0 0 0 0>;
1531		interrupt-map = <0 0 0 0 &gic GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
1532
1533		nvidia,bpmp = <&bpmp 3>;
1534
1535		nvidia,aspm-cmrt-us = <60>;
1536		nvidia,aspm-pwr-on-t-us = <20>;
1537		nvidia,aspm-l0s-entrance-latency-us = <3>;
1538
1539		bus-range = <0x0 0xff>;
1540
1541		ranges = <0x43000000 0x12 0x80000000 0x12 0x80000000 0x0 0x30000000>, /* prefetchable memory (768 MiB) */
1542			 <0x02000000 0x0  0x40000000 0x12 0xb0000000 0x0 0x0fff0000>, /* non-prefetchable memory (256 MiB + 64 KiB) */
1543			 <0x01000000 0x0  0x00000000 0x12 0xbfff0000 0x0 0x00010000>; /* downstream I/O (64 KiB) */
1544
1545		interconnects = <&mc TEGRA194_MEMORY_CLIENT_PCIE3R &emc>,
1546				<&mc TEGRA194_MEMORY_CLIENT_PCIE3W &emc>;
1547		interconnect-names = "read", "write";
1548	};
1549
1550	pcie@14160000 {
1551		compatible = "nvidia,tegra194-pcie";
1552		power-domains = <&bpmp TEGRA194_POWER_DOMAIN_PCIEX4A>;
1553		reg = <0x00 0x14160000 0x0 0x00020000>, /* appl registers (128K)      */
1554		      <0x00 0x36000000 0x0 0x00040000>, /* configuration space (256K) */
1555		      <0x00 0x36040000 0x0 0x00040000>, /* iATU_DMA reg space (256K)  */
1556		      <0x00 0x36080000 0x0 0x00040000>; /* DBI reg space (256K)       */
1557		reg-names = "appl", "config", "atu_dma", "dbi";
1558
1559		status = "disabled";
1560
1561		#address-cells = <3>;
1562		#size-cells = <2>;
1563		device_type = "pci";
1564		num-lanes = <4>;
1565		num-viewport = <8>;
1566		linux,pci-domain = <4>;
1567
1568		clocks = <&bpmp TEGRA194_CLK_PEX0_CORE_4>;
1569		clock-names = "core";
1570
1571		resets = <&bpmp TEGRA194_RESET_PEX0_CORE_4_APB>,
1572			 <&bpmp TEGRA194_RESET_PEX0_CORE_4>;
1573		reset-names = "apb", "core";
1574
1575		interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>,	/* controller interrupt */
1576			     <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;	/* MSI interrupt */
1577		interrupt-names = "intr", "msi";
1578
1579		#interrupt-cells = <1>;
1580		interrupt-map-mask = <0 0 0 0>;
1581		interrupt-map = <0 0 0 0 &gic GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>;
1582
1583		nvidia,bpmp = <&bpmp 4>;
1584
1585		nvidia,aspm-cmrt-us = <60>;
1586		nvidia,aspm-pwr-on-t-us = <20>;
1587		nvidia,aspm-l0s-entrance-latency-us = <3>;
1588
1589		bus-range = <0x0 0xff>;
1590
1591		ranges = <0x43000000 0x14 0x00000000 0x14 0x00000000 0x3 0x40000000>, /* prefetchable memory (13 GiB) */
1592			 <0x02000000 0x0  0x40000000 0x17 0x40000000 0x0 0xbfff0000>, /* non-prefetchable memory (3 GiB - 64 KiB) */
1593			 <0x01000000 0x0  0x00000000 0x17 0xffff0000 0x0 0x00010000>; /* downstream I/O (64 KiB) */
1594
1595		interconnects = <&mc TEGRA194_MEMORY_CLIENT_PCIE4R &emc>,
1596				<&mc TEGRA194_MEMORY_CLIENT_PCIE4W &emc>;
1597		interconnect-names = "read", "write";
1598	};
1599
1600	pcie@14180000 {
1601		compatible = "nvidia,tegra194-pcie";
1602		power-domains = <&bpmp TEGRA194_POWER_DOMAIN_PCIEX8B>;
1603		reg = <0x00 0x14180000 0x0 0x00020000>, /* appl registers (128K)      */
1604		      <0x00 0x38000000 0x0 0x00040000>, /* configuration space (256K) */
1605		      <0x00 0x38040000 0x0 0x00040000>, /* iATU_DMA reg space (256K)  */
1606		      <0x00 0x38080000 0x0 0x00040000>; /* DBI reg space (256K)       */
1607		reg-names = "appl", "config", "atu_dma", "dbi";
1608
1609		status = "disabled";
1610
1611		#address-cells = <3>;
1612		#size-cells = <2>;
1613		device_type = "pci";
1614		num-lanes = <8>;
1615		num-viewport = <8>;
1616		linux,pci-domain = <0>;
1617
1618		clocks = <&bpmp TEGRA194_CLK_PEX0_CORE_0>;
1619		clock-names = "core";
1620
1621		resets = <&bpmp TEGRA194_RESET_PEX0_CORE_0_APB>,
1622			 <&bpmp TEGRA194_RESET_PEX0_CORE_0>;
1623		reset-names = "apb", "core";
1624
1625		interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>,	/* controller interrupt */
1626			     <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;	/* MSI interrupt */
1627		interrupt-names = "intr", "msi";
1628
1629		#interrupt-cells = <1>;
1630		interrupt-map-mask = <0 0 0 0>;
1631		interrupt-map = <0 0 0 0 &gic GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
1632
1633		nvidia,bpmp = <&bpmp 0>;
1634
1635		nvidia,aspm-cmrt-us = <60>;
1636		nvidia,aspm-pwr-on-t-us = <20>;
1637		nvidia,aspm-l0s-entrance-latency-us = <3>;
1638
1639		bus-range = <0x0 0xff>;
1640
1641		ranges = <0x43000000 0x18 0x00000000 0x18 0x00000000 0x3 0x40000000>, /* prefetchable memory (13 GiB) */
1642			 <0x02000000 0x0  0x40000000 0x1b 0x40000000 0x0 0xbfff0000>, /* non-prefetchable memory (3 GiB - 64 KiB) */
1643			 <0x01000000 0x0  0x00000000 0x1b 0xffff0000 0x0 0x00010000>; /* downstream I/O (64 KiB) */
1644
1645		interconnects = <&mc TEGRA194_MEMORY_CLIENT_PCIE0R &emc>,
1646				<&mc TEGRA194_MEMORY_CLIENT_PCIE0W &emc>;
1647		interconnect-names = "read", "write";
1648	};
1649
1650	pcie@141a0000 {
1651		compatible = "nvidia,tegra194-pcie";
1652		power-domains = <&bpmp TEGRA194_POWER_DOMAIN_PCIEX8A>;
1653		reg = <0x00 0x141a0000 0x0 0x00020000>, /* appl registers (128K)      */
1654		      <0x00 0x3a000000 0x0 0x00040000>, /* configuration space (256K) */
1655		      <0x00 0x3a040000 0x0 0x00040000>, /* iATU_DMA reg space (256K)  */
1656		      <0x00 0x3a080000 0x0 0x00040000>; /* DBI reg space (256K)       */
1657		reg-names = "appl", "config", "atu_dma", "dbi";
1658
1659		status = "disabled";
1660
1661		#address-cells = <3>;
1662		#size-cells = <2>;
1663		device_type = "pci";
1664		num-lanes = <8>;
1665		num-viewport = <8>;
1666		linux,pci-domain = <5>;
1667
1668		pinctrl-names = "default";
1669		pinctrl-0 = <&pex_rst_c5_out_state>, <&clkreq_c5_bi_dir_state>;
1670
1671		clocks = <&bpmp TEGRA194_CLK_PEX1_CORE_5>,
1672			 <&bpmp TEGRA194_CLK_PEX1_CORE_5M>;
1673		clock-names = "core", "core_m";
1674
1675		resets = <&bpmp TEGRA194_RESET_PEX1_CORE_5_APB>,
1676			 <&bpmp TEGRA194_RESET_PEX1_CORE_5>;
1677		reset-names = "apb", "core";
1678
1679		interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>,	/* controller interrupt */
1680			     <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>;	/* MSI interrupt */
1681		interrupt-names = "intr", "msi";
1682
1683		nvidia,bpmp = <&bpmp 5>;
1684
1685		#interrupt-cells = <1>;
1686		interrupt-map-mask = <0 0 0 0>;
1687		interrupt-map = <0 0 0 0 &gic GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
1688
1689		nvidia,aspm-cmrt-us = <60>;
1690		nvidia,aspm-pwr-on-t-us = <20>;
1691		nvidia,aspm-l0s-entrance-latency-us = <3>;
1692
1693		bus-range = <0x0 0xff>;
1694
1695		ranges = <0x43000000 0x1c 0x00000000 0x1c 0x00000000 0x3 0x40000000>, /* prefetchable memory (13 GiB) */
1696			 <0x02000000 0x0  0x40000000 0x1f 0x40000000 0x0 0xbfff0000>, /* non-prefetchable memory (3 GiB - 64 KiB) */
1697			 <0x01000000 0x0  0x00000000 0x1f 0xffff0000 0x0 0x00010000>; /* downstream I/O (64 KiB) */
1698
1699		interconnects = <&mc TEGRA194_MEMORY_CLIENT_PCIE5R &emc>,
1700				<&mc TEGRA194_MEMORY_CLIENT_PCIE5W &emc>;
1701		interconnect-names = "read", "write";
1702	};
1703
1704	pcie_ep@14160000 {
1705		compatible = "nvidia,tegra194-pcie-ep", "snps,dw-pcie-ep";
1706		power-domains = <&bpmp TEGRA194_POWER_DOMAIN_PCIEX4A>;
1707		reg = <0x00 0x14160000 0x0 0x00020000>, /* appl registers (128K)      */
1708		      <0x00 0x36040000 0x0 0x00040000>, /* iATU_DMA reg space (256K)  */
1709		      <0x00 0x36080000 0x0 0x00040000>, /* DBI reg space (256K)       */
1710		      <0x14 0x00000000 0x4 0x00000000>; /* Address Space (16G)        */
1711		reg-names = "appl", "atu_dma", "dbi", "addr_space";
1712
1713		status = "disabled";
1714
1715		num-lanes = <4>;
1716		num-ib-windows = <2>;
1717		num-ob-windows = <8>;
1718
1719		clocks = <&bpmp TEGRA194_CLK_PEX0_CORE_4>;
1720		clock-names = "core";
1721
1722		resets = <&bpmp TEGRA194_RESET_PEX0_CORE_4_APB>,
1723			 <&bpmp TEGRA194_RESET_PEX0_CORE_4>;
1724		reset-names = "apb", "core";
1725
1726		interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>;	/* controller interrupt */
1727		interrupt-names = "intr";
1728
1729		nvidia,bpmp = <&bpmp 4>;
1730
1731		nvidia,aspm-cmrt-us = <60>;
1732		nvidia,aspm-pwr-on-t-us = <20>;
1733		nvidia,aspm-l0s-entrance-latency-us = <3>;
1734	};
1735
1736	pcie_ep@14180000 {
1737		compatible = "nvidia,tegra194-pcie-ep", "snps,dw-pcie-ep";
1738		power-domains = <&bpmp TEGRA194_POWER_DOMAIN_PCIEX8B>;
1739		reg = <0x00 0x14180000 0x0 0x00020000>, /* appl registers (128K)      */
1740		      <0x00 0x38040000 0x0 0x00040000>, /* iATU_DMA reg space (256K)  */
1741		      <0x00 0x38080000 0x0 0x00040000>, /* DBI reg space (256K)       */
1742		      <0x18 0x00000000 0x4 0x00000000>; /* Address Space (16G)        */
1743		reg-names = "appl", "atu_dma", "dbi", "addr_space";
1744
1745		status = "disabled";
1746
1747		num-lanes = <8>;
1748		num-ib-windows = <2>;
1749		num-ob-windows = <8>;
1750
1751		clocks = <&bpmp TEGRA194_CLK_PEX0_CORE_0>;
1752		clock-names = "core";
1753
1754		resets = <&bpmp TEGRA194_RESET_PEX0_CORE_0_APB>,
1755			 <&bpmp TEGRA194_RESET_PEX0_CORE_0>;
1756		reset-names = "apb", "core";
1757
1758		interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;	/* controller interrupt */
1759		interrupt-names = "intr";
1760
1761		nvidia,bpmp = <&bpmp 0>;
1762
1763		nvidia,aspm-cmrt-us = <60>;
1764		nvidia,aspm-pwr-on-t-us = <20>;
1765		nvidia,aspm-l0s-entrance-latency-us = <3>;
1766	};
1767
1768	pcie_ep@141a0000 {
1769		compatible = "nvidia,tegra194-pcie-ep", "snps,dw-pcie-ep";
1770		power-domains = <&bpmp TEGRA194_POWER_DOMAIN_PCIEX8A>;
1771		reg = <0x00 0x141a0000 0x0 0x00020000>, /* appl registers (128K)      */
1772		      <0x00 0x3a040000 0x0 0x00040000>, /* iATU_DMA reg space (256K)  */
1773		      <0x00 0x3a080000 0x0 0x00040000>, /* DBI reg space (256K)       */
1774		      <0x1c 0x00000000 0x4 0x00000000>; /* Address Space (16G)        */
1775		reg-names = "appl", "atu_dma", "dbi", "addr_space";
1776
1777		status = "disabled";
1778
1779		num-lanes = <8>;
1780		num-ib-windows = <2>;
1781		num-ob-windows = <8>;
1782
1783		pinctrl-names = "default";
1784		pinctrl-0 = <&clkreq_c5_bi_dir_state>;
1785
1786		clocks = <&bpmp TEGRA194_CLK_PEX1_CORE_5>;
1787		clock-names = "core";
1788
1789		resets = <&bpmp TEGRA194_RESET_PEX1_CORE_5_APB>,
1790			 <&bpmp TEGRA194_RESET_PEX1_CORE_5>;
1791		reset-names = "apb", "core";
1792
1793		interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;	/* controller interrupt */
1794		interrupt-names = "intr";
1795
1796		nvidia,bpmp = <&bpmp 5>;
1797
1798		nvidia,aspm-cmrt-us = <60>;
1799		nvidia,aspm-pwr-on-t-us = <20>;
1800		nvidia,aspm-l0s-entrance-latency-us = <3>;
1801	};
1802
1803	sram@40000000 {
1804		compatible = "nvidia,tegra194-sysram", "mmio-sram";
1805		reg = <0x0 0x40000000 0x0 0x50000>;
1806		#address-cells = <1>;
1807		#size-cells = <1>;
1808		ranges = <0x0 0x0 0x40000000 0x50000>;
1809
1810		cpu_bpmp_tx: sram@4e000 {
1811			reg = <0x4e000 0x1000>;
1812			label = "cpu-bpmp-tx";
1813			pool;
1814		};
1815
1816		cpu_bpmp_rx: sram@4f000 {
1817			reg = <0x4f000 0x1000>;
1818			label = "cpu-bpmp-rx";
1819			pool;
1820		};
1821	};
1822
1823	bpmp: bpmp {
1824		compatible = "nvidia,tegra186-bpmp";
1825		mboxes = <&hsp_top0 TEGRA_HSP_MBOX_TYPE_DB
1826				    TEGRA_HSP_DB_MASTER_BPMP>;
1827		shmem = <&cpu_bpmp_tx &cpu_bpmp_rx>;
1828		#clock-cells = <1>;
1829		#reset-cells = <1>;
1830		#power-domain-cells = <1>;
1831		interconnects = <&mc TEGRA194_MEMORY_CLIENT_BPMPR &emc>,
1832				<&mc TEGRA194_MEMORY_CLIENT_BPMPW &emc>,
1833				<&mc TEGRA194_MEMORY_CLIENT_BPMPDMAR &emc>,
1834				<&mc TEGRA194_MEMORY_CLIENT_BPMPDMAW &emc>;
1835		interconnect-names = "read", "write", "dma-mem", "dma-write";
1836
1837		bpmp_i2c: i2c {
1838			compatible = "nvidia,tegra186-bpmp-i2c";
1839			nvidia,bpmp-bus-id = <5>;
1840			#address-cells = <1>;
1841			#size-cells = <0>;
1842		};
1843
1844		bpmp_thermal: thermal {
1845			compatible = "nvidia,tegra186-bpmp-thermal";
1846			#thermal-sensor-cells = <1>;
1847		};
1848	};
1849
1850	cpus {
1851		#address-cells = <1>;
1852		#size-cells = <0>;
1853
1854		cpu0_0: cpu@0 {
1855			compatible = "nvidia,tegra194-carmel";
1856			device_type = "cpu";
1857			reg = <0x000>;
1858			enable-method = "psci";
1859			i-cache-size = <131072>;
1860			i-cache-line-size = <64>;
1861			i-cache-sets = <512>;
1862			d-cache-size = <65536>;
1863			d-cache-line-size = <64>;
1864			d-cache-sets = <256>;
1865			next-level-cache = <&l2c_0>;
1866		};
1867
1868		cpu0_1: cpu@1 {
1869			compatible = "nvidia,tegra194-carmel";
1870			device_type = "cpu";
1871			reg = <0x001>;
1872			enable-method = "psci";
1873			i-cache-size = <131072>;
1874			i-cache-line-size = <64>;
1875			i-cache-sets = <512>;
1876			d-cache-size = <65536>;
1877			d-cache-line-size = <64>;
1878			d-cache-sets = <256>;
1879			next-level-cache = <&l2c_0>;
1880		};
1881
1882		cpu1_0: cpu@100 {
1883			compatible = "nvidia,tegra194-carmel";
1884			device_type = "cpu";
1885			reg = <0x100>;
1886			enable-method = "psci";
1887			i-cache-size = <131072>;
1888			i-cache-line-size = <64>;
1889			i-cache-sets = <512>;
1890			d-cache-size = <65536>;
1891			d-cache-line-size = <64>;
1892			d-cache-sets = <256>;
1893			next-level-cache = <&l2c_1>;
1894		};
1895
1896		cpu1_1: cpu@101 {
1897			compatible = "nvidia,tegra194-carmel";
1898			device_type = "cpu";
1899			reg = <0x101>;
1900			enable-method = "psci";
1901			i-cache-size = <131072>;
1902			i-cache-line-size = <64>;
1903			i-cache-sets = <512>;
1904			d-cache-size = <65536>;
1905			d-cache-line-size = <64>;
1906			d-cache-sets = <256>;
1907			next-level-cache = <&l2c_1>;
1908		};
1909
1910		cpu2_0: cpu@200 {
1911			compatible = "nvidia,tegra194-carmel";
1912			device_type = "cpu";
1913			reg = <0x200>;
1914			enable-method = "psci";
1915			i-cache-size = <131072>;
1916			i-cache-line-size = <64>;
1917			i-cache-sets = <512>;
1918			d-cache-size = <65536>;
1919			d-cache-line-size = <64>;
1920			d-cache-sets = <256>;
1921			next-level-cache = <&l2c_2>;
1922		};
1923
1924		cpu2_1: cpu@201 {
1925			compatible = "nvidia,tegra194-carmel";
1926			device_type = "cpu";
1927			reg = <0x201>;
1928			enable-method = "psci";
1929			i-cache-size = <131072>;
1930			i-cache-line-size = <64>;
1931			i-cache-sets = <512>;
1932			d-cache-size = <65536>;
1933			d-cache-line-size = <64>;
1934			d-cache-sets = <256>;
1935			next-level-cache = <&l2c_2>;
1936		};
1937
1938		cpu3_0: cpu@300 {
1939			compatible = "nvidia,tegra194-carmel";
1940			device_type = "cpu";
1941			reg = <0x300>;
1942			enable-method = "psci";
1943			i-cache-size = <131072>;
1944			i-cache-line-size = <64>;
1945			i-cache-sets = <512>;
1946			d-cache-size = <65536>;
1947			d-cache-line-size = <64>;
1948			d-cache-sets = <256>;
1949			next-level-cache = <&l2c_3>;
1950		};
1951
1952		cpu3_1: cpu@301 {
1953			compatible = "nvidia,tegra194-carmel";
1954			device_type = "cpu";
1955			reg = <0x301>;
1956			enable-method = "psci";
1957			i-cache-size = <131072>;
1958			i-cache-line-size = <64>;
1959			i-cache-sets = <512>;
1960			d-cache-size = <65536>;
1961			d-cache-line-size = <64>;
1962			d-cache-sets = <256>;
1963			next-level-cache = <&l2c_3>;
1964		};
1965
1966		cpu-map {
1967			cluster0 {
1968				core0 {
1969					cpu = <&cpu0_0>;
1970				};
1971
1972				core1 {
1973					cpu = <&cpu0_1>;
1974				};
1975			};
1976
1977			cluster1 {
1978				core0 {
1979					cpu = <&cpu1_0>;
1980				};
1981
1982				core1 {
1983					cpu = <&cpu1_1>;
1984				};
1985			};
1986
1987			cluster2 {
1988				core0 {
1989					cpu = <&cpu2_0>;
1990				};
1991
1992				core1 {
1993					cpu = <&cpu2_1>;
1994				};
1995			};
1996
1997			cluster3 {
1998				core0 {
1999					cpu = <&cpu3_0>;
2000				};
2001
2002				core1 {
2003					cpu = <&cpu3_1>;
2004				};
2005			};
2006		};
2007
2008		l2c_0: l2-cache0 {
2009			cache-size = <2097152>;
2010			cache-line-size = <64>;
2011			cache-sets = <2048>;
2012			next-level-cache = <&l3c>;
2013		};
2014
2015		l2c_1: l2-cache1 {
2016			cache-size = <2097152>;
2017			cache-line-size = <64>;
2018			cache-sets = <2048>;
2019			next-level-cache = <&l3c>;
2020		};
2021
2022		l2c_2: l2-cache2 {
2023			cache-size = <2097152>;
2024			cache-line-size = <64>;
2025			cache-sets = <2048>;
2026			next-level-cache = <&l3c>;
2027		};
2028
2029		l2c_3: l2-cache3 {
2030			cache-size = <2097152>;
2031			cache-line-size = <64>;
2032			cache-sets = <2048>;
2033			next-level-cache = <&l3c>;
2034		};
2035
2036		l3c: l3-cache {
2037			cache-size = <4194304>;
2038			cache-line-size = <64>;
2039			cache-sets = <4096>;
2040		};
2041	};
2042
2043	psci {
2044		compatible = "arm,psci-1.0";
2045		status = "okay";
2046		method = "smc";
2047	};
2048
2049	tcu: tcu {
2050		compatible = "nvidia,tegra194-tcu";
2051		mboxes = <&hsp_top0 TEGRA_HSP_MBOX_TYPE_SM TEGRA_HSP_SM_RX(0)>,
2052		         <&hsp_aon TEGRA_HSP_MBOX_TYPE_SM TEGRA_HSP_SM_TX(1)>;
2053		mbox-names = "rx", "tx";
2054	};
2055
2056	thermal-zones {
2057		cpu {
2058			thermal-sensors = <&{/bpmp/thermal}
2059					   TEGRA194_BPMP_THERMAL_ZONE_CPU>;
2060			status = "disabled";
2061		};
2062
2063		gpu {
2064			thermal-sensors = <&{/bpmp/thermal}
2065					   TEGRA194_BPMP_THERMAL_ZONE_GPU>;
2066			status = "disabled";
2067		};
2068
2069		aux {
2070			thermal-sensors = <&{/bpmp/thermal}
2071					   TEGRA194_BPMP_THERMAL_ZONE_AUX>;
2072			status = "disabled";
2073		};
2074
2075		pllx {
2076			thermal-sensors = <&{/bpmp/thermal}
2077					   TEGRA194_BPMP_THERMAL_ZONE_PLLX>;
2078			status = "disabled";
2079		};
2080
2081		ao {
2082			thermal-sensors = <&{/bpmp/thermal}
2083					   TEGRA194_BPMP_THERMAL_ZONE_AO>;
2084			status = "disabled";
2085		};
2086
2087		tj {
2088			thermal-sensors = <&{/bpmp/thermal}
2089					   TEGRA194_BPMP_THERMAL_ZONE_TJ_MAX>;
2090			status = "disabled";
2091		};
2092	};
2093
2094	timer {
2095		compatible = "arm,armv8-timer";
2096		interrupts = <GIC_PPI 13
2097				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
2098			     <GIC_PPI 14
2099				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
2100			     <GIC_PPI 11
2101				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
2102			     <GIC_PPI 10
2103				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
2104		interrupt-parent = <&gic>;
2105		always-on;
2106	};
2107};
2108