1b2441318SGreg Kroah-Hartman// SPDX-License-Identifier: GPL-2.0
2c58f5f88SThierry Reding#include <dt-bindings/clock/tegra186-clock.h>
3fc4bb754SThierry Reding#include <dt-bindings/gpio/tegra186-gpio.h>
439cb62cbSJoseph Lo#include <dt-bindings/interrupt-controller/arm-gic.h>
55edcebb9SThierry Reding#include <dt-bindings/mailbox/tegra186-hsp.h>
6d25a3bf1SThierry Reding#include <dt-bindings/memory/tegra186-mc.h>
724005fd1SAapo Vienamo#include <dt-bindings/pinctrl/pinctrl-tegra-io-pad.h>
8dfd7a384SAlexandre Courbot#include <dt-bindings/power/tegra186-powergate.h>
97bcf2664SThierry Reding#include <dt-bindings/reset/tegra186-reset.h>
1015274c23SMikko Perttunen#include <dt-bindings/thermal/tegra186-bpmp-thermal.h>
1139cb62cbSJoseph Lo
1239cb62cbSJoseph Lo/ {
1339cb62cbSJoseph Lo	compatible = "nvidia,tegra186";
1439cb62cbSJoseph Lo	interrupt-parent = <&gic>;
1539cb62cbSJoseph Lo	#address-cells = <2>;
1639cb62cbSJoseph Lo	#size-cells = <2>;
1739cb62cbSJoseph Lo
1894e25dc3SThierry Reding	misc@100000 {
1994e25dc3SThierry Reding		compatible = "nvidia,tegra186-misc";
2094e25dc3SThierry Reding		reg = <0x0 0x00100000 0x0 0xf000>,
2194e25dc3SThierry Reding		      <0x0 0x0010f000 0x0 0x1000>;
2294e25dc3SThierry Reding	};
2394e25dc3SThierry Reding
24fc4bb754SThierry Reding	gpio: gpio@2200000 {
25fc4bb754SThierry Reding		compatible = "nvidia,tegra186-gpio";
26fc4bb754SThierry Reding		reg-names = "security", "gpio";
27fc4bb754SThierry Reding		reg = <0x0 0x2200000 0x0 0x10000>,
28fc4bb754SThierry Reding		      <0x0 0x2210000 0x0 0x10000>;
29fc4bb754SThierry Reding		interrupts = <GIC_SPI  47 IRQ_TYPE_LEVEL_HIGH>,
30fc4bb754SThierry Reding			     <GIC_SPI  50 IRQ_TYPE_LEVEL_HIGH>,
31fc4bb754SThierry Reding			     <GIC_SPI  53 IRQ_TYPE_LEVEL_HIGH>,
32fc4bb754SThierry Reding			     <GIC_SPI  56 IRQ_TYPE_LEVEL_HIGH>,
33fc4bb754SThierry Reding			     <GIC_SPI  59 IRQ_TYPE_LEVEL_HIGH>,
34fc4bb754SThierry Reding			     <GIC_SPI 180 IRQ_TYPE_LEVEL_HIGH>;
35fc4bb754SThierry Reding		#interrupt-cells = <2>;
36fc4bb754SThierry Reding		interrupt-controller;
37fc4bb754SThierry Reding		#gpio-cells = <2>;
38fc4bb754SThierry Reding		gpio-controller;
39fc4bb754SThierry Reding	};
40fc4bb754SThierry Reding
410caafbdeSThierry Reding	ethernet@2490000 {
420caafbdeSThierry Reding		compatible = "nvidia,tegra186-eqos",
430caafbdeSThierry Reding			     "snps,dwc-qos-ethernet-4.10";
440caafbdeSThierry Reding		reg = <0x0 0x02490000 0x0 0x10000>;
450caafbdeSThierry Reding		interrupts = <GIC_SPI 194 IRQ_TYPE_LEVEL_HIGH>, /* common */
460caafbdeSThierry Reding			     <GIC_SPI 195 IRQ_TYPE_LEVEL_HIGH>, /* power */
470caafbdeSThierry Reding			     <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>, /* rx0 */
480caafbdeSThierry Reding			     <GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>, /* tx0 */
490caafbdeSThierry Reding			     <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>, /* rx1 */
500caafbdeSThierry Reding			     <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>, /* tx1 */
510caafbdeSThierry Reding			     <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>, /* rx2 */
520caafbdeSThierry Reding			     <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>, /* tx2 */
530caafbdeSThierry Reding			     <GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>, /* rx3 */
540caafbdeSThierry Reding			     <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>; /* tx3 */
550caafbdeSThierry Reding		clocks = <&bpmp TEGRA186_CLK_AXI_CBB>,
560caafbdeSThierry Reding			 <&bpmp TEGRA186_CLK_EQOS_AXI>,
570caafbdeSThierry Reding			 <&bpmp TEGRA186_CLK_EQOS_RX>,
580caafbdeSThierry Reding			 <&bpmp TEGRA186_CLK_EQOS_TX>,
590caafbdeSThierry Reding			 <&bpmp TEGRA186_CLK_EQOS_PTP_REF>;
600caafbdeSThierry Reding		clock-names = "master_bus", "slave_bus", "rx", "tx", "ptp_ref";
610caafbdeSThierry Reding		resets = <&bpmp TEGRA186_RESET_EQOS>;
620caafbdeSThierry Reding		reset-names = "eqos";
63954490b3SThierry Reding		interconnects = <&mc TEGRA186_MEMORY_CLIENT_EQOSR &emc>,
64954490b3SThierry Reding				<&mc TEGRA186_MEMORY_CLIENT_EQOSW &emc>;
65954490b3SThierry Reding		interconnect-names = "dma-mem", "write";
66dfdbf16cSJonathan Hunter		iommus = <&smmu TEGRA186_SID_EQOS>;
670caafbdeSThierry Reding		status = "disabled";
680caafbdeSThierry Reding
690caafbdeSThierry Reding		snps,write-requests = <1>;
700caafbdeSThierry Reding		snps,read-requests = <3>;
710caafbdeSThierry Reding		snps,burst-map = <0x7>;
720caafbdeSThierry Reding		snps,txpbl = <32>;
730caafbdeSThierry Reding		snps,rxpbl = <8>;
740caafbdeSThierry Reding	};
750caafbdeSThierry Reding
764b154b94SThierry Reding	aconnect@2900000 {
775d2249ddSSameer Pujar		compatible = "nvidia,tegra186-aconnect",
785d2249ddSSameer Pujar			     "nvidia,tegra210-aconnect";
795d2249ddSSameer Pujar		clocks = <&bpmp TEGRA186_CLK_APE>,
805d2249ddSSameer Pujar			 <&bpmp TEGRA186_CLK_APB2APE>;
815d2249ddSSameer Pujar		clock-names = "ape", "apb2ape";
825d2249ddSSameer Pujar		power-domains = <&bpmp TEGRA186_POWER_DOMAIN_AUD>;
835d2249ddSSameer Pujar		#address-cells = <1>;
845d2249ddSSameer Pujar		#size-cells = <1>;
855d2249ddSSameer Pujar		ranges = <0x02900000 0x0 0x02900000 0x200000>;
865d2249ddSSameer Pujar		status = "disabled";
875d2249ddSSameer Pujar
88177208f7SSameer Pujar		adma: dma-controller@2930000 {
895d2249ddSSameer Pujar			compatible = "nvidia,tegra186-adma";
905d2249ddSSameer Pujar			reg = <0x02930000 0x20000>;
915d2249ddSSameer Pujar			interrupt-parent = <&agic>;
925d2249ddSSameer Pujar			interrupts =  <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
935d2249ddSSameer Pujar				      <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>,
945d2249ddSSameer Pujar				      <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>,
955d2249ddSSameer Pujar				      <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>,
965d2249ddSSameer Pujar				      <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
975d2249ddSSameer Pujar				      <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>,
985d2249ddSSameer Pujar				      <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
995d2249ddSSameer Pujar				      <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>,
1005d2249ddSSameer Pujar				      <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
1015d2249ddSSameer Pujar				      <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
1025d2249ddSSameer Pujar				      <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>,
1035d2249ddSSameer Pujar				      <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>,
1045d2249ddSSameer Pujar				      <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
1055d2249ddSSameer Pujar				      <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>,
1065d2249ddSSameer Pujar				      <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>,
1075d2249ddSSameer Pujar				      <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>,
1085d2249ddSSameer Pujar				      <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>,
1095d2249ddSSameer Pujar				      <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>,
1105d2249ddSSameer Pujar				      <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>,
1115d2249ddSSameer Pujar				      <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>,
1125d2249ddSSameer Pujar				      <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>,
1135d2249ddSSameer Pujar				      <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>,
1145d2249ddSSameer Pujar				      <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>,
1155d2249ddSSameer Pujar				      <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>,
1165d2249ddSSameer Pujar				      <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>,
1175d2249ddSSameer Pujar				      <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>,
1185d2249ddSSameer Pujar				      <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>,
1195d2249ddSSameer Pujar				      <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>,
1205d2249ddSSameer Pujar				      <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>,
1215d2249ddSSameer Pujar				      <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>,
1225d2249ddSSameer Pujar				      <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>,
1235d2249ddSSameer Pujar				      <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
1245d2249ddSSameer Pujar			#dma-cells = <1>;
1255d2249ddSSameer Pujar			clocks = <&bpmp TEGRA186_CLK_AHUB>;
1265d2249ddSSameer Pujar			clock-names = "d_audio";
1275d2249ddSSameer Pujar			status = "disabled";
1285d2249ddSSameer Pujar		};
1295d2249ddSSameer Pujar
1305d2249ddSSameer Pujar		agic: interrupt-controller@2a40000 {
1315d2249ddSSameer Pujar			compatible = "nvidia,tegra186-agic",
1325d2249ddSSameer Pujar				     "nvidia,tegra210-agic";
1335d2249ddSSameer Pujar			#interrupt-cells = <3>;
1345d2249ddSSameer Pujar			interrupt-controller;
1355d2249ddSSameer Pujar			reg = <0x02a41000 0x1000>,
1365d2249ddSSameer Pujar			      <0x02a42000 0x2000>;
1375d2249ddSSameer Pujar			interrupts = <GIC_SPI 145
1385d2249ddSSameer Pujar				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
1395d2249ddSSameer Pujar			clocks = <&bpmp TEGRA186_CLK_APE>;
1405d2249ddSSameer Pujar			clock-names = "clk";
1415d2249ddSSameer Pujar			status = "disabled";
1425d2249ddSSameer Pujar		};
143177208f7SSameer Pujar
144177208f7SSameer Pujar		tegra_ahub: ahub@2900800 {
145177208f7SSameer Pujar			compatible = "nvidia,tegra186-ahub";
146177208f7SSameer Pujar			reg = <0x02900800 0x800>;
147177208f7SSameer Pujar			clocks = <&bpmp TEGRA186_CLK_AHUB>;
148177208f7SSameer Pujar			clock-names = "ahub";
149177208f7SSameer Pujar			assigned-clocks = <&bpmp TEGRA186_CLK_AHUB>;
150177208f7SSameer Pujar			assigned-clock-parents = <&bpmp TEGRA186_CLK_PLL_A_OUT0>;
151177208f7SSameer Pujar			#address-cells = <1>;
152177208f7SSameer Pujar			#size-cells = <1>;
153177208f7SSameer Pujar			ranges = <0x02900800 0x02900800 0x11800>;
154177208f7SSameer Pujar			status = "disabled";
155177208f7SSameer Pujar
156177208f7SSameer Pujar			tegra_admaif: admaif@290f000 {
157177208f7SSameer Pujar				compatible = "nvidia,tegra186-admaif";
158177208f7SSameer Pujar				reg = <0x0290f000 0x1000>;
159177208f7SSameer Pujar				dmas = <&adma 1>, <&adma 1>,
160177208f7SSameer Pujar				       <&adma 2>, <&adma 2>,
161177208f7SSameer Pujar				       <&adma 3>, <&adma 3>,
162177208f7SSameer Pujar				       <&adma 4>, <&adma 4>,
163177208f7SSameer Pujar				       <&adma 5>, <&adma 5>,
164177208f7SSameer Pujar				       <&adma 6>, <&adma 6>,
165177208f7SSameer Pujar				       <&adma 7>, <&adma 7>,
166177208f7SSameer Pujar				       <&adma 8>, <&adma 8>,
167177208f7SSameer Pujar				       <&adma 9>, <&adma 9>,
168177208f7SSameer Pujar				       <&adma 10>, <&adma 10>,
169177208f7SSameer Pujar				       <&adma 11>, <&adma 11>,
170177208f7SSameer Pujar				       <&adma 12>, <&adma 12>,
171177208f7SSameer Pujar				       <&adma 13>, <&adma 13>,
172177208f7SSameer Pujar				       <&adma 14>, <&adma 14>,
173177208f7SSameer Pujar				       <&adma 15>, <&adma 15>,
174177208f7SSameer Pujar				       <&adma 16>, <&adma 16>,
175177208f7SSameer Pujar				       <&adma 17>, <&adma 17>,
176177208f7SSameer Pujar				       <&adma 18>, <&adma 18>,
177177208f7SSameer Pujar				       <&adma 19>, <&adma 19>,
178177208f7SSameer Pujar				       <&adma 20>, <&adma 20>;
179177208f7SSameer Pujar				dma-names = "rx1", "tx1",
180177208f7SSameer Pujar					    "rx2", "tx2",
181177208f7SSameer Pujar					    "rx3", "tx3",
182177208f7SSameer Pujar					    "rx4", "tx4",
183177208f7SSameer Pujar					    "rx5", "tx5",
184177208f7SSameer Pujar					    "rx6", "tx6",
185177208f7SSameer Pujar					    "rx7", "tx7",
186177208f7SSameer Pujar					    "rx8", "tx8",
187177208f7SSameer Pujar					    "rx9", "tx9",
188177208f7SSameer Pujar					    "rx10", "tx10",
189177208f7SSameer Pujar					    "rx11", "tx11",
190177208f7SSameer Pujar					    "rx12", "tx12",
191177208f7SSameer Pujar					    "rx13", "tx13",
192177208f7SSameer Pujar					    "rx14", "tx14",
193177208f7SSameer Pujar					    "rx15", "tx15",
194177208f7SSameer Pujar					    "rx16", "tx16",
195177208f7SSameer Pujar					    "rx17", "tx17",
196177208f7SSameer Pujar					    "rx18", "tx18",
197177208f7SSameer Pujar					    "rx19", "tx19",
198177208f7SSameer Pujar					    "rx20", "tx20";
199177208f7SSameer Pujar				status = "disabled";
200177208f7SSameer Pujar			};
201177208f7SSameer Pujar
202177208f7SSameer Pujar			tegra_i2s1: i2s@2901000 {
203177208f7SSameer Pujar				compatible = "nvidia,tegra186-i2s",
204177208f7SSameer Pujar					     "nvidia,tegra210-i2s";
205177208f7SSameer Pujar				reg = <0x2901000 0x100>;
206177208f7SSameer Pujar				clocks = <&bpmp TEGRA186_CLK_I2S1>,
207177208f7SSameer Pujar					 <&bpmp TEGRA186_CLK_I2S1_SYNC_INPUT>;
208177208f7SSameer Pujar				clock-names = "i2s", "sync_input";
209177208f7SSameer Pujar				assigned-clocks = <&bpmp TEGRA186_CLK_I2S1>;
210177208f7SSameer Pujar				assigned-clock-parents = <&bpmp TEGRA186_CLK_PLL_A_OUT0>;
211177208f7SSameer Pujar				assigned-clock-rates = <1536000>;
212177208f7SSameer Pujar				sound-name-prefix = "I2S1";
213177208f7SSameer Pujar				status = "disabled";
214177208f7SSameer Pujar			};
215177208f7SSameer Pujar
216177208f7SSameer Pujar			tegra_i2s2: i2s@2901100 {
217177208f7SSameer Pujar				compatible = "nvidia,tegra186-i2s",
218177208f7SSameer Pujar					     "nvidia,tegra210-i2s";
219177208f7SSameer Pujar				reg = <0x2901100 0x100>;
220177208f7SSameer Pujar				clocks = <&bpmp TEGRA186_CLK_I2S2>,
221177208f7SSameer Pujar					 <&bpmp TEGRA186_CLK_I2S2_SYNC_INPUT>;
222177208f7SSameer Pujar				clock-names = "i2s", "sync_input";
223177208f7SSameer Pujar				assigned-clocks = <&bpmp TEGRA186_CLK_I2S2>;
224177208f7SSameer Pujar				assigned-clock-parents = <&bpmp TEGRA186_CLK_PLL_A_OUT0>;
225177208f7SSameer Pujar				assigned-clock-rates = <1536000>;
226177208f7SSameer Pujar				sound-name-prefix = "I2S2";
227177208f7SSameer Pujar				status = "disabled";
228177208f7SSameer Pujar			};
229177208f7SSameer Pujar
230177208f7SSameer Pujar			tegra_i2s3: i2s@2901200 {
231177208f7SSameer Pujar				compatible = "nvidia,tegra186-i2s",
232177208f7SSameer Pujar					     "nvidia,tegra210-i2s";
233177208f7SSameer Pujar				reg = <0x2901200 0x100>;
234177208f7SSameer Pujar				clocks = <&bpmp TEGRA186_CLK_I2S3>,
235177208f7SSameer Pujar					 <&bpmp TEGRA186_CLK_I2S3_SYNC_INPUT>;
236177208f7SSameer Pujar				clock-names = "i2s", "sync_input";
237177208f7SSameer Pujar				assigned-clocks = <&bpmp TEGRA186_CLK_I2S3>;
238177208f7SSameer Pujar				assigned-clock-parents = <&bpmp TEGRA186_CLK_PLL_A_OUT0>;
239177208f7SSameer Pujar				assigned-clock-rates = <1536000>;
240177208f7SSameer Pujar				sound-name-prefix = "I2S3";
241177208f7SSameer Pujar				status = "disabled";
242177208f7SSameer Pujar			};
243177208f7SSameer Pujar
244177208f7SSameer Pujar			tegra_i2s4: i2s@2901300 {
245177208f7SSameer Pujar				compatible = "nvidia,tegra186-i2s",
246177208f7SSameer Pujar					     "nvidia,tegra210-i2s";
247177208f7SSameer Pujar				reg = <0x2901300 0x100>;
248177208f7SSameer Pujar				clocks = <&bpmp TEGRA186_CLK_I2S4>,
249177208f7SSameer Pujar					 <&bpmp TEGRA186_CLK_I2S4_SYNC_INPUT>;
250177208f7SSameer Pujar				clock-names = "i2s", "sync_input";
251177208f7SSameer Pujar				assigned-clocks = <&bpmp TEGRA186_CLK_I2S4>;
252177208f7SSameer Pujar				assigned-clock-parents = <&bpmp TEGRA186_CLK_PLL_A_OUT0>;
253177208f7SSameer Pujar				assigned-clock-rates = <1536000>;
254177208f7SSameer Pujar				sound-name-prefix = "I2S4";
255177208f7SSameer Pujar				status = "disabled";
256177208f7SSameer Pujar			};
257177208f7SSameer Pujar
258177208f7SSameer Pujar			tegra_i2s5: i2s@2901400 {
259177208f7SSameer Pujar				compatible = "nvidia,tegra186-i2s",
260177208f7SSameer Pujar					     "nvidia,tegra210-i2s";
261177208f7SSameer Pujar				reg = <0x2901400 0x100>;
262177208f7SSameer Pujar				clocks = <&bpmp TEGRA186_CLK_I2S5>,
263177208f7SSameer Pujar					 <&bpmp TEGRA186_CLK_I2S5_SYNC_INPUT>;
264177208f7SSameer Pujar				clock-names = "i2s", "sync_input";
265177208f7SSameer Pujar				assigned-clocks = <&bpmp TEGRA186_CLK_I2S5>;
266177208f7SSameer Pujar				assigned-clock-parents = <&bpmp TEGRA186_CLK_PLL_A_OUT0>;
267177208f7SSameer Pujar				assigned-clock-rates = <1536000>;
268177208f7SSameer Pujar				sound-name-prefix = "I2S5";
269177208f7SSameer Pujar				status = "disabled";
270177208f7SSameer Pujar			};
271177208f7SSameer Pujar
272177208f7SSameer Pujar			tegra_i2s6: i2s@2901500 {
273177208f7SSameer Pujar				compatible = "nvidia,tegra186-i2s",
274177208f7SSameer Pujar					     "nvidia,tegra210-i2s";
275177208f7SSameer Pujar				reg = <0x2901500 0x100>;
276177208f7SSameer Pujar				clocks = <&bpmp TEGRA186_CLK_I2S6>,
277177208f7SSameer Pujar					 <&bpmp TEGRA186_CLK_I2S6_SYNC_INPUT>;
278177208f7SSameer Pujar				clock-names = "i2s", "sync_input";
279177208f7SSameer Pujar				assigned-clocks = <&bpmp TEGRA186_CLK_I2S6>;
280177208f7SSameer Pujar				assigned-clock-parents = <&bpmp TEGRA186_CLK_PLL_A_OUT0>;
281177208f7SSameer Pujar				assigned-clock-rates = <1536000>;
282177208f7SSameer Pujar				sound-name-prefix = "I2S6";
283177208f7SSameer Pujar				status = "disabled";
284177208f7SSameer Pujar			};
285177208f7SSameer Pujar
286177208f7SSameer Pujar			tegra_dmic1: dmic@2904000 {
287177208f7SSameer Pujar				compatible = "nvidia,tegra210-dmic";
288177208f7SSameer Pujar				reg = <0x2904000 0x100>;
289177208f7SSameer Pujar				clocks = <&bpmp TEGRA186_CLK_DMIC1>;
290177208f7SSameer Pujar				clock-names = "dmic";
291177208f7SSameer Pujar				assigned-clocks = <&bpmp TEGRA186_CLK_DMIC1>;
292177208f7SSameer Pujar				assigned-clock-parents = <&bpmp TEGRA186_CLK_PLL_A_OUT0>;
293177208f7SSameer Pujar				assigned-clock-rates = <3072000>;
294177208f7SSameer Pujar				sound-name-prefix = "DMIC1";
295177208f7SSameer Pujar				status = "disabled";
296177208f7SSameer Pujar			};
297177208f7SSameer Pujar
298177208f7SSameer Pujar			tegra_dmic2: dmic@2904100 {
299177208f7SSameer Pujar				compatible = "nvidia,tegra210-dmic";
300177208f7SSameer Pujar				reg = <0x2904100 0x100>;
301177208f7SSameer Pujar				clocks = <&bpmp TEGRA186_CLK_DMIC2>;
302177208f7SSameer Pujar				clock-names = "dmic";
303177208f7SSameer Pujar				assigned-clocks = <&bpmp TEGRA186_CLK_DMIC2>;
304177208f7SSameer Pujar				assigned-clock-parents = <&bpmp TEGRA186_CLK_PLL_A_OUT0>;
305177208f7SSameer Pujar				assigned-clock-rates = <3072000>;
306177208f7SSameer Pujar				sound-name-prefix = "DMIC2";
307177208f7SSameer Pujar				status = "disabled";
308177208f7SSameer Pujar			};
309177208f7SSameer Pujar
310177208f7SSameer Pujar			tegra_dmic3: dmic@2904200 {
311177208f7SSameer Pujar				compatible = "nvidia,tegra210-dmic";
312177208f7SSameer Pujar				reg = <0x2904200 0x100>;
313177208f7SSameer Pujar				clocks = <&bpmp TEGRA186_CLK_DMIC3>;
314177208f7SSameer Pujar				clock-names = "dmic";
315177208f7SSameer Pujar				assigned-clocks = <&bpmp TEGRA186_CLK_DMIC3>;
316177208f7SSameer Pujar				assigned-clock-parents = <&bpmp TEGRA186_CLK_PLL_A_OUT0>;
317177208f7SSameer Pujar				assigned-clock-rates = <3072000>;
318177208f7SSameer Pujar				sound-name-prefix = "DMIC3";
319177208f7SSameer Pujar				status = "disabled";
320177208f7SSameer Pujar			};
321177208f7SSameer Pujar
322177208f7SSameer Pujar			tegra_dmic4: dmic@2904300 {
323177208f7SSameer Pujar				compatible = "nvidia,tegra210-dmic";
324177208f7SSameer Pujar				reg = <0x2904300 0x100>;
325177208f7SSameer Pujar				clocks = <&bpmp TEGRA186_CLK_DMIC4>;
326177208f7SSameer Pujar				clock-names = "dmic";
327177208f7SSameer Pujar				assigned-clocks = <&bpmp TEGRA186_CLK_DMIC4>;
328177208f7SSameer Pujar				assigned-clock-parents = <&bpmp TEGRA186_CLK_PLL_A_OUT0>;
329177208f7SSameer Pujar				assigned-clock-rates = <3072000>;
330177208f7SSameer Pujar				sound-name-prefix = "DMIC4";
331177208f7SSameer Pujar				status = "disabled";
332177208f7SSameer Pujar			};
333177208f7SSameer Pujar
334177208f7SSameer Pujar			tegra_dspk1: dspk@2905000 {
335177208f7SSameer Pujar				compatible = "nvidia,tegra186-dspk";
336177208f7SSameer Pujar				reg = <0x2905000 0x100>;
337177208f7SSameer Pujar				clocks = <&bpmp TEGRA186_CLK_DSPK1>;
338177208f7SSameer Pujar				clock-names = "dspk";
339177208f7SSameer Pujar				assigned-clocks = <&bpmp TEGRA186_CLK_DSPK1>;
340177208f7SSameer Pujar				assigned-clock-parents = <&bpmp TEGRA186_CLK_PLL_A_OUT0>;
341177208f7SSameer Pujar				assigned-clock-rates = <12288000>;
342177208f7SSameer Pujar				sound-name-prefix = "DSPK1";
343177208f7SSameer Pujar				status = "disabled";
344177208f7SSameer Pujar			};
345177208f7SSameer Pujar
346177208f7SSameer Pujar			tegra_dspk2: dspk@2905100 {
347177208f7SSameer Pujar				compatible = "nvidia,tegra186-dspk";
348177208f7SSameer Pujar				reg = <0x2905100 0x100>;
349177208f7SSameer Pujar				clocks = <&bpmp TEGRA186_CLK_DSPK2>;
350177208f7SSameer Pujar				clock-names = "dspk";
351177208f7SSameer Pujar				assigned-clocks = <&bpmp TEGRA186_CLK_DSPK2>;
352177208f7SSameer Pujar				assigned-clock-parents = <&bpmp TEGRA186_CLK_PLL_A_OUT0>;
353177208f7SSameer Pujar				assigned-clock-rates = <12288000>;
354177208f7SSameer Pujar				sound-name-prefix = "DSPK2";
355177208f7SSameer Pujar				status = "disabled";
356177208f7SSameer Pujar			};
357177208f7SSameer Pujar		};
3585d2249ddSSameer Pujar	};
3595d2249ddSSameer Pujar
360954490b3SThierry Reding	mc: memory-controller@2c00000 {
361d25a3bf1SThierry Reding		compatible = "nvidia,tegra186-mc";
362d25a3bf1SThierry Reding		reg = <0x0 0x02c00000 0x0 0xb0000>;
363b72d52a1SThierry Reding		interrupts = <GIC_SPI 223 IRQ_TYPE_LEVEL_HIGH>;
364d25a3bf1SThierry Reding		status = "disabled";
3653f6eaef9SThierry Reding
366954490b3SThierry Reding		#interconnect-cells = <1>;
3673f6eaef9SThierry Reding		#address-cells = <2>;
3683f6eaef9SThierry Reding		#size-cells = <2>;
3693f6eaef9SThierry Reding
3703f6eaef9SThierry Reding		ranges = <0x0 0x02c00000 0x0 0x02c00000 0x0 0xb0000>;
3713f6eaef9SThierry Reding
3723f6eaef9SThierry Reding		/*
3733f6eaef9SThierry Reding		 * Memory clients have access to all 40 bits that the memory
3743f6eaef9SThierry Reding		 * controller can address.
3753f6eaef9SThierry Reding		 */
3763f6eaef9SThierry Reding		dma-ranges = <0x0 0x0 0x0 0x0 0x100 0x0>;
3773f6eaef9SThierry Reding
3783f6eaef9SThierry Reding		emc: external-memory-controller@2c60000 {
3793f6eaef9SThierry Reding			compatible = "nvidia,tegra186-emc";
3803f6eaef9SThierry Reding			reg = <0x0 0x02c60000 0x0 0x50000>;
3813f6eaef9SThierry Reding			interrupts = <GIC_SPI 224 IRQ_TYPE_LEVEL_HIGH>;
3823f6eaef9SThierry Reding			clocks = <&bpmp TEGRA186_CLK_EMC>;
3833f6eaef9SThierry Reding			clock-names = "emc";
3843f6eaef9SThierry Reding
385954490b3SThierry Reding			#interconnect-cells = <0>;
386954490b3SThierry Reding
3873f6eaef9SThierry Reding			nvidia,bpmp = <&bpmp>;
3883f6eaef9SThierry Reding		};
389d25a3bf1SThierry Reding	};
390d25a3bf1SThierry Reding
39139cb62cbSJoseph Lo	uarta: serial@3100000 {
39239cb62cbSJoseph Lo		compatible = "nvidia,tegra186-uart", "nvidia,tegra20-uart";
39339cb62cbSJoseph Lo		reg = <0x0 0x03100000 0x0 0x40>;
39439cb62cbSJoseph Lo		reg-shift = <2>;
39539cb62cbSJoseph Lo		interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>;
396c58f5f88SThierry Reding		clocks = <&bpmp TEGRA186_CLK_UARTA>;
397a7a77e2eSThierry Reding		clock-names = "serial";
3987bcf2664SThierry Reding		resets = <&bpmp TEGRA186_RESET_UARTA>;
399a7a77e2eSThierry Reding		reset-names = "serial";
400a7a77e2eSThierry Reding		status = "disabled";
401a7a77e2eSThierry Reding	};
402a7a77e2eSThierry Reding
403a7a77e2eSThierry Reding	uartb: serial@3110000 {
404a7a77e2eSThierry Reding		compatible = "nvidia,tegra186-uart", "nvidia,tegra20-uart";
405a7a77e2eSThierry Reding		reg = <0x0 0x03110000 0x0 0x40>;
406a7a77e2eSThierry Reding		reg-shift = <2>;
407a7a77e2eSThierry Reding		interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>;
408c58f5f88SThierry Reding		clocks = <&bpmp TEGRA186_CLK_UARTB>;
409a7a77e2eSThierry Reding		clock-names = "serial";
4107bcf2664SThierry Reding		resets = <&bpmp TEGRA186_RESET_UARTB>;
411a7a77e2eSThierry Reding		reset-names = "serial";
412a7a77e2eSThierry Reding		status = "disabled";
413a7a77e2eSThierry Reding	};
414a7a77e2eSThierry Reding
415a7a77e2eSThierry Reding	uartd: serial@3130000 {
416a7a77e2eSThierry Reding		compatible = "nvidia,tegra186-uart", "nvidia,tegra20-uart";
417a7a77e2eSThierry Reding		reg = <0x0 0x03130000 0x0 0x40>;
418a7a77e2eSThierry Reding		reg-shift = <2>;
419a7a77e2eSThierry Reding		interrupts = <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>;
420c58f5f88SThierry Reding		clocks = <&bpmp TEGRA186_CLK_UARTD>;
421a7a77e2eSThierry Reding		clock-names = "serial";
4227bcf2664SThierry Reding		resets = <&bpmp TEGRA186_RESET_UARTD>;
423a7a77e2eSThierry Reding		reset-names = "serial";
424a7a77e2eSThierry Reding		status = "disabled";
425a7a77e2eSThierry Reding	};
426a7a77e2eSThierry Reding
427a7a77e2eSThierry Reding	uarte: serial@3140000 {
428a7a77e2eSThierry Reding		compatible = "nvidia,tegra186-uart", "nvidia,tegra20-uart";
429a7a77e2eSThierry Reding		reg = <0x0 0x03140000 0x0 0x40>;
430a7a77e2eSThierry Reding		reg-shift = <2>;
431a7a77e2eSThierry Reding		interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>;
432c58f5f88SThierry Reding		clocks = <&bpmp TEGRA186_CLK_UARTE>;
433a7a77e2eSThierry Reding		clock-names = "serial";
4347bcf2664SThierry Reding		resets = <&bpmp TEGRA186_RESET_UARTE>;
435a7a77e2eSThierry Reding		reset-names = "serial";
436a7a77e2eSThierry Reding		status = "disabled";
437a7a77e2eSThierry Reding	};
438a7a77e2eSThierry Reding
439a7a77e2eSThierry Reding	uartf: serial@3150000 {
440a7a77e2eSThierry Reding		compatible = "nvidia,tegra186-uart", "nvidia,tegra20-uart";
441a7a77e2eSThierry Reding		reg = <0x0 0x03150000 0x0 0x40>;
442a7a77e2eSThierry Reding		reg-shift = <2>;
443a7a77e2eSThierry Reding		interrupts = <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>;
444c58f5f88SThierry Reding		clocks = <&bpmp TEGRA186_CLK_UARTF>;
445a7a77e2eSThierry Reding		clock-names = "serial";
4467bcf2664SThierry Reding		resets = <&bpmp TEGRA186_RESET_UARTF>;
447a7a77e2eSThierry Reding		reset-names = "serial";
44839cb62cbSJoseph Lo		status = "disabled";
44939cb62cbSJoseph Lo	};
45039cb62cbSJoseph Lo
45140cc83b3SThierry Reding	gen1_i2c: i2c@3160000 {
452250a36c0SSowjanya Komatineni		compatible = "nvidia,tegra186-i2c", "nvidia,tegra210-i2c";
45340cc83b3SThierry Reding		reg = <0x0 0x03160000 0x0 0x10000>;
45440cc83b3SThierry Reding		interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
45540cc83b3SThierry Reding		#address-cells = <1>;
45640cc83b3SThierry Reding		#size-cells = <0>;
457c58f5f88SThierry Reding		clocks = <&bpmp TEGRA186_CLK_I2C1>;
45840cc83b3SThierry Reding		clock-names = "div-clk";
4597bcf2664SThierry Reding		resets = <&bpmp TEGRA186_RESET_I2C1>;
46040cc83b3SThierry Reding		reset-names = "i2c";
46140cc83b3SThierry Reding		status = "disabled";
46240cc83b3SThierry Reding	};
46340cc83b3SThierry Reding
46440cc83b3SThierry Reding	cam_i2c: i2c@3180000 {
465250a36c0SSowjanya Komatineni		compatible = "nvidia,tegra186-i2c", "nvidia,tegra210-i2c";
46640cc83b3SThierry Reding		reg = <0x0 0x03180000 0x0 0x10000>;
46740cc83b3SThierry Reding		interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>;
46840cc83b3SThierry Reding		#address-cells = <1>;
46940cc83b3SThierry Reding		#size-cells = <0>;
470c58f5f88SThierry Reding		clocks = <&bpmp TEGRA186_CLK_I2C3>;
47140cc83b3SThierry Reding		clock-names = "div-clk";
4727bcf2664SThierry Reding		resets = <&bpmp TEGRA186_RESET_I2C3>;
47340cc83b3SThierry Reding		reset-names = "i2c";
47440cc83b3SThierry Reding		status = "disabled";
47540cc83b3SThierry Reding	};
47640cc83b3SThierry Reding
47740cc83b3SThierry Reding	/* shares pads with dpaux1 */
47840cc83b3SThierry Reding	dp_aux_ch1_i2c: i2c@3190000 {
479250a36c0SSowjanya Komatineni		compatible = "nvidia,tegra186-i2c", "nvidia,tegra210-i2c";
48040cc83b3SThierry Reding		reg = <0x0 0x03190000 0x0 0x10000>;
48140cc83b3SThierry Reding		interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>;
48240cc83b3SThierry Reding		#address-cells = <1>;
48340cc83b3SThierry Reding		#size-cells = <0>;
484c58f5f88SThierry Reding		clocks = <&bpmp TEGRA186_CLK_I2C4>;
48540cc83b3SThierry Reding		clock-names = "div-clk";
4867bcf2664SThierry Reding		resets = <&bpmp TEGRA186_RESET_I2C4>;
48740cc83b3SThierry Reding		reset-names = "i2c";
488846137c6SThierry Reding		pinctrl-names = "default", "idle";
489846137c6SThierry Reding		pinctrl-0 = <&state_dpaux1_i2c>;
490846137c6SThierry Reding		pinctrl-1 = <&state_dpaux1_off>;
49140cc83b3SThierry Reding		status = "disabled";
49240cc83b3SThierry Reding	};
49340cc83b3SThierry Reding
49440cc83b3SThierry Reding	/* controlled by BPMP, should not be enabled */
49540cc83b3SThierry Reding	pwr_i2c: i2c@31a0000 {
496250a36c0SSowjanya Komatineni		compatible = "nvidia,tegra186-i2c", "nvidia,tegra210-i2c";
49740cc83b3SThierry Reding		reg = <0x0 0x031a0000 0x0 0x10000>;
49840cc83b3SThierry Reding		interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>;
49940cc83b3SThierry Reding		#address-cells = <1>;
50040cc83b3SThierry Reding		#size-cells = <0>;
501c58f5f88SThierry Reding		clocks = <&bpmp TEGRA186_CLK_I2C5>;
50240cc83b3SThierry Reding		clock-names = "div-clk";
5037bcf2664SThierry Reding		resets = <&bpmp TEGRA186_RESET_I2C5>;
50440cc83b3SThierry Reding		reset-names = "i2c";
50540cc83b3SThierry Reding		status = "disabled";
50640cc83b3SThierry Reding	};
50740cc83b3SThierry Reding
50840cc83b3SThierry Reding	/* shares pads with dpaux0 */
50940cc83b3SThierry Reding	dp_aux_ch0_i2c: i2c@31b0000 {
510250a36c0SSowjanya Komatineni		compatible = "nvidia,tegra186-i2c", "nvidia,tegra210-i2c";
51140cc83b3SThierry Reding		reg = <0x0 0x031b0000 0x0 0x10000>;
51240cc83b3SThierry Reding		interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
51340cc83b3SThierry Reding		#address-cells = <1>;
51440cc83b3SThierry Reding		#size-cells = <0>;
515c58f5f88SThierry Reding		clocks = <&bpmp TEGRA186_CLK_I2C6>;
51640cc83b3SThierry Reding		clock-names = "div-clk";
5177bcf2664SThierry Reding		resets = <&bpmp TEGRA186_RESET_I2C6>;
51840cc83b3SThierry Reding		reset-names = "i2c";
519846137c6SThierry Reding		pinctrl-names = "default", "idle";
520846137c6SThierry Reding		pinctrl-0 = <&state_dpaux_i2c>;
521846137c6SThierry Reding		pinctrl-1 = <&state_dpaux_off>;
52240cc83b3SThierry Reding		status = "disabled";
52340cc83b3SThierry Reding	};
52440cc83b3SThierry Reding
52540cc83b3SThierry Reding	gen7_i2c: i2c@31c0000 {
526250a36c0SSowjanya Komatineni		compatible = "nvidia,tegra186-i2c", "nvidia,tegra210-i2c";
52740cc83b3SThierry Reding		reg = <0x0 0x031c0000 0x0 0x10000>;
52840cc83b3SThierry Reding		interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
52940cc83b3SThierry Reding		#address-cells = <1>;
53040cc83b3SThierry Reding		#size-cells = <0>;
531c58f5f88SThierry Reding		clocks = <&bpmp TEGRA186_CLK_I2C7>;
53240cc83b3SThierry Reding		clock-names = "div-clk";
5337bcf2664SThierry Reding		resets = <&bpmp TEGRA186_RESET_I2C7>;
53440cc83b3SThierry Reding		reset-names = "i2c";
53540cc83b3SThierry Reding		status = "disabled";
53640cc83b3SThierry Reding	};
53740cc83b3SThierry Reding
53840cc83b3SThierry Reding	gen9_i2c: i2c@31e0000 {
539250a36c0SSowjanya Komatineni		compatible = "nvidia,tegra186-i2c", "nvidia,tegra210-i2c";
54040cc83b3SThierry Reding		reg = <0x0 0x031e0000 0x0 0x10000>;
54140cc83b3SThierry Reding		interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
54240cc83b3SThierry Reding		#address-cells = <1>;
54340cc83b3SThierry Reding		#size-cells = <0>;
544c58f5f88SThierry Reding		clocks = <&bpmp TEGRA186_CLK_I2C9>;
54540cc83b3SThierry Reding		clock-names = "div-clk";
5467bcf2664SThierry Reding		resets = <&bpmp TEGRA186_RESET_I2C9>;
54740cc83b3SThierry Reding		reset-names = "i2c";
54840cc83b3SThierry Reding		status = "disabled";
54940cc83b3SThierry Reding	};
55040cc83b3SThierry Reding
55167bb17f6SThierry Reding	sdmmc1: mmc@3400000 {
55299425dfdSThierry Reding		compatible = "nvidia,tegra186-sdhci";
55399425dfdSThierry Reding		reg = <0x0 0x03400000 0x0 0x10000>;
55499425dfdSThierry Reding		interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
555baba217dSSowjanya Komatineni		clocks = <&bpmp TEGRA186_CLK_SDMMC1>,
556baba217dSSowjanya Komatineni			 <&bpmp TEGRA186_CLK_SDMMC_LEGACY_TM>;
557baba217dSSowjanya Komatineni		clock-names = "sdhci", "tmclk";
5587bcf2664SThierry Reding		resets = <&bpmp TEGRA186_RESET_SDMMC1>;
55999425dfdSThierry Reding		reset-names = "sdhci";
560954490b3SThierry Reding		interconnects = <&mc TEGRA186_MEMORY_CLIENT_SDMMCRA &emc>,
561954490b3SThierry Reding				<&mc TEGRA186_MEMORY_CLIENT_SDMMCWA &emc>;
562954490b3SThierry Reding		interconnect-names = "dma-mem", "write";
5638589a649SKrishna Reddy		iommus = <&smmu TEGRA186_SID_SDMMC1>;
56424005fd1SAapo Vienamo		pinctrl-names = "sdmmc-3v3", "sdmmc-1v8";
56524005fd1SAapo Vienamo		pinctrl-0 = <&sdmmc1_3v3>;
56624005fd1SAapo Vienamo		pinctrl-1 = <&sdmmc1_1v8>;
56741408c21SAapo Vienamo		nvidia,pad-autocal-pull-up-offset-3v3-timeout = <0x07>;
56841408c21SAapo Vienamo		nvidia,pad-autocal-pull-down-offset-3v3-timeout = <0x06>;
56941408c21SAapo Vienamo		nvidia,pad-autocal-pull-up-offset-1v8-timeout = <0x07>;
57041408c21SAapo Vienamo		nvidia,pad-autocal-pull-down-offset-1v8-timeout = <0x07>;
57141408c21SAapo Vienamo		nvidia,pad-autocal-pull-up-offset-sdr104 = <0x03>;
57241408c21SAapo Vienamo		nvidia,pad-autocal-pull-down-offset-sdr104 = <0x05>;
5736f90c6f0SAapo Vienamo		nvidia,default-tap = <0x5>;
5746f90c6f0SAapo Vienamo		nvidia,default-trim = <0xb>;
57598a2494fSAapo Vienamo		assigned-clocks = <&bpmp TEGRA186_CLK_SDMMC1>,
57698a2494fSAapo Vienamo				  <&bpmp TEGRA186_CLK_PLLP_OUT0>;
57798a2494fSAapo Vienamo		assigned-clock-parents = <&bpmp TEGRA186_CLK_PLLP_OUT0>;
57899425dfdSThierry Reding		status = "disabled";
57999425dfdSThierry Reding	};
58099425dfdSThierry Reding
58167bb17f6SThierry Reding	sdmmc2: mmc@3420000 {
58299425dfdSThierry Reding		compatible = "nvidia,tegra186-sdhci";
58399425dfdSThierry Reding		reg = <0x0 0x03420000 0x0 0x10000>;
58499425dfdSThierry Reding		interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>;
585baba217dSSowjanya Komatineni		clocks = <&bpmp TEGRA186_CLK_SDMMC2>,
586baba217dSSowjanya Komatineni			 <&bpmp TEGRA186_CLK_SDMMC_LEGACY_TM>;
587baba217dSSowjanya Komatineni		clock-names = "sdhci", "tmclk";
5887bcf2664SThierry Reding		resets = <&bpmp TEGRA186_RESET_SDMMC2>;
58999425dfdSThierry Reding		reset-names = "sdhci";
590954490b3SThierry Reding		interconnects = <&mc TEGRA186_MEMORY_CLIENT_SDMMCRAA &emc>,
591954490b3SThierry Reding				<&mc TEGRA186_MEMORY_CLIENT_SDMMCWAA &emc>;
592954490b3SThierry Reding		interconnect-names = "dma-mem", "write";
5938589a649SKrishna Reddy		iommus = <&smmu TEGRA186_SID_SDMMC2>;
59424005fd1SAapo Vienamo		pinctrl-names = "sdmmc-3v3", "sdmmc-1v8";
59524005fd1SAapo Vienamo		pinctrl-0 = <&sdmmc2_3v3>;
59624005fd1SAapo Vienamo		pinctrl-1 = <&sdmmc2_1v8>;
59741408c21SAapo Vienamo		nvidia,pad-autocal-pull-up-offset-3v3-timeout = <0x07>;
59841408c21SAapo Vienamo		nvidia,pad-autocal-pull-down-offset-3v3-timeout = <0x06>;
59941408c21SAapo Vienamo		nvidia,pad-autocal-pull-up-offset-1v8-timeout = <0x07>;
60041408c21SAapo Vienamo		nvidia,pad-autocal-pull-down-offset-1v8-timeout = <0x07>;
6016f90c6f0SAapo Vienamo		nvidia,default-tap = <0x5>;
6026f90c6f0SAapo Vienamo		nvidia,default-trim = <0xb>;
60399425dfdSThierry Reding		status = "disabled";
60499425dfdSThierry Reding	};
60599425dfdSThierry Reding
60667bb17f6SThierry Reding	sdmmc3: mmc@3440000 {
60799425dfdSThierry Reding		compatible = "nvidia,tegra186-sdhci";
60899425dfdSThierry Reding		reg = <0x0 0x03440000 0x0 0x10000>;
60999425dfdSThierry Reding		interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>;
610baba217dSSowjanya Komatineni		clocks = <&bpmp TEGRA186_CLK_SDMMC3>,
611baba217dSSowjanya Komatineni			 <&bpmp TEGRA186_CLK_SDMMC_LEGACY_TM>;
612baba217dSSowjanya Komatineni		clock-names = "sdhci", "tmclk";
6137bcf2664SThierry Reding		resets = <&bpmp TEGRA186_RESET_SDMMC3>;
61499425dfdSThierry Reding		reset-names = "sdhci";
615954490b3SThierry Reding		interconnects = <&mc TEGRA186_MEMORY_CLIENT_SDMMCR &emc>,
616954490b3SThierry Reding				<&mc TEGRA186_MEMORY_CLIENT_SDMMCW &emc>;
617954490b3SThierry Reding		interconnect-names = "dma-mem", "write";
6188589a649SKrishna Reddy		iommus = <&smmu TEGRA186_SID_SDMMC3>;
61924005fd1SAapo Vienamo		pinctrl-names = "sdmmc-3v3", "sdmmc-1v8";
62024005fd1SAapo Vienamo		pinctrl-0 = <&sdmmc3_3v3>;
62124005fd1SAapo Vienamo		pinctrl-1 = <&sdmmc3_1v8>;
62241408c21SAapo Vienamo		nvidia,pad-autocal-pull-up-offset-1v8 = <0x00>;
62341408c21SAapo Vienamo		nvidia,pad-autocal-pull-down-offset-1v8 = <0x7a>;
62441408c21SAapo Vienamo		nvidia,pad-autocal-pull-up-offset-3v3-timeout = <0x07>;
62541408c21SAapo Vienamo		nvidia,pad-autocal-pull-down-offset-3v3-timeout = <0x06>;
62641408c21SAapo Vienamo		nvidia,pad-autocal-pull-up-offset-1v8-timeout = <0x07>;
62741408c21SAapo Vienamo		nvidia,pad-autocal-pull-down-offset-1v8-timeout = <0x07>;
6286f90c6f0SAapo Vienamo		nvidia,default-tap = <0x5>;
6296f90c6f0SAapo Vienamo		nvidia,default-trim = <0xb>;
63099425dfdSThierry Reding		status = "disabled";
63199425dfdSThierry Reding	};
63299425dfdSThierry Reding
63367bb17f6SThierry Reding	sdmmc4: mmc@3460000 {
63499425dfdSThierry Reding		compatible = "nvidia,tegra186-sdhci";
63599425dfdSThierry Reding		reg = <0x0 0x03460000 0x0 0x10000>;
63699425dfdSThierry Reding		interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>;
637baba217dSSowjanya Komatineni		clocks = <&bpmp TEGRA186_CLK_SDMMC4>,
638baba217dSSowjanya Komatineni			 <&bpmp TEGRA186_CLK_SDMMC_LEGACY_TM>;
639baba217dSSowjanya Komatineni		clock-names = "sdhci", "tmclk";
64098a2494fSAapo Vienamo		assigned-clocks = <&bpmp TEGRA186_CLK_SDMMC4>,
64198a2494fSAapo Vienamo				  <&bpmp TEGRA186_CLK_PLLC4_VCO>;
64298a2494fSAapo Vienamo		assigned-clock-parents = <&bpmp TEGRA186_CLK_PLLC4_VCO>;
6437bcf2664SThierry Reding		resets = <&bpmp TEGRA186_RESET_SDMMC4>;
64499425dfdSThierry Reding		reset-names = "sdhci";
645954490b3SThierry Reding		interconnects = <&mc TEGRA186_MEMORY_CLIENT_SDMMCRAB &emc>,
646954490b3SThierry Reding				<&mc TEGRA186_MEMORY_CLIENT_SDMMCWAB &emc>;
647954490b3SThierry Reding		interconnect-names = "dma-mem", "write";
6488589a649SKrishna Reddy		iommus = <&smmu TEGRA186_SID_SDMMC4>;
64941408c21SAapo Vienamo		nvidia,pad-autocal-pull-up-offset-hs400 = <0x05>;
65041408c21SAapo Vienamo		nvidia,pad-autocal-pull-down-offset-hs400 = <0x05>;
65141408c21SAapo Vienamo		nvidia,pad-autocal-pull-up-offset-1v8-timeout = <0x0a>;
65241408c21SAapo Vienamo		nvidia,pad-autocal-pull-down-offset-1v8-timeout = <0x0a>;
6534e0f1229SSowjanya Komatineni		nvidia,pad-autocal-pull-up-offset-3v3-timeout = <0x0a>;
6544e0f1229SSowjanya Komatineni		nvidia,pad-autocal-pull-down-offset-3v3-timeout = <0x0a>;
655e9b00196SSowjanya Komatineni		nvidia,default-tap = <0x9>;
656e9b00196SSowjanya Komatineni		nvidia,default-trim = <0x5>;
65722248e91SAapo Vienamo		nvidia,dqs-trim = <63>;
658207f60baSAapo Vienamo		mmc-hs400-1_8v;
659c4307836SSowjanya Komatineni		supports-cqe;
66099425dfdSThierry Reding		status = "disabled";
66199425dfdSThierry Reding	};
66299425dfdSThierry Reding
663b066a310SThierry Reding	hda@3510000 {
664b066a310SThierry Reding		compatible = "nvidia,tegra186-hda", "nvidia,tegra30-hda";
665b066a310SThierry Reding		reg = <0x0 0x03510000 0x0 0x10000>;
666b066a310SThierry Reding		interrupts = <GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>;
667b066a310SThierry Reding		clocks = <&bpmp TEGRA186_CLK_HDA>,
668b066a310SThierry Reding			 <&bpmp TEGRA186_CLK_HDA2HDMICODEC>,
669b066a310SThierry Reding			 <&bpmp TEGRA186_CLK_HDA2CODEC_2X>;
670b066a310SThierry Reding		clock-names = "hda", "hda2hdmi", "hda2codec_2x";
671b066a310SThierry Reding		resets = <&bpmp TEGRA186_RESET_HDA>,
672b066a310SThierry Reding			 <&bpmp TEGRA186_RESET_HDA2HDMICODEC>,
673b066a310SThierry Reding			 <&bpmp TEGRA186_RESET_HDA2CODEC_2X>;
674b066a310SThierry Reding		reset-names = "hda", "hda2hdmi", "hda2codec_2x";
675b066a310SThierry Reding		power-domains = <&bpmp TEGRA186_POWER_DOMAIN_DISP>;
676954490b3SThierry Reding		interconnects = <&mc TEGRA186_MEMORY_CLIENT_HDAR &emc>,
677954490b3SThierry Reding				<&mc TEGRA186_MEMORY_CLIENT_HDAW &emc>;
678954490b3SThierry Reding		interconnect-names = "dma-mem", "write";
679dfdbf16cSJonathan Hunter		iommus = <&smmu TEGRA186_SID_HDA>;
680b066a310SThierry Reding		status = "disabled";
681b066a310SThierry Reding	};
682b066a310SThierry Reding
6838bfde518SThierry Reding	padctl: padctl@3520000 {
6848bfde518SThierry Reding		compatible = "nvidia,tegra186-xusb-padctl";
6858bfde518SThierry Reding		reg = <0x0 0x03520000 0x0 0x1000>,
6868bfde518SThierry Reding		      <0x0 0x03540000 0x0 0x1000>;
6878bfde518SThierry Reding		reg-names = "padctl", "ao";
6886450da3dSJC Kuo		interrupts = <GIC_SPI 167 IRQ_TYPE_LEVEL_HIGH>;
6898bfde518SThierry Reding
6908bfde518SThierry Reding		resets = <&bpmp TEGRA186_RESET_XUSB_PADCTL>;
6918bfde518SThierry Reding		reset-names = "padctl";
6928bfde518SThierry Reding
6938bfde518SThierry Reding		status = "disabled";
6948bfde518SThierry Reding
6958bfde518SThierry Reding		pads {
6968bfde518SThierry Reding			usb2 {
6978bfde518SThierry Reding				clocks = <&bpmp TEGRA186_CLK_USB2_TRK>;
6988bfde518SThierry Reding				clock-names = "trk";
6998bfde518SThierry Reding				status = "disabled";
7008bfde518SThierry Reding
7018bfde518SThierry Reding				lanes {
7028bfde518SThierry Reding					usb2-0 {
7038bfde518SThierry Reding						status = "disabled";
7048bfde518SThierry Reding						#phy-cells = <0>;
7058bfde518SThierry Reding					};
7068bfde518SThierry Reding
7078bfde518SThierry Reding					usb2-1 {
7088bfde518SThierry Reding						status = "disabled";
7098bfde518SThierry Reding						#phy-cells = <0>;
7108bfde518SThierry Reding					};
7118bfde518SThierry Reding
7128bfde518SThierry Reding					usb2-2 {
7138bfde518SThierry Reding						status = "disabled";
7148bfde518SThierry Reding						#phy-cells = <0>;
7158bfde518SThierry Reding					};
7168bfde518SThierry Reding				};
7178bfde518SThierry Reding			};
7188bfde518SThierry Reding
7198bfde518SThierry Reding			hsic {
7208bfde518SThierry Reding				clocks = <&bpmp TEGRA186_CLK_HSIC_TRK>;
7218bfde518SThierry Reding				clock-names = "trk";
7228bfde518SThierry Reding				status = "disabled";
7238bfde518SThierry Reding
7248bfde518SThierry Reding				lanes {
7258bfde518SThierry Reding					hsic-0 {
7268bfde518SThierry Reding						status = "disabled";
7278bfde518SThierry Reding						#phy-cells = <0>;
7288bfde518SThierry Reding					};
7298bfde518SThierry Reding				};
7308bfde518SThierry Reding			};
7318bfde518SThierry Reding
7328bfde518SThierry Reding			usb3 {
7338bfde518SThierry Reding				status = "disabled";
7348bfde518SThierry Reding
7358bfde518SThierry Reding				lanes {
7368bfde518SThierry Reding					usb3-0 {
7378bfde518SThierry Reding						status = "disabled";
7388bfde518SThierry Reding						#phy-cells = <0>;
7398bfde518SThierry Reding					};
7408bfde518SThierry Reding
7418bfde518SThierry Reding					usb3-1 {
7428bfde518SThierry Reding						status = "disabled";
7438bfde518SThierry Reding						#phy-cells = <0>;
7448bfde518SThierry Reding					};
7458bfde518SThierry Reding
7468bfde518SThierry Reding					usb3-2 {
7478bfde518SThierry Reding						status = "disabled";
7488bfde518SThierry Reding						#phy-cells = <0>;
7498bfde518SThierry Reding					};
7508bfde518SThierry Reding				};
7518bfde518SThierry Reding			};
7528bfde518SThierry Reding		};
7538bfde518SThierry Reding
7548bfde518SThierry Reding		ports {
7558bfde518SThierry Reding			usb2-0 {
7568bfde518SThierry Reding				status = "disabled";
7578bfde518SThierry Reding			};
7588bfde518SThierry Reding
7598bfde518SThierry Reding			usb2-1 {
7608bfde518SThierry Reding				status = "disabled";
7618bfde518SThierry Reding			};
7628bfde518SThierry Reding
7638bfde518SThierry Reding			usb2-2 {
7648bfde518SThierry Reding				status = "disabled";
7658bfde518SThierry Reding			};
7668bfde518SThierry Reding
7678bfde518SThierry Reding			hsic-0 {
7688bfde518SThierry Reding				status = "disabled";
7698bfde518SThierry Reding			};
7708bfde518SThierry Reding
7718bfde518SThierry Reding			usb3-0 {
7728bfde518SThierry Reding				status = "disabled";
7738bfde518SThierry Reding			};
7748bfde518SThierry Reding
7758bfde518SThierry Reding			usb3-1 {
7768bfde518SThierry Reding				status = "disabled";
7778bfde518SThierry Reding			};
7788bfde518SThierry Reding
7798bfde518SThierry Reding			usb3-2 {
7808bfde518SThierry Reding				status = "disabled";
7818bfde518SThierry Reding			};
7828bfde518SThierry Reding		};
7838bfde518SThierry Reding	};
7848bfde518SThierry Reding
7858bfde518SThierry Reding	usb@3530000 {
7868bfde518SThierry Reding		compatible = "nvidia,tegra186-xusb";
7878bfde518SThierry Reding		reg = <0x0 0x03530000 0x0 0x8000>,
7888bfde518SThierry Reding		      <0x0 0x03538000 0x0 0x1000>;
7898bfde518SThierry Reding		reg-names = "hcd", "fpci";
7908bfde518SThierry Reding		interrupts = <GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>,
791a5742139SThierry Reding			     <GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>;
7928bfde518SThierry Reding		clocks = <&bpmp TEGRA186_CLK_XUSB_HOST>,
7938bfde518SThierry Reding			 <&bpmp TEGRA186_CLK_XUSB_FALCON>,
7948bfde518SThierry Reding			 <&bpmp TEGRA186_CLK_XUSB_SS>,
7958bfde518SThierry Reding			 <&bpmp TEGRA186_CLK_XUSB_CORE_SS>,
7968bfde518SThierry Reding			 <&bpmp TEGRA186_CLK_CLK_M>,
7978bfde518SThierry Reding			 <&bpmp TEGRA186_CLK_XUSB_FS>,
7988bfde518SThierry Reding			 <&bpmp TEGRA186_CLK_PLLU>,
7998bfde518SThierry Reding			 <&bpmp TEGRA186_CLK_CLK_M>,
8008bfde518SThierry Reding			 <&bpmp TEGRA186_CLK_PLLE>;
8018bfde518SThierry Reding		clock-names = "xusb_host", "xusb_falcon_src", "xusb_ss",
8028bfde518SThierry Reding			      "xusb_ss_src", "xusb_hs_src", "xusb_fs_src",
8038bfde518SThierry Reding			      "pll_u_480m", "clk_m", "pll_e";
8048bfde518SThierry Reding		power-domains = <&bpmp TEGRA186_POWER_DOMAIN_XUSBC>,
8058bfde518SThierry Reding				<&bpmp TEGRA186_POWER_DOMAIN_XUSBA>;
8068bfde518SThierry Reding		power-domain-names = "xusb_host", "xusb_ss";
807954490b3SThierry Reding		interconnects = <&mc TEGRA186_MEMORY_CLIENT_XUSB_HOSTR &emc>,
808954490b3SThierry Reding				<&mc TEGRA186_MEMORY_CLIENT_XUSB_HOSTW &emc>;
809954490b3SThierry Reding		interconnect-names = "dma-mem", "write";
81006c6b06fSThierry Reding		iommus = <&smmu TEGRA186_SID_XUSB_HOST>;
8118bfde518SThierry Reding		#address-cells = <1>;
8128bfde518SThierry Reding		#size-cells = <0>;
81306c6b06fSThierry Reding		status = "disabled";
81406c6b06fSThierry Reding
81506c6b06fSThierry Reding		nvidia,xusb-padctl = <&padctl>;
8168bfde518SThierry Reding	};
8178bfde518SThierry Reding
818584f800cSNagarjuna Kristam	usb@3550000 {
819584f800cSNagarjuna Kristam		compatible = "nvidia,tegra186-xudc";
820584f800cSNagarjuna Kristam		reg = <0x0 0x03550000 0x0 0x8000>,
821584f800cSNagarjuna Kristam		      <0x0 0x03558000 0x0 0x1000>;
822584f800cSNagarjuna Kristam		reg-names = "base", "fpci";
823584f800cSNagarjuna Kristam		interrupts = <GIC_SPI 166 IRQ_TYPE_LEVEL_HIGH>;
824584f800cSNagarjuna Kristam		clocks = <&bpmp TEGRA186_CLK_XUSB_CORE_DEV>,
825584f800cSNagarjuna Kristam			 <&bpmp TEGRA186_CLK_XUSB_SS>,
826584f800cSNagarjuna Kristam			 <&bpmp TEGRA186_CLK_XUSB_CORE_SS>,
827584f800cSNagarjuna Kristam			 <&bpmp TEGRA186_CLK_XUSB_FS>;
828584f800cSNagarjuna Kristam		clock-names = "dev", "ss", "ss_src", "fs_src";
829584f800cSNagarjuna Kristam		iommus = <&smmu TEGRA186_SID_XUSB_DEV>;
830584f800cSNagarjuna Kristam		power-domains = <&bpmp TEGRA186_POWER_DOMAIN_XUSBB>,
831584f800cSNagarjuna Kristam				<&bpmp TEGRA186_POWER_DOMAIN_XUSBA>;
832584f800cSNagarjuna Kristam		power-domain-names = "dev", "ss";
833584f800cSNagarjuna Kristam		nvidia,xusb-padctl = <&padctl>;
834584f800cSNagarjuna Kristam		status = "disabled";
835584f800cSNagarjuna Kristam	};
836584f800cSNagarjuna Kristam
83785593b75SThierry Reding	fuse@3820000 {
83885593b75SThierry Reding		compatible = "nvidia,tegra186-efuse";
83985593b75SThierry Reding		reg = <0x0 0x03820000 0x0 0x10000>;
84085593b75SThierry Reding		clocks = <&bpmp TEGRA186_CLK_FUSE>;
84185593b75SThierry Reding		clock-names = "fuse";
84285593b75SThierry Reding	};
84385593b75SThierry Reding
84439cb62cbSJoseph Lo	gic: interrupt-controller@3881000 {
84539cb62cbSJoseph Lo		compatible = "arm,gic-400";
84639cb62cbSJoseph Lo		#interrupt-cells = <3>;
84739cb62cbSJoseph Lo		interrupt-controller;
84839cb62cbSJoseph Lo		reg = <0x0 0x03881000 0x0 0x1000>,
849776a3c04SMarc Zyngier		      <0x0 0x03882000 0x0 0x2000>,
850776a3c04SMarc Zyngier		      <0x0 0x03884000 0x0 0x2000>,
851776a3c04SMarc Zyngier		      <0x0 0x03886000 0x0 0x2000>;
85239cb62cbSJoseph Lo		interrupts = <GIC_PPI 9
85339cb62cbSJoseph Lo			(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
85439cb62cbSJoseph Lo		interrupt-parent = <&gic>;
85539cb62cbSJoseph Lo	};
85639cb62cbSJoseph Lo
85797cf683cSThierry Reding	cec@3960000 {
85897cf683cSThierry Reding		compatible = "nvidia,tegra186-cec";
85997cf683cSThierry Reding		reg = <0x0 0x03960000 0x0 0x10000>;
86097cf683cSThierry Reding		interrupts = <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>;
86197cf683cSThierry Reding		clocks = <&bpmp TEGRA186_CLK_CEC>;
86297cf683cSThierry Reding		clock-names = "cec";
86397cf683cSThierry Reding		status = "disabled";
86497cf683cSThierry Reding	};
86597cf683cSThierry Reding
86639cb62cbSJoseph Lo	hsp_top0: hsp@3c00000 {
86739cb62cbSJoseph Lo		compatible = "nvidia,tegra186-hsp";
86839cb62cbSJoseph Lo		reg = <0x0 0x03c00000 0x0 0xa0000>;
86939cb62cbSJoseph Lo		interrupts = <GIC_SPI 176 IRQ_TYPE_LEVEL_HIGH>;
87039cb62cbSJoseph Lo		interrupt-names = "doorbell";
87139cb62cbSJoseph Lo		#mbox-cells = <2>;
87239cb62cbSJoseph Lo		status = "disabled";
87339cb62cbSJoseph Lo	};
87439cb62cbSJoseph Lo
87540cc83b3SThierry Reding	gen2_i2c: i2c@c240000 {
876250a36c0SSowjanya Komatineni		compatible = "nvidia,tegra186-i2c", "nvidia,tegra210-i2c";
87740cc83b3SThierry Reding		reg = <0x0 0x0c240000 0x0 0x10000>;
87840cc83b3SThierry Reding		interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>;
87940cc83b3SThierry Reding		#address-cells = <1>;
88040cc83b3SThierry Reding		#size-cells = <0>;
881c58f5f88SThierry Reding		clocks = <&bpmp TEGRA186_CLK_I2C2>;
88240cc83b3SThierry Reding		clock-names = "div-clk";
8837bcf2664SThierry Reding		resets = <&bpmp TEGRA186_RESET_I2C2>;
88440cc83b3SThierry Reding		reset-names = "i2c";
88540cc83b3SThierry Reding		status = "disabled";
88640cc83b3SThierry Reding	};
88740cc83b3SThierry Reding
88840cc83b3SThierry Reding	gen8_i2c: i2c@c250000 {
889250a36c0SSowjanya Komatineni		compatible = "nvidia,tegra186-i2c", "nvidia,tegra210-i2c";
89040cc83b3SThierry Reding		reg = <0x0 0x0c250000 0x0 0x10000>;
89140cc83b3SThierry Reding		interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
89240cc83b3SThierry Reding		#address-cells = <1>;
89340cc83b3SThierry Reding		#size-cells = <0>;
894c58f5f88SThierry Reding		clocks = <&bpmp TEGRA186_CLK_I2C8>;
89540cc83b3SThierry Reding		clock-names = "div-clk";
8967bcf2664SThierry Reding		resets = <&bpmp TEGRA186_RESET_I2C8>;
89740cc83b3SThierry Reding		reset-names = "i2c";
89840cc83b3SThierry Reding		status = "disabled";
89940cc83b3SThierry Reding	};
90040cc83b3SThierry Reding
901a7a77e2eSThierry Reding	uartc: serial@c280000 {
902a7a77e2eSThierry Reding		compatible = "nvidia,tegra186-uart", "nvidia,tegra20-uart";
903a7a77e2eSThierry Reding		reg = <0x0 0x0c280000 0x0 0x40>;
904a7a77e2eSThierry Reding		reg-shift = <2>;
905a7a77e2eSThierry Reding		interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>;
906c58f5f88SThierry Reding		clocks = <&bpmp TEGRA186_CLK_UARTC>;
907a7a77e2eSThierry Reding		clock-names = "serial";
9087bcf2664SThierry Reding		resets = <&bpmp TEGRA186_RESET_UARTC>;
909a7a77e2eSThierry Reding		reset-names = "serial";
910a7a77e2eSThierry Reding		status = "disabled";
911a7a77e2eSThierry Reding	};
912a7a77e2eSThierry Reding
913a7a77e2eSThierry Reding	uartg: serial@c290000 {
914a7a77e2eSThierry Reding		compatible = "nvidia,tegra186-uart", "nvidia,tegra20-uart";
915a7a77e2eSThierry Reding		reg = <0x0 0x0c290000 0x0 0x40>;
916a7a77e2eSThierry Reding		reg-shift = <2>;
917a7a77e2eSThierry Reding		interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>;
918c58f5f88SThierry Reding		clocks = <&bpmp TEGRA186_CLK_UARTG>;
919a7a77e2eSThierry Reding		clock-names = "serial";
9207bcf2664SThierry Reding		resets = <&bpmp TEGRA186_RESET_UARTG>;
921a7a77e2eSThierry Reding		reset-names = "serial";
922a7a77e2eSThierry Reding		status = "disabled";
923a7a77e2eSThierry Reding	};
924a7a77e2eSThierry Reding
9259733a251SThierry Reding	rtc: rtc@c2a0000 {
9269733a251SThierry Reding		compatible = "nvidia,tegra186-rtc", "nvidia,tegra20-rtc";
9279733a251SThierry Reding		reg = <0 0x0c2a0000 0 0x10000>;
9289733a251SThierry Reding		interrupt-parent = <&pmc>;
9299733a251SThierry Reding		interrupts = <73 IRQ_TYPE_LEVEL_HIGH>;
9309733a251SThierry Reding		clocks = <&bpmp TEGRA186_CLK_CLK_32K>;
9319733a251SThierry Reding		clock-names = "rtc";
9329733a251SThierry Reding		status = "disabled";
9339733a251SThierry Reding	};
9349733a251SThierry Reding
935fc4bb754SThierry Reding	gpio_aon: gpio@c2f0000 {
936fc4bb754SThierry Reding		compatible = "nvidia,tegra186-gpio-aon";
937fc4bb754SThierry Reding		reg-names = "security", "gpio";
938fc4bb754SThierry Reding		reg = <0x0 0xc2f0000 0x0 0x1000>,
939fc4bb754SThierry Reding		      <0x0 0xc2f1000 0x0 0x1000>;
940fc4bb754SThierry Reding		interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>;
941fc4bb754SThierry Reding		gpio-controller;
942fc4bb754SThierry Reding		#gpio-cells = <2>;
943fc4bb754SThierry Reding		interrupt-controller;
944fc4bb754SThierry Reding		#interrupt-cells = <2>;
945fc4bb754SThierry Reding	};
946fc4bb754SThierry Reding
94732e66e46SThierry Reding	pmc: pmc@c360000 {
94873bf90d4SThierry Reding		compatible = "nvidia,tegra186-pmc";
94973bf90d4SThierry Reding		reg = <0 0x0c360000 0 0x10000>,
95073bf90d4SThierry Reding		      <0 0x0c370000 0 0x10000>,
95173bf90d4SThierry Reding		      <0 0x0c380000 0 0x10000>,
95273bf90d4SThierry Reding		      <0 0x0c390000 0 0x10000>;
95373bf90d4SThierry Reding		reg-names = "pmc", "wake", "aotag", "scratch";
95424005fd1SAapo Vienamo
95532e66e46SThierry Reding		#interrupt-cells = <2>;
95632e66e46SThierry Reding		interrupt-controller;
95732e66e46SThierry Reding
95824005fd1SAapo Vienamo		sdmmc1_3v3: sdmmc1-3v3 {
95924005fd1SAapo Vienamo			pins = "sdmmc1-hv";
96024005fd1SAapo Vienamo			power-source = <TEGRA_IO_PAD_VOLTAGE_3V3>;
96124005fd1SAapo Vienamo		};
96224005fd1SAapo Vienamo
96324005fd1SAapo Vienamo		sdmmc1_1v8: sdmmc1-1v8 {
96424005fd1SAapo Vienamo			pins = "sdmmc1-hv";
96524005fd1SAapo Vienamo			power-source = <TEGRA_IO_PAD_VOLTAGE_1V8>;
96624005fd1SAapo Vienamo		};
96724005fd1SAapo Vienamo
96824005fd1SAapo Vienamo		sdmmc2_3v3: sdmmc2-3v3 {
96924005fd1SAapo Vienamo			pins = "sdmmc2-hv";
97024005fd1SAapo Vienamo			power-source = <TEGRA_IO_PAD_VOLTAGE_3V3>;
97124005fd1SAapo Vienamo		};
97224005fd1SAapo Vienamo
97324005fd1SAapo Vienamo		sdmmc2_1v8: sdmmc2-1v8 {
97424005fd1SAapo Vienamo			pins = "sdmmc2-hv";
97524005fd1SAapo Vienamo			power-source = <TEGRA_IO_PAD_VOLTAGE_1V8>;
97624005fd1SAapo Vienamo		};
97724005fd1SAapo Vienamo
97824005fd1SAapo Vienamo		sdmmc3_3v3: sdmmc3-3v3 {
97924005fd1SAapo Vienamo			pins = "sdmmc3-hv";
98024005fd1SAapo Vienamo			power-source = <TEGRA_IO_PAD_VOLTAGE_3V3>;
98124005fd1SAapo Vienamo		};
98224005fd1SAapo Vienamo
98324005fd1SAapo Vienamo		sdmmc3_1v8: sdmmc3-1v8 {
98424005fd1SAapo Vienamo			pins = "sdmmc3-hv";
98524005fd1SAapo Vienamo			power-source = <TEGRA_IO_PAD_VOLTAGE_1V8>;
98624005fd1SAapo Vienamo		};
98773bf90d4SThierry Reding	};
98873bf90d4SThierry Reding
9897b7ef494SMikko Perttunen	ccplex@e000000 {
9907b7ef494SMikko Perttunen		compatible = "nvidia,tegra186-ccplex-cluster";
9917b7ef494SMikko Perttunen		reg = <0x0 0x0e000000 0x0 0x3fffff>;
9927b7ef494SMikko Perttunen
9937b7ef494SMikko Perttunen		nvidia,bpmp = <&bpmp>;
9947b7ef494SMikko Perttunen	};
9957b7ef494SMikko Perttunen
996f8973cf4SManikanta Maddireddy	pcie@10003000 {
997f8973cf4SManikanta Maddireddy		compatible = "nvidia,tegra186-pcie";
998f8973cf4SManikanta Maddireddy		power-domains = <&bpmp TEGRA186_POWER_DOMAIN_PCX>;
999f8973cf4SManikanta Maddireddy		device_type = "pci";
1000644c569dSThierry Reding		reg = <0x0 0x10003000 0x0 0x00000800>, /* PADS registers */
1001644c569dSThierry Reding		      <0x0 0x10003800 0x0 0x00000800>, /* AFI registers */
1002644c569dSThierry Reding		      <0x0 0x40000000 0x0 0x10000000>; /* configuration space */
1003f8973cf4SManikanta Maddireddy		reg-names = "pads", "afi", "cs";
1004f8973cf4SManikanta Maddireddy
1005f8973cf4SManikanta Maddireddy		interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>, /* controller interrupt */
1006f8973cf4SManikanta Maddireddy			     <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; /* MSI interrupt */
1007f8973cf4SManikanta Maddireddy		interrupt-names = "intr", "msi";
1008f8973cf4SManikanta Maddireddy
1009f8973cf4SManikanta Maddireddy		#interrupt-cells = <1>;
1010f8973cf4SManikanta Maddireddy		interrupt-map-mask = <0 0 0 0>;
1011f8973cf4SManikanta Maddireddy		interrupt-map = <0 0 0 0 &gic GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
1012f8973cf4SManikanta Maddireddy
1013f8973cf4SManikanta Maddireddy		bus-range = <0x00 0xff>;
1014f8973cf4SManikanta Maddireddy		#address-cells = <3>;
1015f8973cf4SManikanta Maddireddy		#size-cells = <2>;
1016f8973cf4SManikanta Maddireddy
1017644c569dSThierry Reding		ranges = <0x02000000 0 0x10000000 0x0 0x10000000 0 0x00001000>, /* port 0 configuration space */
1018644c569dSThierry Reding			 <0x02000000 0 0x10001000 0x0 0x10001000 0 0x00001000>,/* port 1 configuration space */
1019644c569dSThierry Reding			 <0x02000000 0 0x10004000 0x0 0x10004000 0 0x00001000>, /* port 2 configuration space */
1020644c569dSThierry Reding			 <0x01000000 0 0x0        0x0 0x50000000 0 0x00010000>, /* downstream I/O (64 KiB) */
1021644c569dSThierry Reding			 <0x02000000 0 0x50100000 0x0 0x50100000 0 0x07f00000>, /* non-prefetchable memory (127 MiB) */
1022644c569dSThierry Reding			 <0x42000000 0 0x58000000 0x0 0x58000000 0 0x28000000>; /* prefetchable memory (640 MiB) */
1023f8973cf4SManikanta Maddireddy
102478b9bad6SThierry Reding		clocks = <&bpmp TEGRA186_CLK_PCIE>,
102578b9bad6SThierry Reding			 <&bpmp TEGRA186_CLK_AFI>,
1026f8973cf4SManikanta Maddireddy			 <&bpmp TEGRA186_CLK_PLLE>;
102778b9bad6SThierry Reding		clock-names = "pex", "afi", "pll_e";
1028f8973cf4SManikanta Maddireddy
102978b9bad6SThierry Reding		resets = <&bpmp TEGRA186_RESET_PCIE>,
103078b9bad6SThierry Reding			 <&bpmp TEGRA186_RESET_AFI>,
1031f8973cf4SManikanta Maddireddy			 <&bpmp TEGRA186_RESET_PCIEXCLK>;
103278b9bad6SThierry Reding		reset-names = "pex", "afi", "pcie_x";
1033f8973cf4SManikanta Maddireddy
1034954490b3SThierry Reding		interconnects = <&mc TEGRA186_MEMORY_CLIENT_AFIR &emc>,
1035954490b3SThierry Reding				<&mc TEGRA186_MEMORY_CLIENT_AFIW &emc>;
1036954490b3SThierry Reding		interconnect-names = "dma-mem", "write";
1037954490b3SThierry Reding
1038f2a465e7SThierry Reding		iommus = <&smmu TEGRA186_SID_AFI>;
1039f2a465e7SThierry Reding		iommu-map = <0x0 &smmu TEGRA186_SID_AFI 0x1000>;
1040f2a465e7SThierry Reding		iommu-map-mask = <0x0>;
1041f2a465e7SThierry Reding
1042f8973cf4SManikanta Maddireddy		status = "disabled";
1043f8973cf4SManikanta Maddireddy
1044f8973cf4SManikanta Maddireddy		pci@1,0 {
1045f8973cf4SManikanta Maddireddy			device_type = "pci";
1046f8973cf4SManikanta Maddireddy			assigned-addresses = <0x82000800 0 0x10000000 0 0x1000>;
1047f8973cf4SManikanta Maddireddy			reg = <0x000800 0 0 0 0>;
1048f8973cf4SManikanta Maddireddy			status = "disabled";
1049f8973cf4SManikanta Maddireddy
1050f8973cf4SManikanta Maddireddy			#address-cells = <3>;
1051f8973cf4SManikanta Maddireddy			#size-cells = <2>;
1052f8973cf4SManikanta Maddireddy			ranges;
1053f8973cf4SManikanta Maddireddy
1054f8973cf4SManikanta Maddireddy			nvidia,num-lanes = <2>;
1055f8973cf4SManikanta Maddireddy		};
1056f8973cf4SManikanta Maddireddy
1057f8973cf4SManikanta Maddireddy		pci@2,0 {
1058f8973cf4SManikanta Maddireddy			device_type = "pci";
1059f8973cf4SManikanta Maddireddy			assigned-addresses = <0x82001000 0 0x10001000 0 0x1000>;
1060f8973cf4SManikanta Maddireddy			reg = <0x001000 0 0 0 0>;
1061f8973cf4SManikanta Maddireddy			status = "disabled";
1062f8973cf4SManikanta Maddireddy
1063f8973cf4SManikanta Maddireddy			#address-cells = <3>;
1064f8973cf4SManikanta Maddireddy			#size-cells = <2>;
1065f8973cf4SManikanta Maddireddy			ranges;
1066f8973cf4SManikanta Maddireddy
1067f8973cf4SManikanta Maddireddy			nvidia,num-lanes = <1>;
1068f8973cf4SManikanta Maddireddy		};
1069f8973cf4SManikanta Maddireddy
1070f8973cf4SManikanta Maddireddy		pci@3,0 {
1071f8973cf4SManikanta Maddireddy			device_type = "pci";
1072f8973cf4SManikanta Maddireddy			assigned-addresses = <0x82001800 0 0x10004000 0 0x1000>;
1073f8973cf4SManikanta Maddireddy			reg = <0x001800 0 0 0 0>;
1074f8973cf4SManikanta Maddireddy			status = "disabled";
1075f8973cf4SManikanta Maddireddy
1076f8973cf4SManikanta Maddireddy			#address-cells = <3>;
1077f8973cf4SManikanta Maddireddy			#size-cells = <2>;
1078f8973cf4SManikanta Maddireddy			ranges;
1079f8973cf4SManikanta Maddireddy
1080f8973cf4SManikanta Maddireddy			nvidia,num-lanes = <1>;
1081f8973cf4SManikanta Maddireddy		};
1082f8973cf4SManikanta Maddireddy	};
1083f8973cf4SManikanta Maddireddy
1084b30a8e61SThierry Reding	smmu: iommu@12000000 {
1085*bb84a31bSThierry Reding		compatible = "nvidia,tegra186-smmu", "nvidia,smmu-500";
1086b30a8e61SThierry Reding		reg = <0 0x12000000 0 0x800000>;
1087b30a8e61SThierry Reding		interrupts = <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1088b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1089b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1090b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1091b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1092b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1093b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1094b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1095b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1096b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1097b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1098b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1099b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1100b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1101b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1102b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1103b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1104b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1105b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1106b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1107b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1108b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1109b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1110b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1111b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1112b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1113b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1114b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1115b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1116b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1117b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1118b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1119b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1120b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1121b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1122b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1123b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1124b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1125b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1126b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1127b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1128b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1129b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1130b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1131b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1132b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1133b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1134b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1135b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1136b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1137b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1138b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1139b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1140b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1141b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1142b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1143b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1144b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1145b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1146b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1147b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1148b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1149b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1150b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
1151b30a8e61SThierry Reding			     <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>;
1152b30a8e61SThierry Reding		stream-match-mask = <0x7f80>;
1153b30a8e61SThierry Reding		#global-interrupts = <1>;
1154b30a8e61SThierry Reding		#iommu-cells = <1>;
1155b30a8e61SThierry Reding	};
1156b30a8e61SThierry Reding
11575524c61fSMikko Perttunen	host1x@13e00000 {
1158ef126bc4SThierry Reding		compatible = "nvidia,tegra186-host1x";
11595524c61fSMikko Perttunen		reg = <0x0 0x13e00000 0x0 0x10000>,
11605524c61fSMikko Perttunen		      <0x0 0x13e10000 0x0 0x10000>;
11615524c61fSMikko Perttunen		reg-names = "hypervisor", "vm";
11625524c61fSMikko Perttunen		interrupts = <GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH>,
11635524c61fSMikko Perttunen		             <GIC_SPI 263 IRQ_TYPE_LEVEL_HIGH>;
1164052d3f65SThierry Reding		interrupt-names = "syncpt", "host1x";
11655524c61fSMikko Perttunen		clocks = <&bpmp TEGRA186_CLK_HOST1X>;
11665524c61fSMikko Perttunen		clock-names = "host1x";
11675524c61fSMikko Perttunen		resets = <&bpmp TEGRA186_RESET_HOST1X>;
11685524c61fSMikko Perttunen		reset-names = "host1x";
11695524c61fSMikko Perttunen
11705524c61fSMikko Perttunen		#address-cells = <1>;
11715524c61fSMikko Perttunen		#size-cells = <1>;
11725524c61fSMikko Perttunen
11735524c61fSMikko Perttunen		ranges = <0x15000000 0x0 0x15000000 0x01000000>;
1174954490b3SThierry Reding
1175954490b3SThierry Reding		interconnects = <&mc TEGRA186_MEMORY_CLIENT_HOST1XDMAR &emc>;
1176954490b3SThierry Reding		interconnect-names = "dma-mem";
1177954490b3SThierry Reding
1178c2599da7SThierry Reding		iommus = <&smmu TEGRA186_SID_HOST1X>;
1179c2599da7SThierry Reding
1180c2599da7SThierry Reding		dpaux1: dpaux@15040000 {
1181c2599da7SThierry Reding			compatible = "nvidia,tegra186-dpaux";
1182c2599da7SThierry Reding			reg = <0x15040000 0x10000>;
1183c2599da7SThierry Reding			interrupts = <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>;
1184c2599da7SThierry Reding			clocks = <&bpmp TEGRA186_CLK_DPAUX1>,
1185c2599da7SThierry Reding				 <&bpmp TEGRA186_CLK_PLLDP>;
1186c2599da7SThierry Reding			clock-names = "dpaux", "parent";
1187c2599da7SThierry Reding			resets = <&bpmp TEGRA186_RESET_DPAUX1>;
1188c2599da7SThierry Reding			reset-names = "dpaux";
1189c2599da7SThierry Reding			status = "disabled";
1190c2599da7SThierry Reding
1191c2599da7SThierry Reding			power-domains = <&bpmp TEGRA186_POWER_DOMAIN_DISP>;
1192c2599da7SThierry Reding
1193c2599da7SThierry Reding			state_dpaux1_aux: pinmux-aux {
1194c2599da7SThierry Reding				groups = "dpaux-io";
1195c2599da7SThierry Reding				function = "aux";
1196c2599da7SThierry Reding			};
1197c2599da7SThierry Reding
1198c2599da7SThierry Reding			state_dpaux1_i2c: pinmux-i2c {
1199c2599da7SThierry Reding				groups = "dpaux-io";
1200c2599da7SThierry Reding				function = "i2c";
1201c2599da7SThierry Reding			};
1202c2599da7SThierry Reding
1203c2599da7SThierry Reding			state_dpaux1_off: pinmux-off {
1204c2599da7SThierry Reding				groups = "dpaux-io";
1205c2599da7SThierry Reding				function = "off";
1206c2599da7SThierry Reding			};
1207c2599da7SThierry Reding
1208c2599da7SThierry Reding			i2c-bus {
1209c2599da7SThierry Reding				#address-cells = <1>;
1210c2599da7SThierry Reding				#size-cells = <0>;
1211c2599da7SThierry Reding			};
1212c2599da7SThierry Reding		};
1213c2599da7SThierry Reding
1214c2599da7SThierry Reding		display-hub@15200000 {
1215aa342b53SThierry Reding			compatible = "nvidia,tegra186-display";
1216ffa1ad89SThierry Reding			reg = <0x15200000 0x00040000>;
1217c2599da7SThierry Reding			resets = <&bpmp TEGRA186_RESET_NVDISPLAY0_MISC>,
1218c2599da7SThierry Reding				 <&bpmp TEGRA186_RESET_NVDISPLAY0_WGRP0>,
1219c2599da7SThierry Reding				 <&bpmp TEGRA186_RESET_NVDISPLAY0_WGRP1>,
1220c2599da7SThierry Reding				 <&bpmp TEGRA186_RESET_NVDISPLAY0_WGRP2>,
1221c2599da7SThierry Reding				 <&bpmp TEGRA186_RESET_NVDISPLAY0_WGRP3>,
1222c2599da7SThierry Reding				 <&bpmp TEGRA186_RESET_NVDISPLAY0_WGRP4>,
1223c2599da7SThierry Reding				 <&bpmp TEGRA186_RESET_NVDISPLAY0_WGRP5>;
1224c2599da7SThierry Reding			reset-names = "misc", "wgrp0", "wgrp1", "wgrp2",
1225c2599da7SThierry Reding				      "wgrp3", "wgrp4", "wgrp5";
1226c2599da7SThierry Reding			clocks = <&bpmp TEGRA186_CLK_NVDISPLAY_DISP>,
1227c2599da7SThierry Reding				 <&bpmp TEGRA186_CLK_NVDISPLAY_DSC>,
1228c2599da7SThierry Reding				 <&bpmp TEGRA186_CLK_NVDISPLAYHUB>;
1229c2599da7SThierry Reding			clock-names = "disp", "dsc", "hub";
1230c2599da7SThierry Reding			status = "disabled";
1231c2599da7SThierry Reding
1232c2599da7SThierry Reding			power-domains = <&bpmp TEGRA186_POWER_DOMAIN_DISP>;
1233c2599da7SThierry Reding
1234c2599da7SThierry Reding			#address-cells = <1>;
1235c2599da7SThierry Reding			#size-cells = <1>;
1236c2599da7SThierry Reding
1237c2599da7SThierry Reding			ranges = <0x15200000 0x15200000 0x40000>;
1238c2599da7SThierry Reding
1239c2599da7SThierry Reding			display@15200000 {
1240c2599da7SThierry Reding				compatible = "nvidia,tegra186-dc";
1241c2599da7SThierry Reding				reg = <0x15200000 0x10000>;
1242c2599da7SThierry Reding				interrupts = <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>;
1243c2599da7SThierry Reding				clocks = <&bpmp TEGRA186_CLK_NVDISPLAY_P0>;
1244c2599da7SThierry Reding				clock-names = "dc";
1245c2599da7SThierry Reding				resets = <&bpmp TEGRA186_RESET_NVDISPLAY0_HEAD0>;
1246c2599da7SThierry Reding				reset-names = "dc";
1247c2599da7SThierry Reding
1248c2599da7SThierry Reding				power-domains = <&bpmp TEGRA186_POWER_DOMAIN_DISP>;
1249954490b3SThierry Reding				interconnects = <&mc TEGRA186_MEMORY_CLIENT_NVDISPLAYR &emc>,
1250954490b3SThierry Reding						<&mc TEGRA186_MEMORY_CLIENT_NVDISPLAYR1 &emc>;
1251954490b3SThierry Reding				interconnect-names = "dma-mem", "read-1";
1252c2599da7SThierry Reding				iommus = <&smmu TEGRA186_SID_NVDISPLAY>;
1253c2599da7SThierry Reding
1254c2599da7SThierry Reding				nvidia,outputs = <&dsia &dsib &sor0 &sor1>;
1255c2599da7SThierry Reding				nvidia,head = <0>;
1256c2599da7SThierry Reding			};
1257c2599da7SThierry Reding
1258c2599da7SThierry Reding			display@15210000 {
1259c2599da7SThierry Reding				compatible = "nvidia,tegra186-dc";
1260c2599da7SThierry Reding				reg = <0x15210000 0x10000>;
1261c2599da7SThierry Reding				interrupts = <GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>;
1262c2599da7SThierry Reding				clocks = <&bpmp TEGRA186_CLK_NVDISPLAY_P1>;
1263c2599da7SThierry Reding				clock-names = "dc";
1264c2599da7SThierry Reding				resets = <&bpmp TEGRA186_RESET_NVDISPLAY0_HEAD1>;
1265c2599da7SThierry Reding				reset-names = "dc";
1266c2599da7SThierry Reding
1267c2599da7SThierry Reding				power-domains = <&bpmp TEGRA186_POWER_DOMAIN_DISPB>;
1268954490b3SThierry Reding				interconnects = <&mc TEGRA186_MEMORY_CLIENT_NVDISPLAYR &emc>,
1269954490b3SThierry Reding						<&mc TEGRA186_MEMORY_CLIENT_NVDISPLAYR1 &emc>;
1270954490b3SThierry Reding				interconnect-names = "dma-mem", "read-1";
1271c2599da7SThierry Reding				iommus = <&smmu TEGRA186_SID_NVDISPLAY>;
1272c2599da7SThierry Reding
1273c2599da7SThierry Reding				nvidia,outputs = <&dsia &dsib &sor0 &sor1>;
1274c2599da7SThierry Reding				nvidia,head = <1>;
1275c2599da7SThierry Reding			};
1276c2599da7SThierry Reding
1277c2599da7SThierry Reding			display@15220000 {
1278c2599da7SThierry Reding				compatible = "nvidia,tegra186-dc";
1279c2599da7SThierry Reding				reg = <0x15220000 0x10000>;
1280c2599da7SThierry Reding				interrupts = <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>;
1281c2599da7SThierry Reding				clocks = <&bpmp TEGRA186_CLK_NVDISPLAY_P2>;
1282c2599da7SThierry Reding				clock-names = "dc";
1283c2599da7SThierry Reding				resets = <&bpmp TEGRA186_RESET_NVDISPLAY0_HEAD2>;
1284c2599da7SThierry Reding				reset-names = "dc";
1285c2599da7SThierry Reding
1286c2599da7SThierry Reding				power-domains = <&bpmp TEGRA186_POWER_DOMAIN_DISPC>;
1287954490b3SThierry Reding				interconnects = <&mc TEGRA186_MEMORY_CLIENT_NVDISPLAYR &emc>,
1288954490b3SThierry Reding						<&mc TEGRA186_MEMORY_CLIENT_NVDISPLAYR1 &emc>;
1289954490b3SThierry Reding				interconnect-names = "dma-mem", "read-1";
1290c2599da7SThierry Reding				iommus = <&smmu TEGRA186_SID_NVDISPLAY>;
1291c2599da7SThierry Reding
1292c2599da7SThierry Reding				nvidia,outputs = <&sor0 &sor1>;
1293c2599da7SThierry Reding				nvidia,head = <2>;
1294c2599da7SThierry Reding			};
1295c2599da7SThierry Reding		};
1296c2599da7SThierry Reding
1297c2599da7SThierry Reding		dsia: dsi@15300000 {
1298c2599da7SThierry Reding			compatible = "nvidia,tegra186-dsi";
1299c2599da7SThierry Reding			reg = <0x15300000 0x10000>;
1300c2599da7SThierry Reding			interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
1301c2599da7SThierry Reding			clocks = <&bpmp TEGRA186_CLK_DSI>,
1302c2599da7SThierry Reding				 <&bpmp TEGRA186_CLK_DSIA_LP>,
1303c2599da7SThierry Reding				 <&bpmp TEGRA186_CLK_PLLD>;
1304c2599da7SThierry Reding			clock-names = "dsi", "lp", "parent";
1305c2599da7SThierry Reding			resets = <&bpmp TEGRA186_RESET_DSI>;
1306c2599da7SThierry Reding			reset-names = "dsi";
1307c2599da7SThierry Reding			status = "disabled";
1308c2599da7SThierry Reding
1309c2599da7SThierry Reding			power-domains = <&bpmp TEGRA186_POWER_DOMAIN_DISP>;
1310c2599da7SThierry Reding		};
1311effc4b44SMikko Perttunen
1312effc4b44SMikko Perttunen		vic@15340000 {
1313effc4b44SMikko Perttunen			compatible = "nvidia,tegra186-vic";
1314effc4b44SMikko Perttunen			reg = <0x15340000 0x40000>;
1315effc4b44SMikko Perttunen			interrupts = <GIC_SPI 206 IRQ_TYPE_LEVEL_HIGH>;
1316effc4b44SMikko Perttunen			clocks = <&bpmp TEGRA186_CLK_VIC>;
1317effc4b44SMikko Perttunen			clock-names = "vic";
1318effc4b44SMikko Perttunen			resets = <&bpmp TEGRA186_RESET_VIC>;
1319effc4b44SMikko Perttunen			reset-names = "vic";
1320effc4b44SMikko Perttunen
1321effc4b44SMikko Perttunen			power-domains = <&bpmp TEGRA186_POWER_DOMAIN_VIC>;
1322954490b3SThierry Reding			interconnects = <&mc TEGRA186_MEMORY_CLIENT_VICSRD &emc>,
1323954490b3SThierry Reding					<&mc TEGRA186_MEMORY_CLIENT_VICSWR &emc>;
1324954490b3SThierry Reding			interconnect-names = "dma-mem", "write";
132529ef1f4dSThierry Reding			iommus = <&smmu TEGRA186_SID_VIC>;
1326effc4b44SMikko Perttunen		};
1327c2599da7SThierry Reding
1328c2599da7SThierry Reding		dsib: dsi@15400000 {
1329c2599da7SThierry Reding			compatible = "nvidia,tegra186-dsi";
1330c2599da7SThierry Reding			reg = <0x15400000 0x10000>;
1331c2599da7SThierry Reding			interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>;
1332c2599da7SThierry Reding			clocks = <&bpmp TEGRA186_CLK_DSIB>,
1333c2599da7SThierry Reding				 <&bpmp TEGRA186_CLK_DSIB_LP>,
1334c2599da7SThierry Reding				 <&bpmp TEGRA186_CLK_PLLD>;
1335c2599da7SThierry Reding			clock-names = "dsi", "lp", "parent";
1336c2599da7SThierry Reding			resets = <&bpmp TEGRA186_RESET_DSIB>;
1337c2599da7SThierry Reding			reset-names = "dsi";
1338c2599da7SThierry Reding			status = "disabled";
1339c2599da7SThierry Reding
1340c2599da7SThierry Reding			power-domains = <&bpmp TEGRA186_POWER_DOMAIN_DISP>;
1341c2599da7SThierry Reding		};
1342c2599da7SThierry Reding
1343c2599da7SThierry Reding		sor0: sor@15540000 {
1344c2599da7SThierry Reding			compatible = "nvidia,tegra186-sor";
1345c2599da7SThierry Reding			reg = <0x15540000 0x10000>;
1346c2599da7SThierry Reding			interrupts = <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>;
1347c2599da7SThierry Reding			clocks = <&bpmp TEGRA186_CLK_SOR0>,
1348c2599da7SThierry Reding				 <&bpmp TEGRA186_CLK_SOR0_OUT>,
1349c2599da7SThierry Reding				 <&bpmp TEGRA186_CLK_PLLD2>,
1350c2599da7SThierry Reding				 <&bpmp TEGRA186_CLK_PLLDP>,
1351c2599da7SThierry Reding				 <&bpmp TEGRA186_CLK_SOR_SAFE>,
1352c2599da7SThierry Reding				 <&bpmp TEGRA186_CLK_SOR0_PAD_CLKOUT>;
1353c2599da7SThierry Reding			clock-names = "sor", "out", "parent", "dp", "safe",
1354c2599da7SThierry Reding				      "pad";
1355c2599da7SThierry Reding			resets = <&bpmp TEGRA186_RESET_SOR0>;
1356c2599da7SThierry Reding			reset-names = "sor";
1357c2599da7SThierry Reding			pinctrl-0 = <&state_dpaux_aux>;
1358c2599da7SThierry Reding			pinctrl-1 = <&state_dpaux_i2c>;
1359c2599da7SThierry Reding			pinctrl-2 = <&state_dpaux_off>;
1360c2599da7SThierry Reding			pinctrl-names = "aux", "i2c", "off";
1361c2599da7SThierry Reding			status = "disabled";
1362c2599da7SThierry Reding
1363c2599da7SThierry Reding			power-domains = <&bpmp TEGRA186_POWER_DOMAIN_DISP>;
1364c2599da7SThierry Reding			nvidia,interface = <0>;
1365c2599da7SThierry Reding		};
1366c2599da7SThierry Reding
1367c2599da7SThierry Reding		sor1: sor@15580000 {
1368d46d1eb3SThierry Reding			compatible = "nvidia,tegra186-sor";
1369c2599da7SThierry Reding			reg = <0x15580000 0x10000>;
1370c2599da7SThierry Reding			interrupts = <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>;
1371c2599da7SThierry Reding			clocks = <&bpmp TEGRA186_CLK_SOR1>,
1372c2599da7SThierry Reding				 <&bpmp TEGRA186_CLK_SOR1_OUT>,
1373c2599da7SThierry Reding				 <&bpmp TEGRA186_CLK_PLLD3>,
1374c2599da7SThierry Reding				 <&bpmp TEGRA186_CLK_PLLDP>,
1375c2599da7SThierry Reding				 <&bpmp TEGRA186_CLK_SOR_SAFE>,
1376c2599da7SThierry Reding				 <&bpmp TEGRA186_CLK_SOR1_PAD_CLKOUT>;
1377c2599da7SThierry Reding			clock-names = "sor", "out", "parent", "dp", "safe",
1378c2599da7SThierry Reding				      "pad";
1379c2599da7SThierry Reding			resets = <&bpmp TEGRA186_RESET_SOR1>;
1380c2599da7SThierry Reding			reset-names = "sor";
1381c2599da7SThierry Reding			pinctrl-0 = <&state_dpaux1_aux>;
1382c2599da7SThierry Reding			pinctrl-1 = <&state_dpaux1_i2c>;
1383c2599da7SThierry Reding			pinctrl-2 = <&state_dpaux1_off>;
1384c2599da7SThierry Reding			pinctrl-names = "aux", "i2c", "off";
1385c2599da7SThierry Reding			status = "disabled";
1386c2599da7SThierry Reding
1387c2599da7SThierry Reding			power-domains = <&bpmp TEGRA186_POWER_DOMAIN_DISP>;
1388c2599da7SThierry Reding			nvidia,interface = <1>;
1389c2599da7SThierry Reding		};
1390c2599da7SThierry Reding
1391c2599da7SThierry Reding		dpaux: dpaux@155c0000 {
1392c2599da7SThierry Reding			compatible = "nvidia,tegra186-dpaux";
1393c2599da7SThierry Reding			reg = <0x155c0000 0x10000>;
1394c2599da7SThierry Reding			interrupts = <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>;
1395c2599da7SThierry Reding			clocks = <&bpmp TEGRA186_CLK_DPAUX>,
1396c2599da7SThierry Reding				 <&bpmp TEGRA186_CLK_PLLDP>;
1397c2599da7SThierry Reding			clock-names = "dpaux", "parent";
1398c2599da7SThierry Reding			resets = <&bpmp TEGRA186_RESET_DPAUX>;
1399c2599da7SThierry Reding			reset-names = "dpaux";
1400c2599da7SThierry Reding			status = "disabled";
1401c2599da7SThierry Reding
1402c2599da7SThierry Reding			power-domains = <&bpmp TEGRA186_POWER_DOMAIN_DISP>;
1403c2599da7SThierry Reding
1404c2599da7SThierry Reding			state_dpaux_aux: pinmux-aux {
1405c2599da7SThierry Reding				groups = "dpaux-io";
1406c2599da7SThierry Reding				function = "aux";
1407c2599da7SThierry Reding			};
1408c2599da7SThierry Reding
1409c2599da7SThierry Reding			state_dpaux_i2c: pinmux-i2c {
1410c2599da7SThierry Reding				groups = "dpaux-io";
1411c2599da7SThierry Reding				function = "i2c";
1412c2599da7SThierry Reding			};
1413c2599da7SThierry Reding
1414c2599da7SThierry Reding			state_dpaux_off: pinmux-off {
1415c2599da7SThierry Reding				groups = "dpaux-io";
1416c2599da7SThierry Reding				function = "off";
1417c2599da7SThierry Reding			};
1418c2599da7SThierry Reding
1419c2599da7SThierry Reding			i2c-bus {
1420c2599da7SThierry Reding				#address-cells = <1>;
1421c2599da7SThierry Reding				#size-cells = <0>;
1422c2599da7SThierry Reding			};
1423c2599da7SThierry Reding		};
1424c2599da7SThierry Reding
1425c2599da7SThierry Reding		padctl@15880000 {
1426c2599da7SThierry Reding			compatible = "nvidia,tegra186-dsi-padctl";
1427c2599da7SThierry Reding			reg = <0x15880000 0x10000>;
1428c2599da7SThierry Reding			resets = <&bpmp TEGRA186_RESET_DSI>;
1429c2599da7SThierry Reding			reset-names = "dsi";
1430c2599da7SThierry Reding			status = "disabled";
1431c2599da7SThierry Reding		};
1432c2599da7SThierry Reding
1433c2599da7SThierry Reding		dsic: dsi@15900000 {
1434c2599da7SThierry Reding			compatible = "nvidia,tegra186-dsi";
1435c2599da7SThierry Reding			reg = <0x15900000 0x10000>;
1436c2599da7SThierry Reding			interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>;
1437c2599da7SThierry Reding			clocks = <&bpmp TEGRA186_CLK_DSIC>,
1438c2599da7SThierry Reding				 <&bpmp TEGRA186_CLK_DSIC_LP>,
1439c2599da7SThierry Reding				 <&bpmp TEGRA186_CLK_PLLD>;
1440c2599da7SThierry Reding			clock-names = "dsi", "lp", "parent";
1441c2599da7SThierry Reding			resets = <&bpmp TEGRA186_RESET_DSIC>;
1442c2599da7SThierry Reding			reset-names = "dsi";
1443c2599da7SThierry Reding			status = "disabled";
1444c2599da7SThierry Reding
1445c2599da7SThierry Reding			power-domains = <&bpmp TEGRA186_POWER_DOMAIN_DISP>;
1446c2599da7SThierry Reding		};
1447c2599da7SThierry Reding
1448c2599da7SThierry Reding		dsid: dsi@15940000 {
1449c2599da7SThierry Reding			compatible = "nvidia,tegra186-dsi";
1450c2599da7SThierry Reding			reg = <0x15940000 0x10000>;
1451c2599da7SThierry Reding			interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
1452c2599da7SThierry Reding			clocks = <&bpmp TEGRA186_CLK_DSID>,
1453c2599da7SThierry Reding				 <&bpmp TEGRA186_CLK_DSID_LP>,
1454c2599da7SThierry Reding				 <&bpmp TEGRA186_CLK_PLLD>;
1455c2599da7SThierry Reding			clock-names = "dsi", "lp", "parent";
1456c2599da7SThierry Reding			resets = <&bpmp TEGRA186_RESET_DSID>;
1457c2599da7SThierry Reding			reset-names = "dsi";
1458c2599da7SThierry Reding			status = "disabled";
1459c2599da7SThierry Reding
1460c2599da7SThierry Reding			power-domains = <&bpmp TEGRA186_POWER_DOMAIN_DISP>;
1461c2599da7SThierry Reding		};
14625524c61fSMikko Perttunen	};
14635524c61fSMikko Perttunen
1464dfd7a384SAlexandre Courbot	gpu@17000000 {
1465dfd7a384SAlexandre Courbot		compatible = "nvidia,gp10b";
1466dfd7a384SAlexandre Courbot		reg = <0x0 0x17000000 0x0 0x1000000>,
1467dfd7a384SAlexandre Courbot		      <0x0 0x18000000 0x0 0x1000000>;
146859a9dd64SThierry Reding		interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>,
146959a9dd64SThierry Reding			     <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>;
1470dfd7a384SAlexandre Courbot		interrupt-names = "stall", "nonstall";
1471dfd7a384SAlexandre Courbot
1472dfd7a384SAlexandre Courbot		clocks = <&bpmp TEGRA186_CLK_GPCCLK>,
1473dfd7a384SAlexandre Courbot			 <&bpmp TEGRA186_CLK_GPU>;
1474dfd7a384SAlexandre Courbot		clock-names = "gpu", "pwr";
1475dfd7a384SAlexandre Courbot		resets = <&bpmp TEGRA186_RESET_GPU>;
1476dfd7a384SAlexandre Courbot		reset-names = "gpu";
1477dfd7a384SAlexandre Courbot		status = "disabled";
1478dfd7a384SAlexandre Courbot
1479dfd7a384SAlexandre Courbot		power-domains = <&bpmp TEGRA186_POWER_DOMAIN_GPU>;
1480954490b3SThierry Reding		interconnects = <&mc TEGRA186_MEMORY_CLIENT_GPUSRD &emc>,
1481954490b3SThierry Reding				<&mc TEGRA186_MEMORY_CLIENT_GPUSWR &emc>,
1482954490b3SThierry Reding				<&mc TEGRA186_MEMORY_CLIENT_GPUSRD2 &emc>,
1483954490b3SThierry Reding				<&mc TEGRA186_MEMORY_CLIENT_GPUSWR2 &emc>;
1484954490b3SThierry Reding		interconnect-names = "dma-mem", "write-0", "read-1", "write-1";
1485dfd7a384SAlexandre Courbot	};
1486dfd7a384SAlexandre Courbot
1487e867fe41SThierry Reding	sram@30000000 {
148839cb62cbSJoseph Lo		compatible = "nvidia,tegra186-sysram", "mmio-sram";
148939cb62cbSJoseph Lo		reg = <0x0 0x30000000 0x0 0x50000>;
1490aa78032cSThierry Reding		#address-cells = <1>;
1491aa78032cSThierry Reding		#size-cells = <1>;
1492aa78032cSThierry Reding		ranges = <0x0 0x0 0x30000000 0x50000>;
149339cb62cbSJoseph Lo
1494e867fe41SThierry Reding		cpu_bpmp_tx: sram@4e000 {
1495aa78032cSThierry Reding			reg = <0x4e000 0x1000>;
149639cb62cbSJoseph Lo			label = "cpu-bpmp-tx";
149739cb62cbSJoseph Lo			pool;
149839cb62cbSJoseph Lo		};
149939cb62cbSJoseph Lo
1500e867fe41SThierry Reding		cpu_bpmp_rx: sram@4f000 {
1501aa78032cSThierry Reding			reg = <0x4f000 0x1000>;
150239cb62cbSJoseph Lo			label = "cpu-bpmp-rx";
150339cb62cbSJoseph Lo			pool;
150439cb62cbSJoseph Lo		};
150539cb62cbSJoseph Lo	};
150639cb62cbSJoseph Lo
1507e061fbdfSSowjanya Komatineni	sata@3507000 {
1508e061fbdfSSowjanya Komatineni		compatible = "nvidia,tegra186-ahci";
1509e061fbdfSSowjanya Komatineni		reg = <0x0 0x03507000 0x0 0x00002000>, /* AHCI */
1510e061fbdfSSowjanya Komatineni		      <0x0 0x03500000 0x0 0x00007000>, /* SATA */
1511e061fbdfSSowjanya Komatineni		      <0x0 0x03A90000 0x0 0x00010000>; /* SATA AUX */
1512e061fbdfSSowjanya Komatineni		interrupts = <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH>;
1513e061fbdfSSowjanya Komatineni
1514e061fbdfSSowjanya Komatineni		power-domains = <&bpmp TEGRA186_POWER_DOMAIN_SAX>;
1515e061fbdfSSowjanya Komatineni		interconnects = <&mc TEGRA186_MEMORY_CLIENT_SATAR &emc>,
1516e061fbdfSSowjanya Komatineni				<&mc TEGRA186_MEMORY_CLIENT_SATAW &emc>;
1517e061fbdfSSowjanya Komatineni		interconnect-names = "dma-mem", "write";
1518e061fbdfSSowjanya Komatineni		iommus = <&smmu TEGRA186_SID_SATA>;
1519e061fbdfSSowjanya Komatineni
1520e061fbdfSSowjanya Komatineni		clocks = <&bpmp TEGRA186_CLK_SATA>,
1521e061fbdfSSowjanya Komatineni			 <&bpmp TEGRA186_CLK_SATA_OOB>;
1522e061fbdfSSowjanya Komatineni		clock-names = "sata", "sata-oob";
1523e061fbdfSSowjanya Komatineni		assigned-clocks = <&bpmp TEGRA186_CLK_SATA>,
1524e061fbdfSSowjanya Komatineni				  <&bpmp TEGRA186_CLK_SATA_OOB>;
1525e061fbdfSSowjanya Komatineni		assigned-clock-parents = <&bpmp TEGRA186_CLK_PLLP_OUT0>,
1526e061fbdfSSowjanya Komatineni					 <&bpmp TEGRA186_CLK_PLLP>;
1527e061fbdfSSowjanya Komatineni		assigned-clock-rates = <102000000>,
1528e061fbdfSSowjanya Komatineni				       <204000000>;
1529e061fbdfSSowjanya Komatineni		resets = <&bpmp TEGRA186_RESET_SATA>,
1530e061fbdfSSowjanya Komatineni			<&bpmp TEGRA186_RESET_SATACOLD>;
1531e061fbdfSSowjanya Komatineni		reset-names = "sata", "sata-cold";
1532e061fbdfSSowjanya Komatineni		status = "disabled";
1533e061fbdfSSowjanya Komatineni	};
1534e061fbdfSSowjanya Komatineni
1535541d7c44SThierry Reding	bpmp: bpmp {
1536541d7c44SThierry Reding		compatible = "nvidia,tegra186-bpmp";
1537954490b3SThierry Reding		interconnects = <&mc TEGRA186_MEMORY_CLIENT_BPMPR &emc>,
1538954490b3SThierry Reding				<&mc TEGRA186_MEMORY_CLIENT_BPMPW &emc>,
1539954490b3SThierry Reding				<&mc TEGRA186_MEMORY_CLIENT_BPMPDMAR &emc>,
1540954490b3SThierry Reding				<&mc TEGRA186_MEMORY_CLIENT_BPMPDMAW &emc>;
1541954490b3SThierry Reding		interconnect-names = "read", "write", "dma-mem", "dma-write";
1542541d7c44SThierry Reding		iommus = <&smmu TEGRA186_SID_BPMP>;
1543541d7c44SThierry Reding		mboxes = <&hsp_top0 TEGRA_HSP_MBOX_TYPE_DB
1544541d7c44SThierry Reding				    TEGRA_HSP_DB_MASTER_BPMP>;
1545541d7c44SThierry Reding		shmem = <&cpu_bpmp_tx &cpu_bpmp_rx>;
1546541d7c44SThierry Reding		#clock-cells = <1>;
1547541d7c44SThierry Reding		#reset-cells = <1>;
1548541d7c44SThierry Reding		#power-domain-cells = <1>;
1549541d7c44SThierry Reding
1550541d7c44SThierry Reding		bpmp_i2c: i2c {
1551541d7c44SThierry Reding			compatible = "nvidia,tegra186-bpmp-i2c";
1552541d7c44SThierry Reding			nvidia,bpmp-bus-id = <5>;
1553541d7c44SThierry Reding			#address-cells = <1>;
1554541d7c44SThierry Reding			#size-cells = <0>;
1555541d7c44SThierry Reding			status = "disabled";
1556541d7c44SThierry Reding		};
1557541d7c44SThierry Reding
1558541d7c44SThierry Reding		bpmp_thermal: thermal {
1559541d7c44SThierry Reding			compatible = "nvidia,tegra186-bpmp-thermal";
1560541d7c44SThierry Reding			#thermal-sensor-cells = <1>;
1561541d7c44SThierry Reding		};
1562541d7c44SThierry Reding	};
1563541d7c44SThierry Reding
1564cd6fe32eSThierry Reding	cpus {
1565cd6fe32eSThierry Reding		#address-cells = <1>;
1566cd6fe32eSThierry Reding		#size-cells = <0>;
1567cd6fe32eSThierry Reding
15683b4c1378SMarc Zyngier		denver_0: cpu@0 {
156931af04cdSRob Herring			compatible = "nvidia,tegra186-denver";
1570cd6fe32eSThierry Reding			device_type = "cpu";
15715298166dSJoseph Lo			i-cache-size = <0x20000>;
15725298166dSJoseph Lo			i-cache-line-size = <64>;
15735298166dSJoseph Lo			i-cache-sets = <512>;
15745298166dSJoseph Lo			d-cache-size = <0x10000>;
15755298166dSJoseph Lo			d-cache-line-size = <64>;
15765298166dSJoseph Lo			d-cache-sets = <256>;
15775298166dSJoseph Lo			next-level-cache = <&L2_DENVER>;
1578cd6fe32eSThierry Reding			reg = <0x000>;
1579cd6fe32eSThierry Reding		};
1580cd6fe32eSThierry Reding
15813b4c1378SMarc Zyngier		denver_1: cpu@1 {
158231af04cdSRob Herring			compatible = "nvidia,tegra186-denver";
1583cd6fe32eSThierry Reding			device_type = "cpu";
15845298166dSJoseph Lo			i-cache-size = <0x20000>;
15855298166dSJoseph Lo			i-cache-line-size = <64>;
15865298166dSJoseph Lo			i-cache-sets = <512>;
15875298166dSJoseph Lo			d-cache-size = <0x10000>;
15885298166dSJoseph Lo			d-cache-line-size = <64>;
15895298166dSJoseph Lo			d-cache-sets = <256>;
15905298166dSJoseph Lo			next-level-cache = <&L2_DENVER>;
1591cd6fe32eSThierry Reding			reg = <0x001>;
1592cd6fe32eSThierry Reding		};
1593cd6fe32eSThierry Reding
15943b4c1378SMarc Zyngier		ca57_0: cpu@2 {
159531af04cdSRob Herring			compatible = "arm,cortex-a57";
1596cd6fe32eSThierry Reding			device_type = "cpu";
15975298166dSJoseph Lo			i-cache-size = <0xC000>;
15985298166dSJoseph Lo			i-cache-line-size = <64>;
15995298166dSJoseph Lo			i-cache-sets = <256>;
16005298166dSJoseph Lo			d-cache-size = <0x8000>;
16015298166dSJoseph Lo			d-cache-line-size = <64>;
16025298166dSJoseph Lo			d-cache-sets = <256>;
16035298166dSJoseph Lo			next-level-cache = <&L2_A57>;
1604cd6fe32eSThierry Reding			reg = <0x100>;
1605cd6fe32eSThierry Reding		};
1606cd6fe32eSThierry Reding
16073b4c1378SMarc Zyngier		ca57_1: cpu@3 {
160831af04cdSRob Herring			compatible = "arm,cortex-a57";
1609cd6fe32eSThierry Reding			device_type = "cpu";
16105298166dSJoseph Lo			i-cache-size = <0xC000>;
16115298166dSJoseph Lo			i-cache-line-size = <64>;
16125298166dSJoseph Lo			i-cache-sets = <256>;
16135298166dSJoseph Lo			d-cache-size = <0x8000>;
16145298166dSJoseph Lo			d-cache-line-size = <64>;
16155298166dSJoseph Lo			d-cache-sets = <256>;
16165298166dSJoseph Lo			next-level-cache = <&L2_A57>;
1617cd6fe32eSThierry Reding			reg = <0x101>;
1618cd6fe32eSThierry Reding		};
1619cd6fe32eSThierry Reding
16203b4c1378SMarc Zyngier		ca57_2: cpu@4 {
162131af04cdSRob Herring			compatible = "arm,cortex-a57";
1622cd6fe32eSThierry Reding			device_type = "cpu";
16235298166dSJoseph Lo			i-cache-size = <0xC000>;
16245298166dSJoseph Lo			i-cache-line-size = <64>;
16255298166dSJoseph Lo			i-cache-sets = <256>;
16265298166dSJoseph Lo			d-cache-size = <0x8000>;
16275298166dSJoseph Lo			d-cache-line-size = <64>;
16285298166dSJoseph Lo			d-cache-sets = <256>;
16295298166dSJoseph Lo			next-level-cache = <&L2_A57>;
1630cd6fe32eSThierry Reding			reg = <0x102>;
1631cd6fe32eSThierry Reding		};
1632cd6fe32eSThierry Reding
16333b4c1378SMarc Zyngier		ca57_3: cpu@5 {
163431af04cdSRob Herring			compatible = "arm,cortex-a57";
1635cd6fe32eSThierry Reding			device_type = "cpu";
16365298166dSJoseph Lo			i-cache-size = <0xC000>;
16375298166dSJoseph Lo			i-cache-line-size = <64>;
16385298166dSJoseph Lo			i-cache-sets = <256>;
16395298166dSJoseph Lo			d-cache-size = <0x8000>;
16405298166dSJoseph Lo			d-cache-line-size = <64>;
16415298166dSJoseph Lo			d-cache-sets = <256>;
16425298166dSJoseph Lo			next-level-cache = <&L2_A57>;
1643cd6fe32eSThierry Reding			reg = <0x103>;
1644cd6fe32eSThierry Reding		};
16455298166dSJoseph Lo
16465298166dSJoseph Lo		L2_DENVER: l2-cache0 {
16475298166dSJoseph Lo			compatible = "cache";
16485298166dSJoseph Lo			cache-unified;
16495298166dSJoseph Lo			cache-level = <2>;
16505298166dSJoseph Lo			cache-size = <0x200000>;
16515298166dSJoseph Lo			cache-line-size = <64>;
16525298166dSJoseph Lo			cache-sets = <2048>;
16535298166dSJoseph Lo		};
16545298166dSJoseph Lo
16555298166dSJoseph Lo		L2_A57: l2-cache1 {
16565298166dSJoseph Lo			compatible = "cache";
16575298166dSJoseph Lo			cache-unified;
16585298166dSJoseph Lo			cache-level = <2>;
16595298166dSJoseph Lo			cache-size = <0x200000>;
16605298166dSJoseph Lo			cache-line-size = <64>;
16615298166dSJoseph Lo			cache-sets = <2048>;
16625298166dSJoseph Lo		};
1663cd6fe32eSThierry Reding	};
1664cd6fe32eSThierry Reding
16653b4c1378SMarc Zyngier	pmu_denver {
16663b4c1378SMarc Zyngier		compatible = "nvidia,denver-pmu", "arm,armv8-pmuv3";
16673b4c1378SMarc Zyngier		interrupts = <GIC_SPI 320 IRQ_TYPE_LEVEL_HIGH>,
16683b4c1378SMarc Zyngier			     <GIC_SPI 321 IRQ_TYPE_LEVEL_HIGH>;
16693b4c1378SMarc Zyngier		interrupt-affinity = <&denver_0 &denver_1>;
16703b4c1378SMarc Zyngier	};
16713b4c1378SMarc Zyngier
16723b4c1378SMarc Zyngier	pmu_a57 {
16733b4c1378SMarc Zyngier		compatible = "arm,cortex-a57-pmu", "arm,armv8-pmuv3";
16743b4c1378SMarc Zyngier		interrupts = <GIC_SPI 296 IRQ_TYPE_LEVEL_HIGH>,
16753b4c1378SMarc Zyngier			     <GIC_SPI 297 IRQ_TYPE_LEVEL_HIGH>,
16763b4c1378SMarc Zyngier			     <GIC_SPI 298 IRQ_TYPE_LEVEL_HIGH>,
16773b4c1378SMarc Zyngier			     <GIC_SPI 299 IRQ_TYPE_LEVEL_HIGH>;
16783b4c1378SMarc Zyngier		interrupt-affinity = <&ca57_0 &ca57_1 &ca57_2 &ca57_3>;
16793b4c1378SMarc Zyngier	};
16803b4c1378SMarc Zyngier
1681e4710376SSameer Pujar	sound {
1682e4710376SSameer Pujar		status = "disabled";
1683e4710376SSameer Pujar
1684e4710376SSameer Pujar		clocks = <&bpmp TEGRA186_CLK_PLLA>,
1685e4710376SSameer Pujar			 <&bpmp TEGRA186_CLK_PLL_A_OUT0>;
1686e4710376SSameer Pujar		clock-names = "pll_a", "plla_out0";
1687e4710376SSameer Pujar		assigned-clocks = <&bpmp TEGRA186_CLK_PLLA>,
1688e4710376SSameer Pujar				  <&bpmp TEGRA186_CLK_PLL_A_OUT0>,
1689e4710376SSameer Pujar				  <&bpmp TEGRA186_CLK_AUD_MCLK>;
1690e4710376SSameer Pujar		assigned-clock-parents = <0>,
1691e4710376SSameer Pujar					 <&bpmp TEGRA186_CLK_PLLA>,
1692e4710376SSameer Pujar					 <&bpmp TEGRA186_CLK_PLL_A_OUT0>;
1693e4710376SSameer Pujar		/*
1694e4710376SSameer Pujar		 * PLLA supports dynamic ramp. Below initial rate is chosen
1695e4710376SSameer Pujar		 * for this to work and oscillate between base rates required
1696e4710376SSameer Pujar		 * for 8x and 11.025x sample rate streams.
1697e4710376SSameer Pujar		 */
1698e4710376SSameer Pujar		assigned-clock-rates = <258000000>;
1699e4710376SSameer Pujar
1700e4710376SSameer Pujar		iommus = <&smmu TEGRA186_SID_APE>;
1701e4710376SSameer Pujar	};
1702e4710376SSameer Pujar
170315274c23SMikko Perttunen	thermal-zones {
170415274c23SMikko Perttunen		a57 {
170515274c23SMikko Perttunen			polling-delay = <0>;
170615274c23SMikko Perttunen			polling-delay-passive = <1000>;
170715274c23SMikko Perttunen
170815274c23SMikko Perttunen			thermal-sensors =
170915274c23SMikko Perttunen				<&bpmp_thermal TEGRA186_BPMP_THERMAL_ZONE_CPU>;
171015274c23SMikko Perttunen
171115274c23SMikko Perttunen			trips {
171215274c23SMikko Perttunen				critical {
171315274c23SMikko Perttunen					temperature = <101000>;
171415274c23SMikko Perttunen					hysteresis = <0>;
171515274c23SMikko Perttunen					type = "critical";
171615274c23SMikko Perttunen				};
171715274c23SMikko Perttunen			};
171815274c23SMikko Perttunen
171915274c23SMikko Perttunen			cooling-maps {
172015274c23SMikko Perttunen			};
172115274c23SMikko Perttunen		};
172215274c23SMikko Perttunen
172315274c23SMikko Perttunen		denver {
172415274c23SMikko Perttunen			polling-delay = <0>;
172515274c23SMikko Perttunen			polling-delay-passive = <1000>;
172615274c23SMikko Perttunen
172715274c23SMikko Perttunen			thermal-sensors =
172815274c23SMikko Perttunen				<&bpmp_thermal TEGRA186_BPMP_THERMAL_ZONE_AUX>;
172915274c23SMikko Perttunen
173015274c23SMikko Perttunen			trips {
173115274c23SMikko Perttunen				critical {
173215274c23SMikko Perttunen					temperature = <101000>;
173315274c23SMikko Perttunen					hysteresis = <0>;
173415274c23SMikko Perttunen					type = "critical";
173515274c23SMikko Perttunen				};
173615274c23SMikko Perttunen			};
173715274c23SMikko Perttunen
173815274c23SMikko Perttunen			cooling-maps {
173915274c23SMikko Perttunen			};
174015274c23SMikko Perttunen		};
174115274c23SMikko Perttunen
174215274c23SMikko Perttunen		gpu {
174315274c23SMikko Perttunen			polling-delay = <0>;
174415274c23SMikko Perttunen			polling-delay-passive = <1000>;
174515274c23SMikko Perttunen
174615274c23SMikko Perttunen			thermal-sensors =
174715274c23SMikko Perttunen				<&bpmp_thermal TEGRA186_BPMP_THERMAL_ZONE_GPU>;
174815274c23SMikko Perttunen
174915274c23SMikko Perttunen			trips {
175015274c23SMikko Perttunen				critical {
175115274c23SMikko Perttunen					temperature = <101000>;
175215274c23SMikko Perttunen					hysteresis = <0>;
175315274c23SMikko Perttunen					type = "critical";
175415274c23SMikko Perttunen				};
175515274c23SMikko Perttunen			};
175615274c23SMikko Perttunen
175715274c23SMikko Perttunen			cooling-maps {
175815274c23SMikko Perttunen			};
175915274c23SMikko Perttunen		};
176015274c23SMikko Perttunen
176115274c23SMikko Perttunen		pll {
176215274c23SMikko Perttunen			polling-delay = <0>;
176315274c23SMikko Perttunen			polling-delay-passive = <1000>;
176415274c23SMikko Perttunen
176515274c23SMikko Perttunen			thermal-sensors =
176615274c23SMikko Perttunen				<&bpmp_thermal TEGRA186_BPMP_THERMAL_ZONE_PLLX>;
176715274c23SMikko Perttunen
176815274c23SMikko Perttunen			trips {
176915274c23SMikko Perttunen				critical {
177015274c23SMikko Perttunen					temperature = <101000>;
177115274c23SMikko Perttunen					hysteresis = <0>;
177215274c23SMikko Perttunen					type = "critical";
177315274c23SMikko Perttunen				};
177415274c23SMikko Perttunen			};
177515274c23SMikko Perttunen
177615274c23SMikko Perttunen			cooling-maps {
177715274c23SMikko Perttunen			};
177815274c23SMikko Perttunen		};
177915274c23SMikko Perttunen
178015274c23SMikko Perttunen		always_on {
178115274c23SMikko Perttunen			polling-delay = <0>;
178215274c23SMikko Perttunen			polling-delay-passive = <1000>;
178315274c23SMikko Perttunen
178415274c23SMikko Perttunen			thermal-sensors =
178515274c23SMikko Perttunen				<&bpmp_thermal TEGRA186_BPMP_THERMAL_ZONE_AO>;
178615274c23SMikko Perttunen
178715274c23SMikko Perttunen			trips {
178815274c23SMikko Perttunen				critical {
178915274c23SMikko Perttunen					temperature = <101000>;
179015274c23SMikko Perttunen					hysteresis = <0>;
179115274c23SMikko Perttunen					type = "critical";
179215274c23SMikko Perttunen				};
179315274c23SMikko Perttunen			};
179415274c23SMikko Perttunen
179515274c23SMikko Perttunen			cooling-maps {
179615274c23SMikko Perttunen			};
179715274c23SMikko Perttunen		};
179839cb62cbSJoseph Lo	};
179939cb62cbSJoseph Lo
180039cb62cbSJoseph Lo	timer {
180139cb62cbSJoseph Lo		compatible = "arm,armv8-timer";
180239cb62cbSJoseph Lo		interrupts = <GIC_PPI 13
180339cb62cbSJoseph Lo				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
180439cb62cbSJoseph Lo			     <GIC_PPI 14
180539cb62cbSJoseph Lo				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
180639cb62cbSJoseph Lo			     <GIC_PPI 11
180739cb62cbSJoseph Lo				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
180839cb62cbSJoseph Lo			     <GIC_PPI 10
180939cb62cbSJoseph Lo				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
181039cb62cbSJoseph Lo		interrupt-parent = <&gic>;
1811b30be673SThierry Reding		always-on;
181239cb62cbSJoseph Lo	};
181339cb62cbSJoseph Lo};
1814