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	cbb@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				     <GIC_SPI 167 IRQ_TYPE_LEVEL_HIGH>;
693
694			clocks = <&bpmp TEGRA194_CLK_XUSB_CORE_HOST>,
695				 <&bpmp TEGRA194_CLK_XUSB_FALCON>,
696				 <&bpmp TEGRA194_CLK_XUSB_CORE_SS>,
697				 <&bpmp TEGRA194_CLK_XUSB_SS>,
698				 <&bpmp TEGRA194_CLK_CLK_M>,
699				 <&bpmp TEGRA194_CLK_XUSB_FS>,
700				 <&bpmp TEGRA194_CLK_UTMIPLL>,
701				 <&bpmp TEGRA194_CLK_CLK_M>,
702				 <&bpmp TEGRA194_CLK_PLLE>;
703			clock-names = "xusb_host", "xusb_falcon_src",
704				      "xusb_ss", "xusb_ss_src", "xusb_hs_src",
705				      "xusb_fs_src", "pll_u_480m", "clk_m",
706				      "pll_e";
707
708			power-domains = <&bpmp TEGRA194_POWER_DOMAIN_XUSBC>,
709					<&bpmp TEGRA194_POWER_DOMAIN_XUSBA>;
710			power-domain-names = "xusb_host", "xusb_ss";
711
712			nvidia,xusb-padctl = <&xusb_padctl>;
713			status = "disabled";
714		};
715
716		fuse@3820000 {
717			compatible = "nvidia,tegra194-efuse";
718			reg = <0x03820000 0x10000>;
719			clocks = <&bpmp TEGRA194_CLK_FUSE>;
720			clock-names = "fuse";
721		};
722
723		gic: interrupt-controller@3881000 {
724			compatible = "arm,gic-400";
725			#interrupt-cells = <3>;
726			interrupt-controller;
727			reg = <0x03881000 0x1000>,
728			      <0x03882000 0x2000>,
729			      <0x03884000 0x2000>,
730			      <0x03886000 0x2000>;
731			interrupts = <GIC_PPI 9
732				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
733			interrupt-parent = <&gic>;
734		};
735
736		cec@3960000 {
737			compatible = "nvidia,tegra194-cec";
738			reg = <0x03960000 0x10000>;
739			interrupts = <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>;
740			clocks = <&bpmp TEGRA194_CLK_CEC>;
741			clock-names = "cec";
742			status = "disabled";
743		};
744
745		hsp_top0: hsp@3c00000 {
746			compatible = "nvidia,tegra194-hsp", "nvidia,tegra186-hsp";
747			reg = <0x03c00000 0xa0000>;
748			interrupts = <GIC_SPI 176 IRQ_TYPE_LEVEL_HIGH>,
749			             <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>,
750			             <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>,
751			             <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>,
752			             <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>,
753			             <GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>,
754			             <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>,
755			             <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>,
756			             <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>;
757			interrupt-names = "doorbell", "shared0", "shared1", "shared2",
758			                  "shared3", "shared4", "shared5", "shared6",
759			                  "shared7";
760			#mbox-cells = <2>;
761		};
762
763		p2u_hsio_0: phy@3e10000 {
764			compatible = "nvidia,tegra194-p2u";
765			reg = <0x03e10000 0x10000>;
766			reg-names = "ctl";
767
768			#phy-cells = <0>;
769		};
770
771		p2u_hsio_1: phy@3e20000 {
772			compatible = "nvidia,tegra194-p2u";
773			reg = <0x03e20000 0x10000>;
774			reg-names = "ctl";
775
776			#phy-cells = <0>;
777		};
778
779		p2u_hsio_2: phy@3e30000 {
780			compatible = "nvidia,tegra194-p2u";
781			reg = <0x03e30000 0x10000>;
782			reg-names = "ctl";
783
784			#phy-cells = <0>;
785		};
786
787		p2u_hsio_3: phy@3e40000 {
788			compatible = "nvidia,tegra194-p2u";
789			reg = <0x03e40000 0x10000>;
790			reg-names = "ctl";
791
792			#phy-cells = <0>;
793		};
794
795		p2u_hsio_4: phy@3e50000 {
796			compatible = "nvidia,tegra194-p2u";
797			reg = <0x03e50000 0x10000>;
798			reg-names = "ctl";
799
800			#phy-cells = <0>;
801		};
802
803		p2u_hsio_5: phy@3e60000 {
804			compatible = "nvidia,tegra194-p2u";
805			reg = <0x03e60000 0x10000>;
806			reg-names = "ctl";
807
808			#phy-cells = <0>;
809		};
810
811		p2u_hsio_6: phy@3e70000 {
812			compatible = "nvidia,tegra194-p2u";
813			reg = <0x03e70000 0x10000>;
814			reg-names = "ctl";
815
816			#phy-cells = <0>;
817		};
818
819		p2u_hsio_7: phy@3e80000 {
820			compatible = "nvidia,tegra194-p2u";
821			reg = <0x03e80000 0x10000>;
822			reg-names = "ctl";
823
824			#phy-cells = <0>;
825		};
826
827		p2u_hsio_8: phy@3e90000 {
828			compatible = "nvidia,tegra194-p2u";
829			reg = <0x03e90000 0x10000>;
830			reg-names = "ctl";
831
832			#phy-cells = <0>;
833		};
834
835		p2u_hsio_9: phy@3ea0000 {
836			compatible = "nvidia,tegra194-p2u";
837			reg = <0x03ea0000 0x10000>;
838			reg-names = "ctl";
839
840			#phy-cells = <0>;
841		};
842
843		p2u_nvhs_0: phy@3eb0000 {
844			compatible = "nvidia,tegra194-p2u";
845			reg = <0x03eb0000 0x10000>;
846			reg-names = "ctl";
847
848			#phy-cells = <0>;
849		};
850
851		p2u_nvhs_1: phy@3ec0000 {
852			compatible = "nvidia,tegra194-p2u";
853			reg = <0x03ec0000 0x10000>;
854			reg-names = "ctl";
855
856			#phy-cells = <0>;
857		};
858
859		p2u_nvhs_2: phy@3ed0000 {
860			compatible = "nvidia,tegra194-p2u";
861			reg = <0x03ed0000 0x10000>;
862			reg-names = "ctl";
863
864			#phy-cells = <0>;
865		};
866
867		p2u_nvhs_3: phy@3ee0000 {
868			compatible = "nvidia,tegra194-p2u";
869			reg = <0x03ee0000 0x10000>;
870			reg-names = "ctl";
871
872			#phy-cells = <0>;
873		};
874
875		p2u_nvhs_4: phy@3ef0000 {
876			compatible = "nvidia,tegra194-p2u";
877			reg = <0x03ef0000 0x10000>;
878			reg-names = "ctl";
879
880			#phy-cells = <0>;
881		};
882
883		p2u_nvhs_5: phy@3f00000 {
884			compatible = "nvidia,tegra194-p2u";
885			reg = <0x03f00000 0x10000>;
886			reg-names = "ctl";
887
888			#phy-cells = <0>;
889		};
890
891		p2u_nvhs_6: phy@3f10000 {
892			compatible = "nvidia,tegra194-p2u";
893			reg = <0x03f10000 0x10000>;
894			reg-names = "ctl";
895
896			#phy-cells = <0>;
897		};
898
899		p2u_nvhs_7: phy@3f20000 {
900			compatible = "nvidia,tegra194-p2u";
901			reg = <0x03f20000 0x10000>;
902			reg-names = "ctl";
903
904			#phy-cells = <0>;
905		};
906
907		p2u_hsio_10: phy@3f30000 {
908			compatible = "nvidia,tegra194-p2u";
909			reg = <0x03f30000 0x10000>;
910			reg-names = "ctl";
911
912			#phy-cells = <0>;
913		};
914
915		p2u_hsio_11: phy@3f40000 {
916			compatible = "nvidia,tegra194-p2u";
917			reg = <0x03f40000 0x10000>;
918			reg-names = "ctl";
919
920			#phy-cells = <0>;
921		};
922
923		hsp_aon: hsp@c150000 {
924			compatible = "nvidia,tegra194-hsp", "nvidia,tegra186-hsp";
925			reg = <0x0c150000 0xa0000>;
926			interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>,
927			             <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>,
928			             <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>,
929			             <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>;
930			/*
931			 * Shared interrupt 0 is routed only to AON/SPE, so
932			 * we only have 4 shared interrupts for the CCPLEX.
933			 */
934			interrupt-names = "shared1", "shared2", "shared3", "shared4";
935			#mbox-cells = <2>;
936		};
937
938		gen2_i2c: i2c@c240000 {
939			compatible = "nvidia,tegra194-i2c";
940			reg = <0x0c240000 0x10000>;
941			interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>;
942			#address-cells = <1>;
943			#size-cells = <0>;
944			clocks = <&bpmp TEGRA194_CLK_I2C2>;
945			clock-names = "div-clk";
946			resets = <&bpmp TEGRA194_RESET_I2C2>;
947			reset-names = "i2c";
948			status = "disabled";
949		};
950
951		gen8_i2c: i2c@c250000 {
952			compatible = "nvidia,tegra194-i2c";
953			reg = <0x0c250000 0x10000>;
954			interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
955			#address-cells = <1>;
956			#size-cells = <0>;
957			clocks = <&bpmp TEGRA194_CLK_I2C8>;
958			clock-names = "div-clk";
959			resets = <&bpmp TEGRA194_RESET_I2C8>;
960			reset-names = "i2c";
961			status = "disabled";
962		};
963
964		uartc: serial@c280000 {
965			compatible = "nvidia,tegra194-uart", "nvidia,tegra20-uart";
966			reg = <0x0c280000 0x40>;
967			reg-shift = <2>;
968			interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>;
969			clocks = <&bpmp TEGRA194_CLK_UARTC>;
970			clock-names = "serial";
971			resets = <&bpmp TEGRA194_RESET_UARTC>;
972			reset-names = "serial";
973			status = "disabled";
974		};
975
976		uartg: serial@c290000 {
977			compatible = "nvidia,tegra194-uart", "nvidia,tegra20-uart";
978			reg = <0x0c290000 0x40>;
979			reg-shift = <2>;
980			interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>;
981			clocks = <&bpmp TEGRA194_CLK_UARTG>;
982			clock-names = "serial";
983			resets = <&bpmp TEGRA194_RESET_UARTG>;
984			reset-names = "serial";
985			status = "disabled";
986		};
987
988		rtc: rtc@c2a0000 {
989			compatible = "nvidia,tegra194-rtc", "nvidia,tegra20-rtc";
990			reg = <0x0c2a0000 0x10000>;
991			interrupt-parent = <&pmc>;
992			interrupts = <73 IRQ_TYPE_LEVEL_HIGH>;
993			clocks = <&bpmp TEGRA194_CLK_CLK_32K>;
994			clock-names = "rtc";
995			status = "disabled";
996		};
997
998		gpio_aon: gpio@c2f0000 {
999			compatible = "nvidia,tegra194-gpio-aon";
1000			reg-names = "security", "gpio";
1001			reg = <0xc2f0000 0x1000>,
1002			      <0xc2f1000 0x1000>;
1003			interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>,
1004				     <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>,
1005				     <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>,
1006				     <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>;
1007			gpio-controller;
1008			#gpio-cells = <2>;
1009			interrupt-controller;
1010			#interrupt-cells = <2>;
1011		};
1012
1013		pwm4: pwm@c340000 {
1014			compatible = "nvidia,tegra194-pwm",
1015				     "nvidia,tegra186-pwm";
1016			reg = <0xc340000 0x10000>;
1017			clocks = <&bpmp TEGRA194_CLK_PWM4>;
1018			clock-names = "pwm";
1019			resets = <&bpmp TEGRA194_RESET_PWM4>;
1020			reset-names = "pwm";
1021			status = "disabled";
1022			#pwm-cells = <2>;
1023		};
1024
1025		pmc: pmc@c360000 {
1026			compatible = "nvidia,tegra194-pmc";
1027			reg = <0x0c360000 0x10000>,
1028			      <0x0c370000 0x10000>,
1029			      <0x0c380000 0x10000>,
1030			      <0x0c390000 0x10000>,
1031			      <0x0c3a0000 0x10000>;
1032			reg-names = "pmc", "wake", "aotag", "scratch", "misc";
1033
1034			#interrupt-cells = <2>;
1035			interrupt-controller;
1036		};
1037
1038		host1x@13e00000 {
1039			compatible = "nvidia,tegra194-host1x";
1040			reg = <0x13e00000 0x10000>,
1041			      <0x13e10000 0x10000>;
1042			reg-names = "hypervisor", "vm";
1043			interrupts = <GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH>,
1044				     <GIC_SPI 263 IRQ_TYPE_LEVEL_HIGH>;
1045			interrupt-names = "syncpt", "host1x";
1046			clocks = <&bpmp TEGRA194_CLK_HOST1X>;
1047			clock-names = "host1x";
1048			resets = <&bpmp TEGRA194_RESET_HOST1X>;
1049			reset-names = "host1x";
1050
1051			#address-cells = <1>;
1052			#size-cells = <1>;
1053
1054			ranges = <0x15000000 0x15000000 0x01000000>;
1055			interconnects = <&mc TEGRA194_MEMORY_CLIENT_HOST1XDMAR &emc>;
1056			interconnect-names = "dma-mem";
1057
1058			display-hub@15200000 {
1059				compatible = "nvidia,tegra194-display", "simple-bus";
1060				reg = <0x15200000 0x00040000>;
1061				resets = <&bpmp TEGRA194_RESET_NVDISPLAY0_MISC>,
1062					 <&bpmp TEGRA194_RESET_NVDISPLAY0_WGRP0>,
1063					 <&bpmp TEGRA194_RESET_NVDISPLAY0_WGRP1>,
1064					 <&bpmp TEGRA194_RESET_NVDISPLAY0_WGRP2>,
1065					 <&bpmp TEGRA194_RESET_NVDISPLAY0_WGRP3>,
1066					 <&bpmp TEGRA194_RESET_NVDISPLAY0_WGRP4>,
1067					 <&bpmp TEGRA194_RESET_NVDISPLAY0_WGRP5>;
1068				reset-names = "misc", "wgrp0", "wgrp1", "wgrp2",
1069					      "wgrp3", "wgrp4", "wgrp5";
1070				clocks = <&bpmp TEGRA194_CLK_NVDISPLAY_DISP>,
1071					 <&bpmp TEGRA194_CLK_NVDISPLAYHUB>;
1072				clock-names = "disp", "hub";
1073				status = "disabled";
1074
1075				power-domains = <&bpmp TEGRA194_POWER_DOMAIN_DISP>;
1076
1077				#address-cells = <1>;
1078				#size-cells = <1>;
1079
1080				ranges = <0x15200000 0x15200000 0x40000>;
1081
1082				display@15200000 {
1083					compatible = "nvidia,tegra194-dc";
1084					reg = <0x15200000 0x10000>;
1085					interrupts = <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>;
1086					clocks = <&bpmp TEGRA194_CLK_NVDISPLAY_P0>;
1087					clock-names = "dc";
1088					resets = <&bpmp TEGRA194_RESET_NVDISPLAY0_HEAD0>;
1089					reset-names = "dc";
1090
1091					power-domains = <&bpmp TEGRA194_POWER_DOMAIN_DISP>;
1092					interconnects = <&mc TEGRA194_MEMORY_CLIENT_NVDISPLAYR &emc>,
1093							<&mc TEGRA194_MEMORY_CLIENT_NVDISPLAYR1 &emc>;
1094					interconnect-names = "dma-mem", "read-1";
1095
1096					nvidia,outputs = <&sor0 &sor1 &sor2 &sor3>;
1097					nvidia,head = <0>;
1098				};
1099
1100				display@15210000 {
1101					compatible = "nvidia,tegra194-dc";
1102					reg = <0x15210000 0x10000>;
1103					interrupts = <GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>;
1104					clocks = <&bpmp TEGRA194_CLK_NVDISPLAY_P1>;
1105					clock-names = "dc";
1106					resets = <&bpmp TEGRA194_RESET_NVDISPLAY0_HEAD1>;
1107					reset-names = "dc";
1108
1109					power-domains = <&bpmp TEGRA194_POWER_DOMAIN_DISPB>;
1110					interconnects = <&mc TEGRA194_MEMORY_CLIENT_NVDISPLAYR &emc>,
1111							<&mc TEGRA194_MEMORY_CLIENT_NVDISPLAYR1 &emc>;
1112					interconnect-names = "dma-mem", "read-1";
1113
1114					nvidia,outputs = <&sor0 &sor1 &sor2 &sor3>;
1115					nvidia,head = <1>;
1116				};
1117
1118				display@15220000 {
1119					compatible = "nvidia,tegra194-dc";
1120					reg = <0x15220000 0x10000>;
1121					interrupts = <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>;
1122					clocks = <&bpmp TEGRA194_CLK_NVDISPLAY_P2>;
1123					clock-names = "dc";
1124					resets = <&bpmp TEGRA194_RESET_NVDISPLAY0_HEAD2>;
1125					reset-names = "dc";
1126
1127					power-domains = <&bpmp TEGRA194_POWER_DOMAIN_DISPC>;
1128					interconnects = <&mc TEGRA194_MEMORY_CLIENT_NVDISPLAYR &emc>,
1129							<&mc TEGRA194_MEMORY_CLIENT_NVDISPLAYR1 &emc>;
1130					interconnect-names = "dma-mem", "read-1";
1131
1132					nvidia,outputs = <&sor0 &sor1 &sor2 &sor3>;
1133					nvidia,head = <2>;
1134				};
1135
1136				display@15230000 {
1137					compatible = "nvidia,tegra194-dc";
1138					reg = <0x15230000 0x10000>;
1139					interrupts = <GIC_SPI 242 IRQ_TYPE_LEVEL_HIGH>;
1140					clocks = <&bpmp TEGRA194_CLK_NVDISPLAY_P3>;
1141					clock-names = "dc";
1142					resets = <&bpmp TEGRA194_RESET_NVDISPLAY0_HEAD3>;
1143					reset-names = "dc";
1144
1145					power-domains = <&bpmp TEGRA194_POWER_DOMAIN_DISPC>;
1146					interconnects = <&mc TEGRA194_MEMORY_CLIENT_NVDISPLAYR &emc>,
1147							<&mc TEGRA194_MEMORY_CLIENT_NVDISPLAYR1 &emc>;
1148					interconnect-names = "dma-mem", "read-1";
1149
1150					nvidia,outputs = <&sor0 &sor1 &sor2 &sor3>;
1151					nvidia,head = <3>;
1152				};
1153			};
1154
1155			vic@15340000 {
1156				compatible = "nvidia,tegra194-vic";
1157				reg = <0x15340000 0x00040000>;
1158				interrupts = <GIC_SPI 206 IRQ_TYPE_LEVEL_HIGH>;
1159				clocks = <&bpmp TEGRA194_CLK_VIC>;
1160				clock-names = "vic";
1161				resets = <&bpmp TEGRA194_RESET_VIC>;
1162				reset-names = "vic";
1163
1164				power-domains = <&bpmp TEGRA194_POWER_DOMAIN_VIC>;
1165				interconnects = <&mc TEGRA194_MEMORY_CLIENT_VICSRD &emc>,
1166						<&mc TEGRA194_MEMORY_CLIENT_VICSWR &emc>;
1167				interconnect-names = "dma-mem", "write";
1168			};
1169
1170			dpaux0: dpaux@155c0000 {
1171				compatible = "nvidia,tegra194-dpaux";
1172				reg = <0x155c0000 0x10000>;
1173				interrupts = <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>;
1174				clocks = <&bpmp TEGRA194_CLK_DPAUX>,
1175					 <&bpmp TEGRA194_CLK_PLLDP>;
1176				clock-names = "dpaux", "parent";
1177				resets = <&bpmp TEGRA194_RESET_DPAUX>;
1178				reset-names = "dpaux";
1179				status = "disabled";
1180
1181				power-domains = <&bpmp TEGRA194_POWER_DOMAIN_DISP>;
1182
1183				state_dpaux0_aux: pinmux-aux {
1184					groups = "dpaux-io";
1185					function = "aux";
1186				};
1187
1188				state_dpaux0_i2c: pinmux-i2c {
1189					groups = "dpaux-io";
1190					function = "i2c";
1191				};
1192
1193				state_dpaux0_off: pinmux-off {
1194					groups = "dpaux-io";
1195					function = "off";
1196				};
1197
1198				i2c-bus {
1199					#address-cells = <1>;
1200					#size-cells = <0>;
1201				};
1202			};
1203
1204			dpaux1: dpaux@155d0000 {
1205				compatible = "nvidia,tegra194-dpaux";
1206				reg = <0x155d0000 0x10000>;
1207				interrupts = <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>;
1208				clocks = <&bpmp TEGRA194_CLK_DPAUX1>,
1209					 <&bpmp TEGRA194_CLK_PLLDP>;
1210				clock-names = "dpaux", "parent";
1211				resets = <&bpmp TEGRA194_RESET_DPAUX1>;
1212				reset-names = "dpaux";
1213				status = "disabled";
1214
1215				power-domains = <&bpmp TEGRA194_POWER_DOMAIN_DISP>;
1216
1217				state_dpaux1_aux: pinmux-aux {
1218					groups = "dpaux-io";
1219					function = "aux";
1220				};
1221
1222				state_dpaux1_i2c: pinmux-i2c {
1223					groups = "dpaux-io";
1224					function = "i2c";
1225				};
1226
1227				state_dpaux1_off: pinmux-off {
1228					groups = "dpaux-io";
1229					function = "off";
1230				};
1231
1232				i2c-bus {
1233					#address-cells = <1>;
1234					#size-cells = <0>;
1235				};
1236			};
1237
1238			dpaux2: dpaux@155e0000 {
1239				compatible = "nvidia,tegra194-dpaux";
1240				reg = <0x155e0000 0x10000>;
1241				interrupts = <GIC_SPI 245 IRQ_TYPE_LEVEL_HIGH>;
1242				clocks = <&bpmp TEGRA194_CLK_DPAUX2>,
1243					 <&bpmp TEGRA194_CLK_PLLDP>;
1244				clock-names = "dpaux", "parent";
1245				resets = <&bpmp TEGRA194_RESET_DPAUX2>;
1246				reset-names = "dpaux";
1247				status = "disabled";
1248
1249				power-domains = <&bpmp TEGRA194_POWER_DOMAIN_DISP>;
1250
1251				state_dpaux2_aux: pinmux-aux {
1252					groups = "dpaux-io";
1253					function = "aux";
1254				};
1255
1256				state_dpaux2_i2c: pinmux-i2c {
1257					groups = "dpaux-io";
1258					function = "i2c";
1259				};
1260
1261				state_dpaux2_off: pinmux-off {
1262					groups = "dpaux-io";
1263					function = "off";
1264				};
1265
1266				i2c-bus {
1267					#address-cells = <1>;
1268					#size-cells = <0>;
1269				};
1270			};
1271
1272			dpaux3: dpaux@155f0000 {
1273				compatible = "nvidia,tegra194-dpaux";
1274				reg = <0x155f0000 0x10000>;
1275				interrupts = <GIC_SPI 246 IRQ_TYPE_LEVEL_HIGH>;
1276				clocks = <&bpmp TEGRA194_CLK_DPAUX3>,
1277					 <&bpmp TEGRA194_CLK_PLLDP>;
1278				clock-names = "dpaux", "parent";
1279				resets = <&bpmp TEGRA194_RESET_DPAUX3>;
1280				reset-names = "dpaux";
1281				status = "disabled";
1282
1283				power-domains = <&bpmp TEGRA194_POWER_DOMAIN_DISP>;
1284
1285				state_dpaux3_aux: pinmux-aux {
1286					groups = "dpaux-io";
1287					function = "aux";
1288				};
1289
1290				state_dpaux3_i2c: pinmux-i2c {
1291					groups = "dpaux-io";
1292					function = "i2c";
1293				};
1294
1295				state_dpaux3_off: pinmux-off {
1296					groups = "dpaux-io";
1297					function = "off";
1298				};
1299
1300				i2c-bus {
1301					#address-cells = <1>;
1302					#size-cells = <0>;
1303				};
1304			};
1305
1306			sor0: sor@15b00000 {
1307				compatible = "nvidia,tegra194-sor";
1308				reg = <0x15b00000 0x40000>;
1309				interrupts = <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>;
1310				clocks = <&bpmp TEGRA194_CLK_SOR0_REF>,
1311					 <&bpmp TEGRA194_CLK_SOR0_OUT>,
1312					 <&bpmp TEGRA194_CLK_PLLD>,
1313					 <&bpmp TEGRA194_CLK_PLLDP>,
1314					 <&bpmp TEGRA194_CLK_SOR_SAFE>,
1315					 <&bpmp TEGRA194_CLK_SOR0_PAD_CLKOUT>;
1316				clock-names = "sor", "out", "parent", "dp", "safe",
1317					      "pad";
1318				resets = <&bpmp TEGRA194_RESET_SOR0>;
1319				reset-names = "sor";
1320				pinctrl-0 = <&state_dpaux0_aux>;
1321				pinctrl-1 = <&state_dpaux0_i2c>;
1322				pinctrl-2 = <&state_dpaux0_off>;
1323				pinctrl-names = "aux", "i2c", "off";
1324				status = "disabled";
1325
1326				power-domains = <&bpmp TEGRA194_POWER_DOMAIN_DISP>;
1327				nvidia,interface = <0>;
1328			};
1329
1330			sor1: sor@15b40000 {
1331				compatible = "nvidia,tegra194-sor";
1332				reg = <0x15b40000 0x40000>;
1333				interrupts = <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>;
1334				clocks = <&bpmp TEGRA194_CLK_SOR1_REF>,
1335					 <&bpmp TEGRA194_CLK_SOR1_OUT>,
1336					 <&bpmp TEGRA194_CLK_PLLD2>,
1337					 <&bpmp TEGRA194_CLK_PLLDP>,
1338					 <&bpmp TEGRA194_CLK_SOR_SAFE>,
1339					 <&bpmp TEGRA194_CLK_SOR1_PAD_CLKOUT>;
1340				clock-names = "sor", "out", "parent", "dp", "safe",
1341					      "pad";
1342				resets = <&bpmp TEGRA194_RESET_SOR1>;
1343				reset-names = "sor";
1344				pinctrl-0 = <&state_dpaux1_aux>;
1345				pinctrl-1 = <&state_dpaux1_i2c>;
1346				pinctrl-2 = <&state_dpaux1_off>;
1347				pinctrl-names = "aux", "i2c", "off";
1348				status = "disabled";
1349
1350				power-domains = <&bpmp TEGRA194_POWER_DOMAIN_DISP>;
1351				nvidia,interface = <1>;
1352			};
1353
1354			sor2: sor@15b80000 {
1355				compatible = "nvidia,tegra194-sor";
1356				reg = <0x15b80000 0x40000>;
1357				interrupts = <GIC_SPI 243 IRQ_TYPE_LEVEL_HIGH>;
1358				clocks = <&bpmp TEGRA194_CLK_SOR2_REF>,
1359					 <&bpmp TEGRA194_CLK_SOR2_OUT>,
1360					 <&bpmp TEGRA194_CLK_PLLD3>,
1361					 <&bpmp TEGRA194_CLK_PLLDP>,
1362					 <&bpmp TEGRA194_CLK_SOR_SAFE>,
1363					 <&bpmp TEGRA194_CLK_SOR2_PAD_CLKOUT>;
1364				clock-names = "sor", "out", "parent", "dp", "safe",
1365					      "pad";
1366				resets = <&bpmp TEGRA194_RESET_SOR2>;
1367				reset-names = "sor";
1368				pinctrl-0 = <&state_dpaux2_aux>;
1369				pinctrl-1 = <&state_dpaux2_i2c>;
1370				pinctrl-2 = <&state_dpaux2_off>;
1371				pinctrl-names = "aux", "i2c", "off";
1372				status = "disabled";
1373
1374				power-domains = <&bpmp TEGRA194_POWER_DOMAIN_DISP>;
1375				nvidia,interface = <2>;
1376			};
1377
1378			sor3: sor@15bc0000 {
1379				compatible = "nvidia,tegra194-sor";
1380				reg = <0x15bc0000 0x40000>;
1381				interrupts = <GIC_SPI 244 IRQ_TYPE_LEVEL_HIGH>;
1382				clocks = <&bpmp TEGRA194_CLK_SOR3_REF>,
1383					 <&bpmp TEGRA194_CLK_SOR3_OUT>,
1384					 <&bpmp TEGRA194_CLK_PLLD4>,
1385					 <&bpmp TEGRA194_CLK_PLLDP>,
1386					 <&bpmp TEGRA194_CLK_SOR_SAFE>,
1387					 <&bpmp TEGRA194_CLK_SOR3_PAD_CLKOUT>;
1388				clock-names = "sor", "out", "parent", "dp", "safe",
1389					      "pad";
1390				resets = <&bpmp TEGRA194_RESET_SOR3>;
1391				reset-names = "sor";
1392				pinctrl-0 = <&state_dpaux3_aux>;
1393				pinctrl-1 = <&state_dpaux3_i2c>;
1394				pinctrl-2 = <&state_dpaux3_off>;
1395				pinctrl-names = "aux", "i2c", "off";
1396				status = "disabled";
1397
1398				power-domains = <&bpmp TEGRA194_POWER_DOMAIN_DISP>;
1399				nvidia,interface = <3>;
1400			};
1401		};
1402	};
1403
1404	pcie@14100000 {
1405		compatible = "nvidia,tegra194-pcie";
1406		power-domains = <&bpmp TEGRA194_POWER_DOMAIN_PCIEX1A>;
1407		reg = <0x00 0x14100000 0x0 0x00020000>, /* appl registers (128K)      */
1408		      <0x00 0x30000000 0x0 0x00040000>, /* configuration space (256K) */
1409		      <0x00 0x30040000 0x0 0x00040000>, /* iATU_DMA reg space (256K)  */
1410		      <0x00 0x30080000 0x0 0x00040000>; /* DBI reg space (256K)       */
1411		reg-names = "appl", "config", "atu_dma", "dbi";
1412
1413		status = "disabled";
1414
1415		#address-cells = <3>;
1416		#size-cells = <2>;
1417		device_type = "pci";
1418		num-lanes = <1>;
1419		num-viewport = <8>;
1420		linux,pci-domain = <1>;
1421
1422		clocks = <&bpmp TEGRA194_CLK_PEX0_CORE_1>;
1423		clock-names = "core";
1424
1425		resets = <&bpmp TEGRA194_RESET_PEX0_CORE_1_APB>,
1426			 <&bpmp TEGRA194_RESET_PEX0_CORE_1>;
1427		reset-names = "apb", "core";
1428
1429		interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>,	/* controller interrupt */
1430			     <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;	/* MSI interrupt */
1431		interrupt-names = "intr", "msi";
1432
1433		#interrupt-cells = <1>;
1434		interrupt-map-mask = <0 0 0 0>;
1435		interrupt-map = <0 0 0 0 &gic GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
1436
1437		nvidia,bpmp = <&bpmp 1>;
1438
1439		nvidia,aspm-cmrt-us = <60>;
1440		nvidia,aspm-pwr-on-t-us = <20>;
1441		nvidia,aspm-l0s-entrance-latency-us = <3>;
1442
1443		bus-range = <0x0 0xff>;
1444
1445		ranges = <0x01000000 0x0  0x30100000 0x0  0x30100000 0x0 0x00100000>, /* downstream I/O (1MB) */
1446			 <0x43000000 0x12 0x00000000 0x12 0x00000000 0x0 0x30000000>, /* prefetchable memory (768MB) */
1447			 <0x02000000 0x0  0x40000000 0x12 0x30000000 0x0 0x10000000>; /* non-prefetchable memory (256MB) */
1448
1449		interconnects = <&mc TEGRA194_MEMORY_CLIENT_PCIE1R &emc>,
1450				<&mc TEGRA194_MEMORY_CLIENT_PCIE1W &emc>;
1451		interconnect-names = "read", "write";
1452	};
1453
1454	pcie@14120000 {
1455		compatible = "nvidia,tegra194-pcie";
1456		power-domains = <&bpmp TEGRA194_POWER_DOMAIN_PCIEX1A>;
1457		reg = <0x00 0x14120000 0x0 0x00020000>, /* appl registers (128K)      */
1458		      <0x00 0x32000000 0x0 0x00040000>, /* configuration space (256K) */
1459		      <0x00 0x32040000 0x0 0x00040000>, /* iATU_DMA reg space (256K)  */
1460		      <0x00 0x32080000 0x0 0x00040000>; /* DBI reg space (256K)       */
1461		reg-names = "appl", "config", "atu_dma", "dbi";
1462
1463		status = "disabled";
1464
1465		#address-cells = <3>;
1466		#size-cells = <2>;
1467		device_type = "pci";
1468		num-lanes = <1>;
1469		num-viewport = <8>;
1470		linux,pci-domain = <2>;
1471
1472		clocks = <&bpmp TEGRA194_CLK_PEX0_CORE_2>;
1473		clock-names = "core";
1474
1475		resets = <&bpmp TEGRA194_RESET_PEX0_CORE_2_APB>,
1476			 <&bpmp TEGRA194_RESET_PEX0_CORE_2>;
1477		reset-names = "apb", "core";
1478
1479		interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>,	/* controller interrupt */
1480			     <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;	/* MSI interrupt */
1481		interrupt-names = "intr", "msi";
1482
1483		#interrupt-cells = <1>;
1484		interrupt-map-mask = <0 0 0 0>;
1485		interrupt-map = <0 0 0 0 &gic GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
1486
1487		nvidia,bpmp = <&bpmp 2>;
1488
1489		nvidia,aspm-cmrt-us = <60>;
1490		nvidia,aspm-pwr-on-t-us = <20>;
1491		nvidia,aspm-l0s-entrance-latency-us = <3>;
1492
1493		bus-range = <0x0 0xff>;
1494
1495		ranges = <0x01000000 0x0  0x32100000 0x0  0x32100000 0x0 0x00100000>, /* downstream I/O (1MB) */
1496			 <0x43000000 0x12 0x40000000 0x12 0x40000000 0x0 0x30000000>, /* prefetchable memory (768MB) */
1497			 <0x02000000 0x0  0x40000000 0x12 0x70000000 0x0 0x10000000>; /* non-prefetchable memory (256MB) */
1498
1499		interconnects = <&mc TEGRA194_MEMORY_CLIENT_PCIE2AR &emc>,
1500				<&mc TEGRA194_MEMORY_CLIENT_PCIE2AW &emc>;
1501		interconnect-names = "read", "write";
1502	};
1503
1504	pcie@14140000 {
1505		compatible = "nvidia,tegra194-pcie";
1506		power-domains = <&bpmp TEGRA194_POWER_DOMAIN_PCIEX1A>;
1507		reg = <0x00 0x14140000 0x0 0x00020000>, /* appl registers (128K)      */
1508		      <0x00 0x34000000 0x0 0x00040000>, /* configuration space (256K) */
1509		      <0x00 0x34040000 0x0 0x00040000>, /* iATU_DMA reg space (256K)  */
1510		      <0x00 0x34080000 0x0 0x00040000>; /* DBI reg space (256K)       */
1511		reg-names = "appl", "config", "atu_dma", "dbi";
1512
1513		status = "disabled";
1514
1515		#address-cells = <3>;
1516		#size-cells = <2>;
1517		device_type = "pci";
1518		num-lanes = <1>;
1519		num-viewport = <8>;
1520		linux,pci-domain = <3>;
1521
1522		clocks = <&bpmp TEGRA194_CLK_PEX0_CORE_3>;
1523		clock-names = "core";
1524
1525		resets = <&bpmp TEGRA194_RESET_PEX0_CORE_3_APB>,
1526			 <&bpmp TEGRA194_RESET_PEX0_CORE_3>;
1527		reset-names = "apb", "core";
1528
1529		interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>,	/* controller interrupt */
1530			     <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>;	/* MSI interrupt */
1531		interrupt-names = "intr", "msi";
1532
1533		#interrupt-cells = <1>;
1534		interrupt-map-mask = <0 0 0 0>;
1535		interrupt-map = <0 0 0 0 &gic GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
1536
1537		nvidia,bpmp = <&bpmp 3>;
1538
1539		nvidia,aspm-cmrt-us = <60>;
1540		nvidia,aspm-pwr-on-t-us = <20>;
1541		nvidia,aspm-l0s-entrance-latency-us = <3>;
1542
1543		bus-range = <0x0 0xff>;
1544
1545		ranges = <0x01000000 0x0  0x34100000 0x0  0x34100000 0x0 0x00100000>, /* downstream I/O (1MB) */
1546			 <0x43000000 0x12 0x80000000 0x12 0x80000000 0x0 0x30000000>, /* prefetchable memory (768MB) */
1547			 <0x02000000 0x0  0x40000000 0x12 0xb0000000 0x0 0x10000000>; /* non-prefetchable memory (256MB) */
1548
1549		interconnects = <&mc TEGRA194_MEMORY_CLIENT_PCIE3R &emc>,
1550				<&mc TEGRA194_MEMORY_CLIENT_PCIE3W &emc>;
1551		interconnect-names = "read", "write";
1552	};
1553
1554	pcie@14160000 {
1555		compatible = "nvidia,tegra194-pcie";
1556		power-domains = <&bpmp TEGRA194_POWER_DOMAIN_PCIEX4A>;
1557		reg = <0x00 0x14160000 0x0 0x00020000>, /* appl registers (128K)      */
1558		      <0x00 0x36000000 0x0 0x00040000>, /* configuration space (256K) */
1559		      <0x00 0x36040000 0x0 0x00040000>, /* iATU_DMA reg space (256K)  */
1560		      <0x00 0x36080000 0x0 0x00040000>; /* DBI reg space (256K)       */
1561		reg-names = "appl", "config", "atu_dma", "dbi";
1562
1563		status = "disabled";
1564
1565		#address-cells = <3>;
1566		#size-cells = <2>;
1567		device_type = "pci";
1568		num-lanes = <4>;
1569		num-viewport = <8>;
1570		linux,pci-domain = <4>;
1571
1572		clocks = <&bpmp TEGRA194_CLK_PEX0_CORE_4>;
1573		clock-names = "core";
1574
1575		resets = <&bpmp TEGRA194_RESET_PEX0_CORE_4_APB>,
1576			 <&bpmp TEGRA194_RESET_PEX0_CORE_4>;
1577		reset-names = "apb", "core";
1578
1579		interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>,	/* controller interrupt */
1580			     <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;	/* MSI interrupt */
1581		interrupt-names = "intr", "msi";
1582
1583		#interrupt-cells = <1>;
1584		interrupt-map-mask = <0 0 0 0>;
1585		interrupt-map = <0 0 0 0 &gic GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>;
1586
1587		nvidia,bpmp = <&bpmp 4>;
1588
1589		nvidia,aspm-cmrt-us = <60>;
1590		nvidia,aspm-pwr-on-t-us = <20>;
1591		nvidia,aspm-l0s-entrance-latency-us = <3>;
1592
1593		bus-range = <0x0 0xff>;
1594
1595		ranges = <0x01000000 0x0  0x36100000 0x0  0x36100000 0x0 0x00100000>, /* downstream I/O (1MB) */
1596			 <0x43000000 0x14 0x00000000 0x14 0x00000000 0x3 0x40000000>, /* prefetchable memory (13GB) */
1597			 <0x02000000 0x0  0x40000000 0x17 0x40000000 0x0 0xc0000000>; /* non-prefetchable memory (3GB) */
1598
1599		interconnects = <&mc TEGRA194_MEMORY_CLIENT_PCIE4R &emc>,
1600				<&mc TEGRA194_MEMORY_CLIENT_PCIE4W &emc>;
1601		interconnect-names = "read", "write";
1602	};
1603
1604	pcie@14180000 {
1605		compatible = "nvidia,tegra194-pcie";
1606		power-domains = <&bpmp TEGRA194_POWER_DOMAIN_PCIEX8B>;
1607		reg = <0x00 0x14180000 0x0 0x00020000>, /* appl registers (128K)      */
1608		      <0x00 0x38000000 0x0 0x00040000>, /* configuration space (256K) */
1609		      <0x00 0x38040000 0x0 0x00040000>, /* iATU_DMA reg space (256K)  */
1610		      <0x00 0x38080000 0x0 0x00040000>; /* DBI reg space (256K)       */
1611		reg-names = "appl", "config", "atu_dma", "dbi";
1612
1613		status = "disabled";
1614
1615		#address-cells = <3>;
1616		#size-cells = <2>;
1617		device_type = "pci";
1618		num-lanes = <8>;
1619		num-viewport = <8>;
1620		linux,pci-domain = <0>;
1621
1622		clocks = <&bpmp TEGRA194_CLK_PEX0_CORE_0>;
1623		clock-names = "core";
1624
1625		resets = <&bpmp TEGRA194_RESET_PEX0_CORE_0_APB>,
1626			 <&bpmp TEGRA194_RESET_PEX0_CORE_0>;
1627		reset-names = "apb", "core";
1628
1629		interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>,	/* controller interrupt */
1630			     <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;	/* MSI interrupt */
1631		interrupt-names = "intr", "msi";
1632
1633		#interrupt-cells = <1>;
1634		interrupt-map-mask = <0 0 0 0>;
1635		interrupt-map = <0 0 0 0 &gic GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
1636
1637		nvidia,bpmp = <&bpmp 0>;
1638
1639		nvidia,aspm-cmrt-us = <60>;
1640		nvidia,aspm-pwr-on-t-us = <20>;
1641		nvidia,aspm-l0s-entrance-latency-us = <3>;
1642
1643		bus-range = <0x0 0xff>;
1644
1645		ranges = <0x01000000 0x0  0x38100000 0x0  0x38100000 0x0 0x00100000>, /* downstream I/O (1MB) */
1646			 <0x43000000 0x18 0x00000000 0x18 0x00000000 0x3 0x40000000>, /* prefetchable memory (13GB) */
1647			 <0x02000000 0x0  0x40000000 0x1b 0x40000000 0x0 0xc0000000>; /* non-prefetchable memory (3GB) */
1648
1649		interconnects = <&mc TEGRA194_MEMORY_CLIENT_PCIE0R &emc>,
1650				<&mc TEGRA194_MEMORY_CLIENT_PCIE0W &emc>;
1651		interconnect-names = "read", "write";
1652	};
1653
1654	pcie@141a0000 {
1655		compatible = "nvidia,tegra194-pcie";
1656		power-domains = <&bpmp TEGRA194_POWER_DOMAIN_PCIEX8A>;
1657		reg = <0x00 0x141a0000 0x0 0x00020000>, /* appl registers (128K)      */
1658		      <0x00 0x3a000000 0x0 0x00040000>, /* configuration space (256K) */
1659		      <0x00 0x3a040000 0x0 0x00040000>, /* iATU_DMA reg space (256K)  */
1660		      <0x00 0x3a080000 0x0 0x00040000>; /* DBI reg space (256K)       */
1661		reg-names = "appl", "config", "atu_dma", "dbi";
1662
1663		status = "disabled";
1664
1665		#address-cells = <3>;
1666		#size-cells = <2>;
1667		device_type = "pci";
1668		num-lanes = <8>;
1669		num-viewport = <8>;
1670		linux,pci-domain = <5>;
1671
1672		pinctrl-names = "default";
1673		pinctrl-0 = <&pex_rst_c5_out_state>, <&clkreq_c5_bi_dir_state>;
1674
1675		clocks = <&bpmp TEGRA194_CLK_PEX1_CORE_5>,
1676			<&bpmp TEGRA194_CLK_PEX1_CORE_5M>;
1677		clock-names = "core", "core_m";
1678
1679		resets = <&bpmp TEGRA194_RESET_PEX1_CORE_5_APB>,
1680			 <&bpmp TEGRA194_RESET_PEX1_CORE_5>;
1681		reset-names = "apb", "core";
1682
1683		interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>,	/* controller interrupt */
1684			     <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>;	/* MSI interrupt */
1685		interrupt-names = "intr", "msi";
1686
1687		nvidia,bpmp = <&bpmp 5>;
1688
1689		#interrupt-cells = <1>;
1690		interrupt-map-mask = <0 0 0 0>;
1691		interrupt-map = <0 0 0 0 &gic GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
1692
1693		nvidia,aspm-cmrt-us = <60>;
1694		nvidia,aspm-pwr-on-t-us = <20>;
1695		nvidia,aspm-l0s-entrance-latency-us = <3>;
1696
1697		bus-range = <0x0 0xff>;
1698
1699		ranges = <0x01000000 0x0  0x3a100000 0x0  0x3a100000 0x0 0x00100000>, /* downstream I/O (1MB) */
1700			 <0x43000000 0x1c 0x00000000 0x1c 0x00000000 0x3 0x40000000>, /* prefetchable memory (13GB) */
1701			 <0x02000000 0x0  0x40000000 0x1f 0x40000000 0x0 0xc0000000>; /* non-prefetchable memory (3GB) */
1702
1703		interconnects = <&mc TEGRA194_MEMORY_CLIENT_PCIE5R &emc>,
1704				<&mc TEGRA194_MEMORY_CLIENT_PCIE5W &emc>;
1705		interconnect-names = "read", "write";
1706	};
1707
1708	pcie_ep@14160000 {
1709		compatible = "nvidia,tegra194-pcie-ep", "snps,dw-pcie-ep";
1710		power-domains = <&bpmp TEGRA194_POWER_DOMAIN_PCIEX4A>;
1711		reg = <0x00 0x14160000 0x0 0x00020000>, /* appl registers (128K)      */
1712		      <0x00 0x36040000 0x0 0x00040000>, /* iATU_DMA reg space (256K)  */
1713		      <0x00 0x36080000 0x0 0x00040000>, /* DBI reg space (256K)       */
1714		      <0x14 0x00000000 0x4 0x00000000>; /* Address Space (16G)        */
1715		reg-names = "appl", "atu_dma", "dbi", "addr_space";
1716
1717		status = "disabled";
1718
1719		num-lanes = <4>;
1720		num-ib-windows = <2>;
1721		num-ob-windows = <8>;
1722
1723		clocks = <&bpmp TEGRA194_CLK_PEX0_CORE_4>;
1724		clock-names = "core";
1725
1726		resets = <&bpmp TEGRA194_RESET_PEX0_CORE_4_APB>,
1727			 <&bpmp TEGRA194_RESET_PEX0_CORE_4>;
1728		reset-names = "apb", "core";
1729
1730		interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>;	/* controller interrupt */
1731		interrupt-names = "intr";
1732
1733		nvidia,bpmp = <&bpmp 4>;
1734
1735		nvidia,aspm-cmrt-us = <60>;
1736		nvidia,aspm-pwr-on-t-us = <20>;
1737		nvidia,aspm-l0s-entrance-latency-us = <3>;
1738	};
1739
1740	pcie_ep@14180000 {
1741		compatible = "nvidia,tegra194-pcie-ep", "snps,dw-pcie-ep";
1742		power-domains = <&bpmp TEGRA194_POWER_DOMAIN_PCIEX8B>;
1743		reg = <0x00 0x14180000 0x0 0x00020000>, /* appl registers (128K)      */
1744		      <0x00 0x38040000 0x0 0x00040000>, /* iATU_DMA reg space (256K)  */
1745		      <0x00 0x38080000 0x0 0x00040000>, /* DBI reg space (256K)       */
1746		      <0x18 0x00000000 0x4 0x00000000>; /* Address Space (16G)        */
1747		reg-names = "appl", "atu_dma", "dbi", "addr_space";
1748
1749		status = "disabled";
1750
1751		num-lanes = <8>;
1752		num-ib-windows = <2>;
1753		num-ob-windows = <8>;
1754
1755		clocks = <&bpmp TEGRA194_CLK_PEX0_CORE_0>;
1756		clock-names = "core";
1757
1758		resets = <&bpmp TEGRA194_RESET_PEX0_CORE_0_APB>,
1759			 <&bpmp TEGRA194_RESET_PEX0_CORE_0>;
1760		reset-names = "apb", "core";
1761
1762		interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;	/* controller interrupt */
1763		interrupt-names = "intr";
1764
1765		nvidia,bpmp = <&bpmp 0>;
1766
1767		nvidia,aspm-cmrt-us = <60>;
1768		nvidia,aspm-pwr-on-t-us = <20>;
1769		nvidia,aspm-l0s-entrance-latency-us = <3>;
1770	};
1771
1772	pcie_ep@141a0000 {
1773		compatible = "nvidia,tegra194-pcie-ep", "snps,dw-pcie-ep";
1774		power-domains = <&bpmp TEGRA194_POWER_DOMAIN_PCIEX8A>;
1775		reg = <0x00 0x141a0000 0x0 0x00020000>, /* appl registers (128K)      */
1776		      <0x00 0x3a040000 0x0 0x00040000>, /* iATU_DMA reg space (256K)  */
1777		      <0x00 0x3a080000 0x0 0x00040000>, /* DBI reg space (256K)       */
1778		      <0x1c 0x00000000 0x4 0x00000000>; /* Address Space (16G)        */
1779		reg-names = "appl", "atu_dma", "dbi", "addr_space";
1780
1781		status = "disabled";
1782
1783		num-lanes = <8>;
1784		num-ib-windows = <2>;
1785		num-ob-windows = <8>;
1786
1787		pinctrl-names = "default";
1788		pinctrl-0 = <&clkreq_c5_bi_dir_state>;
1789
1790		clocks = <&bpmp TEGRA194_CLK_PEX1_CORE_5>;
1791		clock-names = "core";
1792
1793		resets = <&bpmp TEGRA194_RESET_PEX1_CORE_5_APB>,
1794			 <&bpmp TEGRA194_RESET_PEX1_CORE_5>;
1795		reset-names = "apb", "core";
1796
1797		interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;	/* controller interrupt */
1798		interrupt-names = "intr";
1799
1800		nvidia,bpmp = <&bpmp 5>;
1801
1802		nvidia,aspm-cmrt-us = <60>;
1803		nvidia,aspm-pwr-on-t-us = <20>;
1804		nvidia,aspm-l0s-entrance-latency-us = <3>;
1805	};
1806
1807	sysram@40000000 {
1808		compatible = "nvidia,tegra194-sysram", "mmio-sram";
1809		reg = <0x0 0x40000000 0x0 0x50000>;
1810		#address-cells = <1>;
1811		#size-cells = <1>;
1812		ranges = <0x0 0x0 0x40000000 0x50000>;
1813
1814		cpu_bpmp_tx: shmem@4e000 {
1815			compatible = "nvidia,tegra194-bpmp-shmem";
1816			reg = <0x4e000 0x1000>;
1817			label = "cpu-bpmp-tx";
1818			pool;
1819		};
1820
1821		cpu_bpmp_rx: shmem@4f000 {
1822			compatible = "nvidia,tegra194-bpmp-shmem";
1823			reg = <0x4f000 0x1000>;
1824			label = "cpu-bpmp-rx";
1825			pool;
1826		};
1827	};
1828
1829	bpmp: bpmp {
1830		compatible = "nvidia,tegra186-bpmp";
1831		mboxes = <&hsp_top0 TEGRA_HSP_MBOX_TYPE_DB
1832				    TEGRA_HSP_DB_MASTER_BPMP>;
1833		shmem = <&cpu_bpmp_tx &cpu_bpmp_rx>;
1834		#clock-cells = <1>;
1835		#reset-cells = <1>;
1836		#power-domain-cells = <1>;
1837		interconnects = <&mc TEGRA194_MEMORY_CLIENT_BPMPR &emc>,
1838				<&mc TEGRA194_MEMORY_CLIENT_BPMPW &emc>,
1839				<&mc TEGRA194_MEMORY_CLIENT_BPMPDMAR &emc>,
1840				<&mc TEGRA194_MEMORY_CLIENT_BPMPDMAW &emc>;
1841		interconnect-names = "read", "write", "dma-mem", "dma-write";
1842
1843		bpmp_i2c: i2c {
1844			compatible = "nvidia,tegra186-bpmp-i2c";
1845			nvidia,bpmp-bus-id = <5>;
1846			#address-cells = <1>;
1847			#size-cells = <0>;
1848		};
1849
1850		bpmp_thermal: thermal {
1851			compatible = "nvidia,tegra186-bpmp-thermal";
1852			#thermal-sensor-cells = <1>;
1853		};
1854	};
1855
1856	cpus {
1857		#address-cells = <1>;
1858		#size-cells = <0>;
1859
1860		cpu0_0: cpu@0 {
1861			compatible = "nvidia,tegra194-carmel";
1862			device_type = "cpu";
1863			reg = <0x000>;
1864			enable-method = "psci";
1865			i-cache-size = <131072>;
1866			i-cache-line-size = <64>;
1867			i-cache-sets = <512>;
1868			d-cache-size = <65536>;
1869			d-cache-line-size = <64>;
1870			d-cache-sets = <256>;
1871			next-level-cache = <&l2c_0>;
1872		};
1873
1874		cpu0_1: cpu@1 {
1875			compatible = "nvidia,tegra194-carmel";
1876			device_type = "cpu";
1877			reg = <0x001>;
1878			enable-method = "psci";
1879			i-cache-size = <131072>;
1880			i-cache-line-size = <64>;
1881			i-cache-sets = <512>;
1882			d-cache-size = <65536>;
1883			d-cache-line-size = <64>;
1884			d-cache-sets = <256>;
1885			next-level-cache = <&l2c_0>;
1886		};
1887
1888		cpu1_0: cpu@100 {
1889			compatible = "nvidia,tegra194-carmel";
1890			device_type = "cpu";
1891			reg = <0x100>;
1892			enable-method = "psci";
1893			i-cache-size = <131072>;
1894			i-cache-line-size = <64>;
1895			i-cache-sets = <512>;
1896			d-cache-size = <65536>;
1897			d-cache-line-size = <64>;
1898			d-cache-sets = <256>;
1899			next-level-cache = <&l2c_1>;
1900		};
1901
1902		cpu1_1: cpu@101 {
1903			compatible = "nvidia,tegra194-carmel";
1904			device_type = "cpu";
1905			reg = <0x101>;
1906			enable-method = "psci";
1907			i-cache-size = <131072>;
1908			i-cache-line-size = <64>;
1909			i-cache-sets = <512>;
1910			d-cache-size = <65536>;
1911			d-cache-line-size = <64>;
1912			d-cache-sets = <256>;
1913			next-level-cache = <&l2c_1>;
1914		};
1915
1916		cpu2_0: cpu@200 {
1917			compatible = "nvidia,tegra194-carmel";
1918			device_type = "cpu";
1919			reg = <0x200>;
1920			enable-method = "psci";
1921			i-cache-size = <131072>;
1922			i-cache-line-size = <64>;
1923			i-cache-sets = <512>;
1924			d-cache-size = <65536>;
1925			d-cache-line-size = <64>;
1926			d-cache-sets = <256>;
1927			next-level-cache = <&l2c_2>;
1928		};
1929
1930		cpu2_1: cpu@201 {
1931			compatible = "nvidia,tegra194-carmel";
1932			device_type = "cpu";
1933			reg = <0x201>;
1934			enable-method = "psci";
1935			i-cache-size = <131072>;
1936			i-cache-line-size = <64>;
1937			i-cache-sets = <512>;
1938			d-cache-size = <65536>;
1939			d-cache-line-size = <64>;
1940			d-cache-sets = <256>;
1941			next-level-cache = <&l2c_2>;
1942		};
1943
1944		cpu3_0: cpu@300 {
1945			compatible = "nvidia,tegra194-carmel";
1946			device_type = "cpu";
1947			reg = <0x300>;
1948			enable-method = "psci";
1949			i-cache-size = <131072>;
1950			i-cache-line-size = <64>;
1951			i-cache-sets = <512>;
1952			d-cache-size = <65536>;
1953			d-cache-line-size = <64>;
1954			d-cache-sets = <256>;
1955			next-level-cache = <&l2c_3>;
1956		};
1957
1958		cpu3_1: cpu@301 {
1959			compatible = "nvidia,tegra194-carmel";
1960			device_type = "cpu";
1961			reg = <0x301>;
1962			enable-method = "psci";
1963			i-cache-size = <131072>;
1964			i-cache-line-size = <64>;
1965			i-cache-sets = <512>;
1966			d-cache-size = <65536>;
1967			d-cache-line-size = <64>;
1968			d-cache-sets = <256>;
1969			next-level-cache = <&l2c_3>;
1970		};
1971
1972		cpu-map {
1973			cluster0 {
1974				core0 {
1975					cpu = <&cpu0_0>;
1976				};
1977
1978				core1 {
1979					cpu = <&cpu0_1>;
1980				};
1981			};
1982
1983			cluster1 {
1984				core0 {
1985					cpu = <&cpu1_0>;
1986				};
1987
1988				core1 {
1989					cpu = <&cpu1_1>;
1990				};
1991			};
1992
1993			cluster2 {
1994				core0 {
1995					cpu = <&cpu2_0>;
1996				};
1997
1998				core1 {
1999					cpu = <&cpu2_1>;
2000				};
2001			};
2002
2003			cluster3 {
2004				core0 {
2005					cpu = <&cpu3_0>;
2006				};
2007
2008				core1 {
2009					cpu = <&cpu3_1>;
2010				};
2011			};
2012		};
2013
2014		l2c_0: l2-cache0 {
2015			cache-size = <2097152>;
2016			cache-line-size = <64>;
2017			cache-sets = <2048>;
2018			next-level-cache = <&l3c>;
2019		};
2020
2021		l2c_1: l2-cache1 {
2022			cache-size = <2097152>;
2023			cache-line-size = <64>;
2024			cache-sets = <2048>;
2025			next-level-cache = <&l3c>;
2026		};
2027
2028		l2c_2: l2-cache2 {
2029			cache-size = <2097152>;
2030			cache-line-size = <64>;
2031			cache-sets = <2048>;
2032			next-level-cache = <&l3c>;
2033		};
2034
2035		l2c_3: l2-cache3 {
2036			cache-size = <2097152>;
2037			cache-line-size = <64>;
2038			cache-sets = <2048>;
2039			next-level-cache = <&l3c>;
2040		};
2041
2042		l3c: l3-cache {
2043			cache-size = <4194304>;
2044			cache-line-size = <64>;
2045			cache-sets = <4096>;
2046		};
2047	};
2048
2049	psci {
2050		compatible = "arm,psci-1.0";
2051		status = "okay";
2052		method = "smc";
2053	};
2054
2055	tcu: tcu {
2056		compatible = "nvidia,tegra194-tcu";
2057		mboxes = <&hsp_top0 TEGRA_HSP_MBOX_TYPE_SM TEGRA_HSP_SM_RX(0)>,
2058		         <&hsp_aon TEGRA_HSP_MBOX_TYPE_SM TEGRA_HSP_SM_TX(1)>;
2059		mbox-names = "rx", "tx";
2060	};
2061
2062	thermal-zones {
2063		cpu {
2064			thermal-sensors = <&{/bpmp/thermal}
2065					   TEGRA194_BPMP_THERMAL_ZONE_CPU>;
2066			status = "disabled";
2067		};
2068
2069		gpu {
2070			thermal-sensors = <&{/bpmp/thermal}
2071					   TEGRA194_BPMP_THERMAL_ZONE_GPU>;
2072			status = "disabled";
2073		};
2074
2075		aux {
2076			thermal-sensors = <&{/bpmp/thermal}
2077					   TEGRA194_BPMP_THERMAL_ZONE_AUX>;
2078			status = "disabled";
2079		};
2080
2081		pllx {
2082			thermal-sensors = <&{/bpmp/thermal}
2083					   TEGRA194_BPMP_THERMAL_ZONE_PLLX>;
2084			status = "disabled";
2085		};
2086
2087		ao {
2088			thermal-sensors = <&{/bpmp/thermal}
2089					   TEGRA194_BPMP_THERMAL_ZONE_AO>;
2090			status = "disabled";
2091		};
2092
2093		tj {
2094			thermal-sensors = <&{/bpmp/thermal}
2095					   TEGRA194_BPMP_THERMAL_ZONE_TJ_MAX>;
2096			status = "disabled";
2097		};
2098	};
2099
2100	timer {
2101		compatible = "arm,armv8-timer";
2102		interrupts = <GIC_PPI 13
2103				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
2104			     <GIC_PPI 14
2105				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
2106			     <GIC_PPI 11
2107				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
2108			     <GIC_PPI 10
2109				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
2110		interrupt-parent = <&gic>;
2111		always-on;
2112	};
2113};
2114