xref: /OK3568_Linux_fs/kernel/arch/arm/boot/dts/dra7.dtsi (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun// SPDX-License-Identifier: GPL-2.0-only
2*4882a593Smuzhiyun/*
3*4882a593Smuzhiyun * Copyright (C) 2013 Texas Instruments Incorporated - https://www.ti.com/
4*4882a593Smuzhiyun *
5*4882a593Smuzhiyun * Based on "omap4.dtsi"
6*4882a593Smuzhiyun */
7*4882a593Smuzhiyun
8*4882a593Smuzhiyun#include <dt-bindings/bus/ti-sysc.h>
9*4882a593Smuzhiyun#include <dt-bindings/clock/dra7.h>
10*4882a593Smuzhiyun#include <dt-bindings/interrupt-controller/arm-gic.h>
11*4882a593Smuzhiyun#include <dt-bindings/pinctrl/dra.h>
12*4882a593Smuzhiyun#include <dt-bindings/clock/dra7.h>
13*4882a593Smuzhiyun
14*4882a593Smuzhiyun#define MAX_SOURCES 400
15*4882a593Smuzhiyun
16*4882a593Smuzhiyun/ {
17*4882a593Smuzhiyun	#address-cells = <2>;
18*4882a593Smuzhiyun	#size-cells = <2>;
19*4882a593Smuzhiyun
20*4882a593Smuzhiyun	compatible = "ti,dra7xx";
21*4882a593Smuzhiyun	interrupt-parent = <&crossbar_mpu>;
22*4882a593Smuzhiyun	chosen { };
23*4882a593Smuzhiyun
24*4882a593Smuzhiyun	aliases {
25*4882a593Smuzhiyun		i2c0 = &i2c1;
26*4882a593Smuzhiyun		i2c1 = &i2c2;
27*4882a593Smuzhiyun		i2c2 = &i2c3;
28*4882a593Smuzhiyun		i2c3 = &i2c4;
29*4882a593Smuzhiyun		i2c4 = &i2c5;
30*4882a593Smuzhiyun		serial0 = &uart1;
31*4882a593Smuzhiyun		serial1 = &uart2;
32*4882a593Smuzhiyun		serial2 = &uart3;
33*4882a593Smuzhiyun		serial3 = &uart4;
34*4882a593Smuzhiyun		serial4 = &uart5;
35*4882a593Smuzhiyun		serial5 = &uart6;
36*4882a593Smuzhiyun		serial6 = &uart7;
37*4882a593Smuzhiyun		serial7 = &uart8;
38*4882a593Smuzhiyun		serial8 = &uart9;
39*4882a593Smuzhiyun		serial9 = &uart10;
40*4882a593Smuzhiyun		ethernet0 = &cpsw_port1;
41*4882a593Smuzhiyun		ethernet1 = &cpsw_port2;
42*4882a593Smuzhiyun		d_can0 = &dcan1;
43*4882a593Smuzhiyun		d_can1 = &dcan2;
44*4882a593Smuzhiyun		spi0 = &qspi;
45*4882a593Smuzhiyun	};
46*4882a593Smuzhiyun
47*4882a593Smuzhiyun	timer {
48*4882a593Smuzhiyun		compatible = "arm,armv7-timer";
49*4882a593Smuzhiyun		status = "disabled";	/* See ARM architected timer wrap erratum i940 */
50*4882a593Smuzhiyun		interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
51*4882a593Smuzhiyun			     <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
52*4882a593Smuzhiyun			     <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
53*4882a593Smuzhiyun			     <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>;
54*4882a593Smuzhiyun		interrupt-parent = <&gic>;
55*4882a593Smuzhiyun	};
56*4882a593Smuzhiyun
57*4882a593Smuzhiyun	gic: interrupt-controller@48211000 {
58*4882a593Smuzhiyun		compatible = "arm,cortex-a15-gic";
59*4882a593Smuzhiyun		interrupt-controller;
60*4882a593Smuzhiyun		#interrupt-cells = <3>;
61*4882a593Smuzhiyun		reg = <0x0 0x48211000 0x0 0x1000>,
62*4882a593Smuzhiyun		      <0x0 0x48212000 0x0 0x2000>,
63*4882a593Smuzhiyun		      <0x0 0x48214000 0x0 0x2000>,
64*4882a593Smuzhiyun		      <0x0 0x48216000 0x0 0x2000>;
65*4882a593Smuzhiyun		interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_HIGH)>;
66*4882a593Smuzhiyun		interrupt-parent = <&gic>;
67*4882a593Smuzhiyun	};
68*4882a593Smuzhiyun
69*4882a593Smuzhiyun	wakeupgen: interrupt-controller@48281000 {
70*4882a593Smuzhiyun		compatible = "ti,omap5-wugen-mpu", "ti,omap4-wugen-mpu";
71*4882a593Smuzhiyun		interrupt-controller;
72*4882a593Smuzhiyun		#interrupt-cells = <3>;
73*4882a593Smuzhiyun		reg = <0x0 0x48281000 0x0 0x1000>;
74*4882a593Smuzhiyun		interrupt-parent = <&gic>;
75*4882a593Smuzhiyun	};
76*4882a593Smuzhiyun
77*4882a593Smuzhiyun	cpus {
78*4882a593Smuzhiyun		#address-cells = <1>;
79*4882a593Smuzhiyun		#size-cells = <0>;
80*4882a593Smuzhiyun
81*4882a593Smuzhiyun		cpu0: cpu@0 {
82*4882a593Smuzhiyun			device_type = "cpu";
83*4882a593Smuzhiyun			compatible = "arm,cortex-a15";
84*4882a593Smuzhiyun			reg = <0>;
85*4882a593Smuzhiyun
86*4882a593Smuzhiyun			operating-points-v2 = <&cpu0_opp_table>;
87*4882a593Smuzhiyun
88*4882a593Smuzhiyun			clocks = <&dpll_mpu_ck>;
89*4882a593Smuzhiyun			clock-names = "cpu";
90*4882a593Smuzhiyun
91*4882a593Smuzhiyun			clock-latency = <300000>; /* From omap-cpufreq driver */
92*4882a593Smuzhiyun
93*4882a593Smuzhiyun			/* cooling options */
94*4882a593Smuzhiyun			#cooling-cells = <2>; /* min followed by max */
95*4882a593Smuzhiyun
96*4882a593Smuzhiyun			vbb-supply = <&abb_mpu>;
97*4882a593Smuzhiyun		};
98*4882a593Smuzhiyun	};
99*4882a593Smuzhiyun
100*4882a593Smuzhiyun	cpu0_opp_table: opp-table {
101*4882a593Smuzhiyun		compatible = "operating-points-v2-ti-cpu";
102*4882a593Smuzhiyun		syscon = <&scm_wkup>;
103*4882a593Smuzhiyun
104*4882a593Smuzhiyun		opp_nom-1000000000 {
105*4882a593Smuzhiyun			opp-hz = /bits/ 64 <1000000000>;
106*4882a593Smuzhiyun			opp-microvolt = <1060000 850000 1150000>,
107*4882a593Smuzhiyun					<1060000 850000 1150000>;
108*4882a593Smuzhiyun			opp-supported-hw = <0xFF 0x01>;
109*4882a593Smuzhiyun			opp-suspend;
110*4882a593Smuzhiyun		};
111*4882a593Smuzhiyun
112*4882a593Smuzhiyun		opp_od-1176000000 {
113*4882a593Smuzhiyun			opp-hz = /bits/ 64 <1176000000>;
114*4882a593Smuzhiyun			opp-microvolt = <1160000 885000 1160000>,
115*4882a593Smuzhiyun					<1160000 885000 1160000>;
116*4882a593Smuzhiyun
117*4882a593Smuzhiyun			opp-supported-hw = <0xFF 0x02>;
118*4882a593Smuzhiyun		};
119*4882a593Smuzhiyun
120*4882a593Smuzhiyun		opp_high@1500000000 {
121*4882a593Smuzhiyun			opp-hz = /bits/ 64 <1500000000>;
122*4882a593Smuzhiyun			opp-microvolt = <1210000 950000 1250000>,
123*4882a593Smuzhiyun					<1210000 950000 1250000>;
124*4882a593Smuzhiyun			opp-supported-hw = <0xFF 0x04>;
125*4882a593Smuzhiyun		};
126*4882a593Smuzhiyun	};
127*4882a593Smuzhiyun
128*4882a593Smuzhiyun	/*
129*4882a593Smuzhiyun	 * The soc node represents the soc top level view. It is used for IPs
130*4882a593Smuzhiyun	 * that are not memory mapped in the MPU view or for the MPU itself.
131*4882a593Smuzhiyun	 */
132*4882a593Smuzhiyun	soc {
133*4882a593Smuzhiyun		compatible = "ti,omap-infra";
134*4882a593Smuzhiyun		mpu {
135*4882a593Smuzhiyun			compatible = "ti,omap5-mpu";
136*4882a593Smuzhiyun			ti,hwmods = "mpu";
137*4882a593Smuzhiyun		};
138*4882a593Smuzhiyun	};
139*4882a593Smuzhiyun
140*4882a593Smuzhiyun	/*
141*4882a593Smuzhiyun	 * XXX: Use a flat representation of the SOC interconnect.
142*4882a593Smuzhiyun	 * The real OMAP interconnect network is quite complex.
143*4882a593Smuzhiyun	 * Since it will not bring real advantage to represent that in DT for
144*4882a593Smuzhiyun	 * the moment, just use a fake OCP bus entry to represent the whole bus
145*4882a593Smuzhiyun	 * hierarchy.
146*4882a593Smuzhiyun	 */
147*4882a593Smuzhiyun	ocp: ocp {
148*4882a593Smuzhiyun		compatible = "ti,dra7-l3-noc", "simple-bus";
149*4882a593Smuzhiyun		#address-cells = <1>;
150*4882a593Smuzhiyun		#size-cells = <1>;
151*4882a593Smuzhiyun		ranges = <0x0 0x0 0x0 0xc0000000>;
152*4882a593Smuzhiyun		dma-ranges = <0x80000000 0x0 0x80000000 0x80000000>;
153*4882a593Smuzhiyun		ti,hwmods = "l3_main_1", "l3_main_2";
154*4882a593Smuzhiyun		reg = <0x0 0x44000000 0x0 0x1000000>,
155*4882a593Smuzhiyun		      <0x0 0x45000000 0x0 0x1000>;
156*4882a593Smuzhiyun		interrupts-extended = <&crossbar_mpu GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
157*4882a593Smuzhiyun				      <&wakeupgen GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
158*4882a593Smuzhiyun
159*4882a593Smuzhiyun		l4_cfg: interconnect@4a000000 {
160*4882a593Smuzhiyun		};
161*4882a593Smuzhiyun		l4_wkup: interconnect@4ae00000 {
162*4882a593Smuzhiyun		};
163*4882a593Smuzhiyun		l4_per1: interconnect@48000000 {
164*4882a593Smuzhiyun		};
165*4882a593Smuzhiyun		l4_per2: interconnect@48400000 {
166*4882a593Smuzhiyun		};
167*4882a593Smuzhiyun		l4_per3: interconnect@48800000 {
168*4882a593Smuzhiyun		};
169*4882a593Smuzhiyun
170*4882a593Smuzhiyun		axi@0 {
171*4882a593Smuzhiyun			compatible = "simple-bus";
172*4882a593Smuzhiyun			#size-cells = <1>;
173*4882a593Smuzhiyun			#address-cells = <1>;
174*4882a593Smuzhiyun			ranges = <0x51000000 0x51000000 0x3000
175*4882a593Smuzhiyun				  0x0	     0x20000000 0x10000000>;
176*4882a593Smuzhiyun			dma-ranges;
177*4882a593Smuzhiyun			/**
178*4882a593Smuzhiyun			 * To enable PCI endpoint mode, disable the pcie1_rc
179*4882a593Smuzhiyun			 * node and enable pcie1_ep mode.
180*4882a593Smuzhiyun			 */
181*4882a593Smuzhiyun			pcie1_rc: pcie@51000000 {
182*4882a593Smuzhiyun				reg = <0x51000000 0x2000>, <0x51002000 0x14c>, <0x1000 0x2000>;
183*4882a593Smuzhiyun				reg-names = "rc_dbics", "ti_conf", "config";
184*4882a593Smuzhiyun				interrupts = <0 232 0x4>, <0 233 0x4>;
185*4882a593Smuzhiyun				#address-cells = <3>;
186*4882a593Smuzhiyun				#size-cells = <2>;
187*4882a593Smuzhiyun				device_type = "pci";
188*4882a593Smuzhiyun				ranges = <0x81000000 0 0          0x03000 0 0x00010000
189*4882a593Smuzhiyun					  0x82000000 0 0x20013000 0x13000 0 0xffed000>;
190*4882a593Smuzhiyun				bus-range = <0x00 0xff>;
191*4882a593Smuzhiyun				#interrupt-cells = <1>;
192*4882a593Smuzhiyun				num-lanes = <1>;
193*4882a593Smuzhiyun				linux,pci-domain = <0>;
194*4882a593Smuzhiyun				ti,hwmods = "pcie1";
195*4882a593Smuzhiyun				phys = <&pcie1_phy>;
196*4882a593Smuzhiyun				phy-names = "pcie-phy0";
197*4882a593Smuzhiyun				ti,syscon-lane-sel = <&scm_conf_pcie 0x18>;
198*4882a593Smuzhiyun				interrupt-map-mask = <0 0 0 7>;
199*4882a593Smuzhiyun				interrupt-map = <0 0 0 1 &pcie1_intc 1>,
200*4882a593Smuzhiyun						<0 0 0 2 &pcie1_intc 2>,
201*4882a593Smuzhiyun						<0 0 0 3 &pcie1_intc 3>,
202*4882a593Smuzhiyun						<0 0 0 4 &pcie1_intc 4>;
203*4882a593Smuzhiyun				ti,syscon-unaligned-access = <&scm_conf1 0x14 1>;
204*4882a593Smuzhiyun				status = "disabled";
205*4882a593Smuzhiyun				pcie1_intc: interrupt-controller {
206*4882a593Smuzhiyun					interrupt-controller;
207*4882a593Smuzhiyun					#address-cells = <0>;
208*4882a593Smuzhiyun					#interrupt-cells = <1>;
209*4882a593Smuzhiyun				};
210*4882a593Smuzhiyun			};
211*4882a593Smuzhiyun
212*4882a593Smuzhiyun			pcie1_ep: pcie_ep@51000000 {
213*4882a593Smuzhiyun				reg = <0x51000000 0x28>, <0x51002000 0x14c>, <0x51001000 0x28>, <0x1000 0x10000000>;
214*4882a593Smuzhiyun				reg-names = "ep_dbics", "ti_conf", "ep_dbics2", "addr_space";
215*4882a593Smuzhiyun				interrupts = <0 232 0x4>;
216*4882a593Smuzhiyun				num-lanes = <1>;
217*4882a593Smuzhiyun				num-ib-windows = <4>;
218*4882a593Smuzhiyun				num-ob-windows = <16>;
219*4882a593Smuzhiyun				ti,hwmods = "pcie1";
220*4882a593Smuzhiyun				phys = <&pcie1_phy>;
221*4882a593Smuzhiyun				phy-names = "pcie-phy0";
222*4882a593Smuzhiyun				ti,syscon-unaligned-access = <&scm_conf1 0x14 1>;
223*4882a593Smuzhiyun				ti,syscon-lane-sel = <&scm_conf_pcie 0x18>;
224*4882a593Smuzhiyun				status = "disabled";
225*4882a593Smuzhiyun			};
226*4882a593Smuzhiyun		};
227*4882a593Smuzhiyun
228*4882a593Smuzhiyun		axi@1 {
229*4882a593Smuzhiyun			compatible = "simple-bus";
230*4882a593Smuzhiyun			#size-cells = <1>;
231*4882a593Smuzhiyun			#address-cells = <1>;
232*4882a593Smuzhiyun			ranges = <0x51800000 0x51800000 0x3000
233*4882a593Smuzhiyun				  0x0	     0x30000000 0x10000000>;
234*4882a593Smuzhiyun			dma-ranges;
235*4882a593Smuzhiyun			status = "disabled";
236*4882a593Smuzhiyun			pcie2_rc: pcie@51800000 {
237*4882a593Smuzhiyun				reg = <0x51800000 0x2000>, <0x51802000 0x14c>, <0x1000 0x2000>;
238*4882a593Smuzhiyun				reg-names = "rc_dbics", "ti_conf", "config";
239*4882a593Smuzhiyun				interrupts = <0 355 0x4>, <0 356 0x4>;
240*4882a593Smuzhiyun				#address-cells = <3>;
241*4882a593Smuzhiyun				#size-cells = <2>;
242*4882a593Smuzhiyun				device_type = "pci";
243*4882a593Smuzhiyun				ranges = <0x81000000 0 0          0x03000 0 0x00010000
244*4882a593Smuzhiyun					  0x82000000 0 0x30013000 0x13000 0 0xffed000>;
245*4882a593Smuzhiyun				bus-range = <0x00 0xff>;
246*4882a593Smuzhiyun				#interrupt-cells = <1>;
247*4882a593Smuzhiyun				num-lanes = <1>;
248*4882a593Smuzhiyun				linux,pci-domain = <1>;
249*4882a593Smuzhiyun				ti,hwmods = "pcie2";
250*4882a593Smuzhiyun				phys = <&pcie2_phy>;
251*4882a593Smuzhiyun				phy-names = "pcie-phy0";
252*4882a593Smuzhiyun				interrupt-map-mask = <0 0 0 7>;
253*4882a593Smuzhiyun				interrupt-map = <0 0 0 1 &pcie2_intc 1>,
254*4882a593Smuzhiyun						<0 0 0 2 &pcie2_intc 2>,
255*4882a593Smuzhiyun						<0 0 0 3 &pcie2_intc 3>,
256*4882a593Smuzhiyun						<0 0 0 4 &pcie2_intc 4>;
257*4882a593Smuzhiyun				ti,syscon-unaligned-access = <&scm_conf1 0x14 2>;
258*4882a593Smuzhiyun				pcie2_intc: interrupt-controller {
259*4882a593Smuzhiyun					interrupt-controller;
260*4882a593Smuzhiyun					#address-cells = <0>;
261*4882a593Smuzhiyun					#interrupt-cells = <1>;
262*4882a593Smuzhiyun				};
263*4882a593Smuzhiyun			};
264*4882a593Smuzhiyun		};
265*4882a593Smuzhiyun
266*4882a593Smuzhiyun		ocmcram1: ocmcram@40300000 {
267*4882a593Smuzhiyun			compatible = "mmio-sram";
268*4882a593Smuzhiyun			reg = <0x40300000 0x80000>;
269*4882a593Smuzhiyun			ranges = <0x0 0x40300000 0x80000>;
270*4882a593Smuzhiyun			#address-cells = <1>;
271*4882a593Smuzhiyun			#size-cells = <1>;
272*4882a593Smuzhiyun			/*
273*4882a593Smuzhiyun			 * This is a placeholder for an optional reserved
274*4882a593Smuzhiyun			 * region for use by secure software. The size
275*4882a593Smuzhiyun			 * of this region is not known until runtime so it
276*4882a593Smuzhiyun			 * is set as zero to either be updated to reserve
277*4882a593Smuzhiyun			 * space or left unchanged to leave all SRAM for use.
278*4882a593Smuzhiyun			 * On HS parts that that require the reserved region
279*4882a593Smuzhiyun			 * either the bootloader can update the size to
280*4882a593Smuzhiyun			 * the required amount or the node can be overridden
281*4882a593Smuzhiyun			 * from the board dts file for the secure platform.
282*4882a593Smuzhiyun			 */
283*4882a593Smuzhiyun			sram-hs@0 {
284*4882a593Smuzhiyun				compatible = "ti,secure-ram";
285*4882a593Smuzhiyun				reg = <0x0 0x0>;
286*4882a593Smuzhiyun			};
287*4882a593Smuzhiyun		};
288*4882a593Smuzhiyun
289*4882a593Smuzhiyun		/*
290*4882a593Smuzhiyun		 * NOTE: ocmcram2 and ocmcram3 are not available on all
291*4882a593Smuzhiyun		 * DRA7xx and AM57xx variants. Confirm availability in
292*4882a593Smuzhiyun		 * the data manual for the exact part number in use
293*4882a593Smuzhiyun		 * before enabling these nodes in the board dts file.
294*4882a593Smuzhiyun		 */
295*4882a593Smuzhiyun		ocmcram2: ocmcram@40400000 {
296*4882a593Smuzhiyun			status = "disabled";
297*4882a593Smuzhiyun			compatible = "mmio-sram";
298*4882a593Smuzhiyun			reg = <0x40400000 0x100000>;
299*4882a593Smuzhiyun			ranges = <0x0 0x40400000 0x100000>;
300*4882a593Smuzhiyun			#address-cells = <1>;
301*4882a593Smuzhiyun			#size-cells = <1>;
302*4882a593Smuzhiyun		};
303*4882a593Smuzhiyun
304*4882a593Smuzhiyun		ocmcram3: ocmcram@40500000 {
305*4882a593Smuzhiyun			status = "disabled";
306*4882a593Smuzhiyun			compatible = "mmio-sram";
307*4882a593Smuzhiyun			reg = <0x40500000 0x100000>;
308*4882a593Smuzhiyun			ranges = <0x0 0x40500000 0x100000>;
309*4882a593Smuzhiyun			#address-cells = <1>;
310*4882a593Smuzhiyun			#size-cells = <1>;
311*4882a593Smuzhiyun		};
312*4882a593Smuzhiyun
313*4882a593Smuzhiyun		bandgap: bandgap@4a0021e0 {
314*4882a593Smuzhiyun			reg = <0x4a0021e0 0xc
315*4882a593Smuzhiyun				0x4a00232c 0xc
316*4882a593Smuzhiyun				0x4a002380 0x2c
317*4882a593Smuzhiyun				0x4a0023C0 0x3c
318*4882a593Smuzhiyun				0x4a002564 0x8
319*4882a593Smuzhiyun				0x4a002574 0x50>;
320*4882a593Smuzhiyun				compatible = "ti,dra752-bandgap";
321*4882a593Smuzhiyun				interrupts = <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>;
322*4882a593Smuzhiyun				#thermal-sensor-cells = <1>;
323*4882a593Smuzhiyun		};
324*4882a593Smuzhiyun
325*4882a593Smuzhiyun		dsp1_system: dsp_system@40d00000 {
326*4882a593Smuzhiyun			compatible = "syscon";
327*4882a593Smuzhiyun			reg = <0x40d00000 0x100>;
328*4882a593Smuzhiyun		};
329*4882a593Smuzhiyun
330*4882a593Smuzhiyun		dra7_iodelay_core: padconf@4844a000 {
331*4882a593Smuzhiyun			compatible = "ti,dra7-iodelay";
332*4882a593Smuzhiyun			reg = <0x4844a000 0x0d1c>;
333*4882a593Smuzhiyun			#address-cells = <1>;
334*4882a593Smuzhiyun			#size-cells = <0>;
335*4882a593Smuzhiyun			#pinctrl-cells = <2>;
336*4882a593Smuzhiyun		};
337*4882a593Smuzhiyun
338*4882a593Smuzhiyun		target-module@43300000 {
339*4882a593Smuzhiyun			compatible = "ti,sysc-omap4", "ti,sysc";
340*4882a593Smuzhiyun			reg = <0x43300000 0x4>;
341*4882a593Smuzhiyun			reg-names = "rev";
342*4882a593Smuzhiyun			clocks = <&l3main1_clkctrl DRA7_L3MAIN1_TPCC_CLKCTRL 0>;
343*4882a593Smuzhiyun			clock-names = "fck";
344*4882a593Smuzhiyun			#address-cells = <1>;
345*4882a593Smuzhiyun			#size-cells = <1>;
346*4882a593Smuzhiyun			ranges = <0x0 0x43300000 0x100000>;
347*4882a593Smuzhiyun
348*4882a593Smuzhiyun			edma: dma@0 {
349*4882a593Smuzhiyun				compatible = "ti,edma3-tpcc";
350*4882a593Smuzhiyun				reg = <0 0x100000>;
351*4882a593Smuzhiyun				reg-names = "edma3_cc";
352*4882a593Smuzhiyun				interrupts = <GIC_SPI 361 IRQ_TYPE_LEVEL_HIGH>,
353*4882a593Smuzhiyun					     <GIC_SPI 360 IRQ_TYPE_LEVEL_HIGH>,
354*4882a593Smuzhiyun					     <GIC_SPI 359 IRQ_TYPE_LEVEL_HIGH>;
355*4882a593Smuzhiyun				interrupt-names = "edma3_ccint", "edma3_mperr",
356*4882a593Smuzhiyun						  "edma3_ccerrint";
357*4882a593Smuzhiyun				dma-requests = <64>;
358*4882a593Smuzhiyun				#dma-cells = <2>;
359*4882a593Smuzhiyun
360*4882a593Smuzhiyun				ti,tptcs = <&edma_tptc0 7>, <&edma_tptc1 0>;
361*4882a593Smuzhiyun
362*4882a593Smuzhiyun				/*
363*4882a593Smuzhiyun				* memcpy is disabled, can be enabled with:
364*4882a593Smuzhiyun				* ti,edma-memcpy-channels = <20 21>;
365*4882a593Smuzhiyun				* for example. Note that these channels need to be
366*4882a593Smuzhiyun				* masked in the xbar as well.
367*4882a593Smuzhiyun				*/
368*4882a593Smuzhiyun			};
369*4882a593Smuzhiyun		};
370*4882a593Smuzhiyun
371*4882a593Smuzhiyun		target-module@43400000 {
372*4882a593Smuzhiyun			compatible = "ti,sysc-omap4", "ti,sysc";
373*4882a593Smuzhiyun			reg = <0x43400000 0x4>;
374*4882a593Smuzhiyun			reg-names = "rev";
375*4882a593Smuzhiyun			clocks = <&l3main1_clkctrl DRA7_L3MAIN1_TPTC0_CLKCTRL 0>;
376*4882a593Smuzhiyun			clock-names = "fck";
377*4882a593Smuzhiyun			#address-cells = <1>;
378*4882a593Smuzhiyun			#size-cells = <1>;
379*4882a593Smuzhiyun			ranges = <0x0 0x43400000 0x100000>;
380*4882a593Smuzhiyun
381*4882a593Smuzhiyun			edma_tptc0: dma@0 {
382*4882a593Smuzhiyun				compatible = "ti,edma3-tptc";
383*4882a593Smuzhiyun				reg = <0 0x100000>;
384*4882a593Smuzhiyun				interrupts = <GIC_SPI 370 IRQ_TYPE_LEVEL_HIGH>;
385*4882a593Smuzhiyun				interrupt-names = "edma3_tcerrint";
386*4882a593Smuzhiyun			};
387*4882a593Smuzhiyun		};
388*4882a593Smuzhiyun
389*4882a593Smuzhiyun		target-module@43500000 {
390*4882a593Smuzhiyun			compatible = "ti,sysc-omap4", "ti,sysc";
391*4882a593Smuzhiyun			reg = <0x43500000 0x4>;
392*4882a593Smuzhiyun			reg-names = "rev";
393*4882a593Smuzhiyun			clocks = <&l3main1_clkctrl DRA7_L3MAIN1_TPTC1_CLKCTRL 0>;
394*4882a593Smuzhiyun			clock-names = "fck";
395*4882a593Smuzhiyun			#address-cells = <1>;
396*4882a593Smuzhiyun			#size-cells = <1>;
397*4882a593Smuzhiyun			ranges = <0x0 0x43500000 0x100000>;
398*4882a593Smuzhiyun
399*4882a593Smuzhiyun			edma_tptc1: dma@0 {
400*4882a593Smuzhiyun				compatible = "ti,edma3-tptc";
401*4882a593Smuzhiyun				reg = <0 0x100000>;
402*4882a593Smuzhiyun				interrupts = <GIC_SPI 371 IRQ_TYPE_LEVEL_HIGH>;
403*4882a593Smuzhiyun				interrupt-names = "edma3_tcerrint";
404*4882a593Smuzhiyun			};
405*4882a593Smuzhiyun		};
406*4882a593Smuzhiyun
407*4882a593Smuzhiyun		dmm@4e000000 {
408*4882a593Smuzhiyun			compatible = "ti,omap5-dmm";
409*4882a593Smuzhiyun			reg = <0x4e000000 0x800>;
410*4882a593Smuzhiyun			interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>;
411*4882a593Smuzhiyun			ti,hwmods = "dmm";
412*4882a593Smuzhiyun		};
413*4882a593Smuzhiyun
414*4882a593Smuzhiyun		ipu1: ipu@58820000 {
415*4882a593Smuzhiyun			compatible = "ti,dra7-ipu";
416*4882a593Smuzhiyun			reg = <0x58820000 0x10000>;
417*4882a593Smuzhiyun			reg-names = "l2ram";
418*4882a593Smuzhiyun			iommus = <&mmu_ipu1>;
419*4882a593Smuzhiyun			status = "disabled";
420*4882a593Smuzhiyun			resets = <&prm_ipu 0>, <&prm_ipu 1>;
421*4882a593Smuzhiyun			clocks = <&ipu1_clkctrl DRA7_IPU1_MMU_IPU1_CLKCTRL 0>;
422*4882a593Smuzhiyun			firmware-name = "dra7-ipu1-fw.xem4";
423*4882a593Smuzhiyun		};
424*4882a593Smuzhiyun
425*4882a593Smuzhiyun		ipu2: ipu@55020000 {
426*4882a593Smuzhiyun			compatible = "ti,dra7-ipu";
427*4882a593Smuzhiyun			reg = <0x55020000 0x10000>;
428*4882a593Smuzhiyun			reg-names = "l2ram";
429*4882a593Smuzhiyun			iommus = <&mmu_ipu2>;
430*4882a593Smuzhiyun			status = "disabled";
431*4882a593Smuzhiyun			resets = <&prm_core 0>, <&prm_core 1>;
432*4882a593Smuzhiyun			clocks = <&ipu2_clkctrl DRA7_IPU2_MMU_IPU2_CLKCTRL 0>;
433*4882a593Smuzhiyun			firmware-name = "dra7-ipu2-fw.xem4";
434*4882a593Smuzhiyun		};
435*4882a593Smuzhiyun
436*4882a593Smuzhiyun		dsp1: dsp@40800000 {
437*4882a593Smuzhiyun			compatible = "ti,dra7-dsp";
438*4882a593Smuzhiyun			reg = <0x40800000 0x48000>,
439*4882a593Smuzhiyun			      <0x40e00000 0x8000>,
440*4882a593Smuzhiyun			      <0x40f00000 0x8000>;
441*4882a593Smuzhiyun			reg-names = "l2ram", "l1pram", "l1dram";
442*4882a593Smuzhiyun			ti,bootreg = <&scm_conf 0x55c 10>;
443*4882a593Smuzhiyun			iommus = <&mmu0_dsp1>, <&mmu1_dsp1>;
444*4882a593Smuzhiyun			status = "disabled";
445*4882a593Smuzhiyun			resets = <&prm_dsp1 0>;
446*4882a593Smuzhiyun			clocks = <&dsp1_clkctrl DRA7_DSP1_MMU0_DSP1_CLKCTRL 0>;
447*4882a593Smuzhiyun			firmware-name = "dra7-dsp1-fw.xe66";
448*4882a593Smuzhiyun		};
449*4882a593Smuzhiyun
450*4882a593Smuzhiyun		target-module@40d01000 {
451*4882a593Smuzhiyun			compatible = "ti,sysc-omap2", "ti,sysc";
452*4882a593Smuzhiyun			reg = <0x40d01000 0x4>,
453*4882a593Smuzhiyun			      <0x40d01010 0x4>,
454*4882a593Smuzhiyun			      <0x40d01014 0x4>;
455*4882a593Smuzhiyun			reg-names = "rev", "sysc", "syss";
456*4882a593Smuzhiyun			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
457*4882a593Smuzhiyun					<SYSC_IDLE_NO>,
458*4882a593Smuzhiyun					<SYSC_IDLE_SMART>;
459*4882a593Smuzhiyun			ti,sysc-mask = <(SYSC_OMAP2_CLOCKACTIVITY |
460*4882a593Smuzhiyun					 SYSC_OMAP2_SOFTRESET |
461*4882a593Smuzhiyun					 SYSC_OMAP2_AUTOIDLE)>;
462*4882a593Smuzhiyun			clocks = <&dsp1_clkctrl DRA7_DSP1_MMU0_DSP1_CLKCTRL 0>;
463*4882a593Smuzhiyun			clock-names = "fck";
464*4882a593Smuzhiyun			resets = <&prm_dsp1 1>;
465*4882a593Smuzhiyun			reset-names = "rstctrl";
466*4882a593Smuzhiyun			ranges = <0x0 0x40d01000 0x1000>;
467*4882a593Smuzhiyun			#size-cells = <1>;
468*4882a593Smuzhiyun			#address-cells = <1>;
469*4882a593Smuzhiyun
470*4882a593Smuzhiyun			mmu0_dsp1: mmu@0 {
471*4882a593Smuzhiyun				compatible = "ti,dra7-dsp-iommu";
472*4882a593Smuzhiyun				reg = <0x0 0x100>;
473*4882a593Smuzhiyun				interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
474*4882a593Smuzhiyun				#iommu-cells = <0>;
475*4882a593Smuzhiyun				ti,syscon-mmuconfig = <&dsp1_system 0x0>;
476*4882a593Smuzhiyun			};
477*4882a593Smuzhiyun		};
478*4882a593Smuzhiyun
479*4882a593Smuzhiyun		target-module@40d02000 {
480*4882a593Smuzhiyun			compatible = "ti,sysc-omap2", "ti,sysc";
481*4882a593Smuzhiyun			reg = <0x40d02000 0x4>,
482*4882a593Smuzhiyun			      <0x40d02010 0x4>,
483*4882a593Smuzhiyun			      <0x40d02014 0x4>;
484*4882a593Smuzhiyun			reg-names = "rev", "sysc", "syss";
485*4882a593Smuzhiyun			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
486*4882a593Smuzhiyun					<SYSC_IDLE_NO>,
487*4882a593Smuzhiyun					<SYSC_IDLE_SMART>;
488*4882a593Smuzhiyun			ti,sysc-mask = <(SYSC_OMAP2_CLOCKACTIVITY |
489*4882a593Smuzhiyun					 SYSC_OMAP2_SOFTRESET |
490*4882a593Smuzhiyun					 SYSC_OMAP2_AUTOIDLE)>;
491*4882a593Smuzhiyun			clocks = <&dsp1_clkctrl DRA7_DSP1_MMU0_DSP1_CLKCTRL 0>;
492*4882a593Smuzhiyun			clock-names = "fck";
493*4882a593Smuzhiyun			resets = <&prm_dsp1 1>;
494*4882a593Smuzhiyun			reset-names = "rstctrl";
495*4882a593Smuzhiyun			ranges = <0x0 0x40d02000 0x1000>;
496*4882a593Smuzhiyun			#size-cells = <1>;
497*4882a593Smuzhiyun			#address-cells = <1>;
498*4882a593Smuzhiyun
499*4882a593Smuzhiyun			mmu1_dsp1: mmu@0 {
500*4882a593Smuzhiyun				compatible = "ti,dra7-dsp-iommu";
501*4882a593Smuzhiyun				reg = <0x0 0x100>;
502*4882a593Smuzhiyun				interrupts = <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>;
503*4882a593Smuzhiyun				#iommu-cells = <0>;
504*4882a593Smuzhiyun				ti,syscon-mmuconfig = <&dsp1_system 0x1>;
505*4882a593Smuzhiyun			};
506*4882a593Smuzhiyun		};
507*4882a593Smuzhiyun
508*4882a593Smuzhiyun		target-module@58882000 {
509*4882a593Smuzhiyun			compatible = "ti,sysc-omap2", "ti,sysc";
510*4882a593Smuzhiyun			reg = <0x58882000 0x4>,
511*4882a593Smuzhiyun			      <0x58882010 0x4>,
512*4882a593Smuzhiyun			      <0x58882014 0x4>;
513*4882a593Smuzhiyun			reg-names = "rev", "sysc", "syss";
514*4882a593Smuzhiyun			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
515*4882a593Smuzhiyun					<SYSC_IDLE_NO>,
516*4882a593Smuzhiyun					<SYSC_IDLE_SMART>;
517*4882a593Smuzhiyun			ti,sysc-mask = <(SYSC_OMAP2_CLOCKACTIVITY |
518*4882a593Smuzhiyun					 SYSC_OMAP2_SOFTRESET |
519*4882a593Smuzhiyun					 SYSC_OMAP2_AUTOIDLE)>;
520*4882a593Smuzhiyun			clocks = <&ipu1_clkctrl DRA7_IPU1_MMU_IPU1_CLKCTRL 0>;
521*4882a593Smuzhiyun			clock-names = "fck";
522*4882a593Smuzhiyun			resets = <&prm_ipu 2>;
523*4882a593Smuzhiyun			reset-names = "rstctrl";
524*4882a593Smuzhiyun			#address-cells = <1>;
525*4882a593Smuzhiyun			#size-cells = <1>;
526*4882a593Smuzhiyun			ranges = <0x0 0x58882000 0x100>;
527*4882a593Smuzhiyun
528*4882a593Smuzhiyun			mmu_ipu1: mmu@0 {
529*4882a593Smuzhiyun				compatible = "ti,dra7-iommu";
530*4882a593Smuzhiyun				reg = <0x0 0x100>;
531*4882a593Smuzhiyun				interrupts = <GIC_SPI 395 IRQ_TYPE_LEVEL_HIGH>;
532*4882a593Smuzhiyun				#iommu-cells = <0>;
533*4882a593Smuzhiyun				ti,iommu-bus-err-back;
534*4882a593Smuzhiyun			};
535*4882a593Smuzhiyun		};
536*4882a593Smuzhiyun
537*4882a593Smuzhiyun		target-module@55082000 {
538*4882a593Smuzhiyun			compatible = "ti,sysc-omap2", "ti,sysc";
539*4882a593Smuzhiyun			reg = <0x55082000 0x4>,
540*4882a593Smuzhiyun			      <0x55082010 0x4>,
541*4882a593Smuzhiyun			      <0x55082014 0x4>;
542*4882a593Smuzhiyun			reg-names = "rev", "sysc", "syss";
543*4882a593Smuzhiyun			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
544*4882a593Smuzhiyun					<SYSC_IDLE_NO>,
545*4882a593Smuzhiyun					<SYSC_IDLE_SMART>;
546*4882a593Smuzhiyun			ti,sysc-mask = <(SYSC_OMAP2_CLOCKACTIVITY |
547*4882a593Smuzhiyun					 SYSC_OMAP2_SOFTRESET |
548*4882a593Smuzhiyun					 SYSC_OMAP2_AUTOIDLE)>;
549*4882a593Smuzhiyun			clocks = <&ipu2_clkctrl DRA7_IPU2_MMU_IPU2_CLKCTRL 0>;
550*4882a593Smuzhiyun			clock-names = "fck";
551*4882a593Smuzhiyun			resets = <&prm_core 2>;
552*4882a593Smuzhiyun			reset-names = "rstctrl";
553*4882a593Smuzhiyun			#address-cells = <1>;
554*4882a593Smuzhiyun			#size-cells = <1>;
555*4882a593Smuzhiyun			ranges = <0x0 0x55082000 0x100>;
556*4882a593Smuzhiyun
557*4882a593Smuzhiyun			mmu_ipu2: mmu@0 {
558*4882a593Smuzhiyun				compatible = "ti,dra7-iommu";
559*4882a593Smuzhiyun				reg = <0x0 0x100>;
560*4882a593Smuzhiyun				interrupts = <GIC_SPI 396 IRQ_TYPE_LEVEL_HIGH>;
561*4882a593Smuzhiyun				#iommu-cells = <0>;
562*4882a593Smuzhiyun				ti,iommu-bus-err-back;
563*4882a593Smuzhiyun			};
564*4882a593Smuzhiyun		};
565*4882a593Smuzhiyun
566*4882a593Smuzhiyun		abb_mpu: regulator-abb-mpu {
567*4882a593Smuzhiyun			compatible = "ti,abb-v3";
568*4882a593Smuzhiyun			regulator-name = "abb_mpu";
569*4882a593Smuzhiyun			#address-cells = <0>;
570*4882a593Smuzhiyun			#size-cells = <0>;
571*4882a593Smuzhiyun			clocks = <&sys_clkin1>;
572*4882a593Smuzhiyun			ti,settling-time = <50>;
573*4882a593Smuzhiyun			ti,clock-cycles = <16>;
574*4882a593Smuzhiyun
575*4882a593Smuzhiyun			reg = <0x4ae07ddc 0x4>, <0x4ae07de0 0x4>,
576*4882a593Smuzhiyun			      <0x4ae06014 0x4>, <0x4a003b20 0xc>,
577*4882a593Smuzhiyun			      <0x4ae0c158 0x4>;
578*4882a593Smuzhiyun			reg-names = "setup-address", "control-address",
579*4882a593Smuzhiyun				    "int-address", "efuse-address",
580*4882a593Smuzhiyun				    "ldo-address";
581*4882a593Smuzhiyun			ti,tranxdone-status-mask = <0x80>;
582*4882a593Smuzhiyun			/* LDOVBBMPU_FBB_MUX_CTRL */
583*4882a593Smuzhiyun			ti,ldovbb-override-mask = <0x400>;
584*4882a593Smuzhiyun			/* LDOVBBMPU_FBB_VSET_OUT */
585*4882a593Smuzhiyun			ti,ldovbb-vset-mask = <0x1F>;
586*4882a593Smuzhiyun
587*4882a593Smuzhiyun			/*
588*4882a593Smuzhiyun			 * NOTE: only FBB mode used but actual vset will
589*4882a593Smuzhiyun			 * determine final biasing
590*4882a593Smuzhiyun			 */
591*4882a593Smuzhiyun			ti,abb_info = <
592*4882a593Smuzhiyun			/*uV		ABB	efuse	rbb_m fbb_m	vset_m*/
593*4882a593Smuzhiyun			1060000		0	0x0	0 0x02000000 0x01F00000
594*4882a593Smuzhiyun			1160000		0	0x4	0 0x02000000 0x01F00000
595*4882a593Smuzhiyun			1210000		0	0x8	0 0x02000000 0x01F00000
596*4882a593Smuzhiyun			>;
597*4882a593Smuzhiyun		};
598*4882a593Smuzhiyun
599*4882a593Smuzhiyun		abb_ivahd: regulator-abb-ivahd {
600*4882a593Smuzhiyun			compatible = "ti,abb-v3";
601*4882a593Smuzhiyun			regulator-name = "abb_ivahd";
602*4882a593Smuzhiyun			#address-cells = <0>;
603*4882a593Smuzhiyun			#size-cells = <0>;
604*4882a593Smuzhiyun			clocks = <&sys_clkin1>;
605*4882a593Smuzhiyun			ti,settling-time = <50>;
606*4882a593Smuzhiyun			ti,clock-cycles = <16>;
607*4882a593Smuzhiyun
608*4882a593Smuzhiyun			reg = <0x4ae07e34 0x4>, <0x4ae07e24 0x4>,
609*4882a593Smuzhiyun			      <0x4ae06010 0x4>, <0x4a0025cc 0xc>,
610*4882a593Smuzhiyun			      <0x4a002470 0x4>;
611*4882a593Smuzhiyun			reg-names = "setup-address", "control-address",
612*4882a593Smuzhiyun				    "int-address", "efuse-address",
613*4882a593Smuzhiyun				    "ldo-address";
614*4882a593Smuzhiyun			ti,tranxdone-status-mask = <0x40000000>;
615*4882a593Smuzhiyun			/* LDOVBBIVA_FBB_MUX_CTRL */
616*4882a593Smuzhiyun			ti,ldovbb-override-mask = <0x400>;
617*4882a593Smuzhiyun			/* LDOVBBIVA_FBB_VSET_OUT */
618*4882a593Smuzhiyun			ti,ldovbb-vset-mask = <0x1F>;
619*4882a593Smuzhiyun
620*4882a593Smuzhiyun			/*
621*4882a593Smuzhiyun			 * NOTE: only FBB mode used but actual vset will
622*4882a593Smuzhiyun			 * determine final biasing
623*4882a593Smuzhiyun			 */
624*4882a593Smuzhiyun			ti,abb_info = <
625*4882a593Smuzhiyun			/*uV		ABB	efuse	rbb_m fbb_m	vset_m*/
626*4882a593Smuzhiyun			1055000		0	0x0	0 0x02000000 0x01F00000
627*4882a593Smuzhiyun			1150000		0	0x4	0 0x02000000 0x01F00000
628*4882a593Smuzhiyun			1250000		0	0x8	0 0x02000000 0x01F00000
629*4882a593Smuzhiyun			>;
630*4882a593Smuzhiyun		};
631*4882a593Smuzhiyun
632*4882a593Smuzhiyun		abb_dspeve: regulator-abb-dspeve {
633*4882a593Smuzhiyun			compatible = "ti,abb-v3";
634*4882a593Smuzhiyun			regulator-name = "abb_dspeve";
635*4882a593Smuzhiyun			#address-cells = <0>;
636*4882a593Smuzhiyun			#size-cells = <0>;
637*4882a593Smuzhiyun			clocks = <&sys_clkin1>;
638*4882a593Smuzhiyun			ti,settling-time = <50>;
639*4882a593Smuzhiyun			ti,clock-cycles = <16>;
640*4882a593Smuzhiyun
641*4882a593Smuzhiyun			reg = <0x4ae07e30 0x4>, <0x4ae07e20 0x4>,
642*4882a593Smuzhiyun			      <0x4ae06010 0x4>, <0x4a0025e0 0xc>,
643*4882a593Smuzhiyun			      <0x4a00246c 0x4>;
644*4882a593Smuzhiyun			reg-names = "setup-address", "control-address",
645*4882a593Smuzhiyun				    "int-address", "efuse-address",
646*4882a593Smuzhiyun				    "ldo-address";
647*4882a593Smuzhiyun			ti,tranxdone-status-mask = <0x20000000>;
648*4882a593Smuzhiyun			/* LDOVBBDSPEVE_FBB_MUX_CTRL */
649*4882a593Smuzhiyun			ti,ldovbb-override-mask = <0x400>;
650*4882a593Smuzhiyun			/* LDOVBBDSPEVE_FBB_VSET_OUT */
651*4882a593Smuzhiyun			ti,ldovbb-vset-mask = <0x1F>;
652*4882a593Smuzhiyun
653*4882a593Smuzhiyun			/*
654*4882a593Smuzhiyun			 * NOTE: only FBB mode used but actual vset will
655*4882a593Smuzhiyun			 * determine final biasing
656*4882a593Smuzhiyun			 */
657*4882a593Smuzhiyun			ti,abb_info = <
658*4882a593Smuzhiyun			/*uV		ABB	efuse	rbb_m fbb_m	vset_m*/
659*4882a593Smuzhiyun			1055000		0	0x0	0 0x02000000 0x01F00000
660*4882a593Smuzhiyun			1150000		0	0x4	0 0x02000000 0x01F00000
661*4882a593Smuzhiyun			1250000		0	0x8	0 0x02000000 0x01F00000
662*4882a593Smuzhiyun			>;
663*4882a593Smuzhiyun		};
664*4882a593Smuzhiyun
665*4882a593Smuzhiyun		abb_gpu: regulator-abb-gpu {
666*4882a593Smuzhiyun			compatible = "ti,abb-v3";
667*4882a593Smuzhiyun			regulator-name = "abb_gpu";
668*4882a593Smuzhiyun			#address-cells = <0>;
669*4882a593Smuzhiyun			#size-cells = <0>;
670*4882a593Smuzhiyun			clocks = <&sys_clkin1>;
671*4882a593Smuzhiyun			ti,settling-time = <50>;
672*4882a593Smuzhiyun			ti,clock-cycles = <16>;
673*4882a593Smuzhiyun
674*4882a593Smuzhiyun			reg = <0x4ae07de4 0x4>, <0x4ae07de8 0x4>,
675*4882a593Smuzhiyun			      <0x4ae06010 0x4>, <0x4a003b08 0xc>,
676*4882a593Smuzhiyun			      <0x4ae0c154 0x4>;
677*4882a593Smuzhiyun			reg-names = "setup-address", "control-address",
678*4882a593Smuzhiyun				    "int-address", "efuse-address",
679*4882a593Smuzhiyun				    "ldo-address";
680*4882a593Smuzhiyun			ti,tranxdone-status-mask = <0x10000000>;
681*4882a593Smuzhiyun			/* LDOVBBGPU_FBB_MUX_CTRL */
682*4882a593Smuzhiyun			ti,ldovbb-override-mask = <0x400>;
683*4882a593Smuzhiyun			/* LDOVBBGPU_FBB_VSET_OUT */
684*4882a593Smuzhiyun			ti,ldovbb-vset-mask = <0x1F>;
685*4882a593Smuzhiyun
686*4882a593Smuzhiyun			/*
687*4882a593Smuzhiyun			 * NOTE: only FBB mode used but actual vset will
688*4882a593Smuzhiyun			 * determine final biasing
689*4882a593Smuzhiyun			 */
690*4882a593Smuzhiyun			ti,abb_info = <
691*4882a593Smuzhiyun			/*uV		ABB	efuse	rbb_m fbb_m	vset_m*/
692*4882a593Smuzhiyun			1090000		0	0x0	0 0x02000000 0x01F00000
693*4882a593Smuzhiyun			1210000		0	0x4	0 0x02000000 0x01F00000
694*4882a593Smuzhiyun			1280000		0	0x8	0 0x02000000 0x01F00000
695*4882a593Smuzhiyun			>;
696*4882a593Smuzhiyun		};
697*4882a593Smuzhiyun
698*4882a593Smuzhiyun		qspi: spi@4b300000 {
699*4882a593Smuzhiyun			compatible = "ti,dra7xxx-qspi";
700*4882a593Smuzhiyun			reg = <0x4b300000 0x100>,
701*4882a593Smuzhiyun			      <0x5c000000 0x4000000>;
702*4882a593Smuzhiyun			reg-names = "qspi_base", "qspi_mmap";
703*4882a593Smuzhiyun			syscon-chipselects = <&scm_conf 0x558>;
704*4882a593Smuzhiyun			#address-cells = <1>;
705*4882a593Smuzhiyun			#size-cells = <0>;
706*4882a593Smuzhiyun			ti,hwmods = "qspi";
707*4882a593Smuzhiyun			clocks = <&l4per2_clkctrl DRA7_L4PER2_QSPI_CLKCTRL 25>;
708*4882a593Smuzhiyun			clock-names = "fck";
709*4882a593Smuzhiyun			num-cs = <4>;
710*4882a593Smuzhiyun			interrupts = <GIC_SPI 343 IRQ_TYPE_LEVEL_HIGH>;
711*4882a593Smuzhiyun			status = "disabled";
712*4882a593Smuzhiyun		};
713*4882a593Smuzhiyun
714*4882a593Smuzhiyun		/* OCP2SCP3 */
715*4882a593Smuzhiyun		sata: sata@4a141100 {
716*4882a593Smuzhiyun			compatible = "snps,dwc-ahci";
717*4882a593Smuzhiyun			reg = <0x4a140000 0x1100>, <0x4a141100 0x7>;
718*4882a593Smuzhiyun			interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
719*4882a593Smuzhiyun			phys = <&sata_phy>;
720*4882a593Smuzhiyun			phy-names = "sata-phy";
721*4882a593Smuzhiyun			clocks = <&l3init_clkctrl DRA7_L3INIT_SATA_CLKCTRL 8>;
722*4882a593Smuzhiyun			ti,hwmods = "sata";
723*4882a593Smuzhiyun			ports-implemented = <0x1>;
724*4882a593Smuzhiyun		};
725*4882a593Smuzhiyun
726*4882a593Smuzhiyun		/* OCP2SCP1 */
727*4882a593Smuzhiyun		/* IRQ for DWC3_3 and DWC3_4 need IRQ crossbar */
728*4882a593Smuzhiyun		gpmc: gpmc@50000000 {
729*4882a593Smuzhiyun			compatible = "ti,am3352-gpmc";
730*4882a593Smuzhiyun			ti,hwmods = "gpmc";
731*4882a593Smuzhiyun			reg = <0x50000000 0x37c>;      /* device IO registers */
732*4882a593Smuzhiyun			interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
733*4882a593Smuzhiyun			dmas = <&edma_xbar 4 0>;
734*4882a593Smuzhiyun			dma-names = "rxtx";
735*4882a593Smuzhiyun			gpmc,num-cs = <8>;
736*4882a593Smuzhiyun			gpmc,num-waitpins = <2>;
737*4882a593Smuzhiyun			#address-cells = <2>;
738*4882a593Smuzhiyun			#size-cells = <1>;
739*4882a593Smuzhiyun			interrupt-controller;
740*4882a593Smuzhiyun			#interrupt-cells = <2>;
741*4882a593Smuzhiyun			gpio-controller;
742*4882a593Smuzhiyun			#gpio-cells = <2>;
743*4882a593Smuzhiyun			status = "disabled";
744*4882a593Smuzhiyun		};
745*4882a593Smuzhiyun
746*4882a593Smuzhiyun		target-module@56000000 {
747*4882a593Smuzhiyun			compatible = "ti,sysc-omap4", "ti,sysc";
748*4882a593Smuzhiyun			reg = <0x5600fe00 0x4>,
749*4882a593Smuzhiyun			      <0x5600fe10 0x4>;
750*4882a593Smuzhiyun			reg-names = "rev", "sysc";
751*4882a593Smuzhiyun			ti,sysc-midle = <SYSC_IDLE_FORCE>,
752*4882a593Smuzhiyun					<SYSC_IDLE_NO>,
753*4882a593Smuzhiyun					<SYSC_IDLE_SMART>;
754*4882a593Smuzhiyun			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
755*4882a593Smuzhiyun					<SYSC_IDLE_NO>,
756*4882a593Smuzhiyun					<SYSC_IDLE_SMART>;
757*4882a593Smuzhiyun			clocks = <&gpu_clkctrl DRA7_GPU_CLKCTRL 0>;
758*4882a593Smuzhiyun			clock-names = "fck";
759*4882a593Smuzhiyun			#address-cells = <1>;
760*4882a593Smuzhiyun			#size-cells = <1>;
761*4882a593Smuzhiyun			ranges = <0 0x56000000 0x2000000>;
762*4882a593Smuzhiyun		};
763*4882a593Smuzhiyun
764*4882a593Smuzhiyun		crossbar_mpu: crossbar@4a002a48 {
765*4882a593Smuzhiyun			compatible = "ti,irq-crossbar";
766*4882a593Smuzhiyun			reg = <0x4a002a48 0x130>;
767*4882a593Smuzhiyun			interrupt-controller;
768*4882a593Smuzhiyun			interrupt-parent = <&wakeupgen>;
769*4882a593Smuzhiyun			#interrupt-cells = <3>;
770*4882a593Smuzhiyun			ti,max-irqs = <160>;
771*4882a593Smuzhiyun			ti,max-crossbar-sources = <MAX_SOURCES>;
772*4882a593Smuzhiyun			ti,reg-size = <2>;
773*4882a593Smuzhiyun			ti,irqs-reserved = <0 1 2 3 5 6 131 132>;
774*4882a593Smuzhiyun			ti,irqs-skip = <10 133 139 140>;
775*4882a593Smuzhiyun			ti,irqs-safe-map = <0>;
776*4882a593Smuzhiyun		};
777*4882a593Smuzhiyun
778*4882a593Smuzhiyun		target-module@58000000 {
779*4882a593Smuzhiyun			compatible = "ti,sysc-omap2", "ti,sysc";
780*4882a593Smuzhiyun			reg = <0x58000000 4>,
781*4882a593Smuzhiyun			      <0x58000014 4>;
782*4882a593Smuzhiyun			reg-names = "rev", "syss";
783*4882a593Smuzhiyun			ti,syss-mask = <1>;
784*4882a593Smuzhiyun			clocks = <&dss_clkctrl DRA7_DSS_CORE_CLKCTRL 0>,
785*4882a593Smuzhiyun				 <&dss_clkctrl DRA7_DSS_CORE_CLKCTRL 9>,
786*4882a593Smuzhiyun				 <&dss_clkctrl DRA7_DSS_CORE_CLKCTRL 10>,
787*4882a593Smuzhiyun				 <&dss_clkctrl DRA7_DSS_CORE_CLKCTRL 11>;
788*4882a593Smuzhiyun			clock-names = "fck", "hdmi_clk", "sys_clk", "tv_clk";
789*4882a593Smuzhiyun			#address-cells = <1>;
790*4882a593Smuzhiyun			#size-cells = <1>;
791*4882a593Smuzhiyun			ranges = <0 0x58000000 0x800000>;
792*4882a593Smuzhiyun
793*4882a593Smuzhiyun			dss: dss@0 {
794*4882a593Smuzhiyun				compatible = "ti,dra7-dss";
795*4882a593Smuzhiyun				/* 'reg' defined in dra72x.dtsi and dra74x.dtsi */
796*4882a593Smuzhiyun				/* 'clocks' defined in dra72x.dtsi and dra74x.dtsi */
797*4882a593Smuzhiyun				status = "disabled";
798*4882a593Smuzhiyun				/* CTRL_CORE_DSS_PLL_CONTROL */
799*4882a593Smuzhiyun				syscon-pll-ctrl = <&scm_conf 0x538>;
800*4882a593Smuzhiyun				#address-cells = <1>;
801*4882a593Smuzhiyun				#size-cells = <1>;
802*4882a593Smuzhiyun				ranges = <0 0 0x800000>;
803*4882a593Smuzhiyun
804*4882a593Smuzhiyun				target-module@1000 {
805*4882a593Smuzhiyun					compatible = "ti,sysc-omap2", "ti,sysc";
806*4882a593Smuzhiyun					reg = <0x1000 0x4>,
807*4882a593Smuzhiyun					      <0x1010 0x4>,
808*4882a593Smuzhiyun					      <0x1014 0x4>;
809*4882a593Smuzhiyun					reg-names = "rev", "sysc", "syss";
810*4882a593Smuzhiyun					ti,sysc-sidle = <SYSC_IDLE_FORCE>,
811*4882a593Smuzhiyun							<SYSC_IDLE_NO>,
812*4882a593Smuzhiyun							<SYSC_IDLE_SMART>;
813*4882a593Smuzhiyun					ti,sysc-midle = <SYSC_IDLE_FORCE>,
814*4882a593Smuzhiyun							<SYSC_IDLE_NO>,
815*4882a593Smuzhiyun							<SYSC_IDLE_SMART>;
816*4882a593Smuzhiyun					ti,sysc-mask = <(SYSC_OMAP2_CLOCKACTIVITY |
817*4882a593Smuzhiyun							 SYSC_OMAP2_ENAWAKEUP |
818*4882a593Smuzhiyun							 SYSC_OMAP2_SOFTRESET |
819*4882a593Smuzhiyun							 SYSC_OMAP2_AUTOIDLE)>;
820*4882a593Smuzhiyun					ti,syss-mask = <1>;
821*4882a593Smuzhiyun					clocks = <&dss_clkctrl DRA7_DSS_CORE_CLKCTRL 8>;
822*4882a593Smuzhiyun					clock-names = "fck";
823*4882a593Smuzhiyun					#address-cells = <1>;
824*4882a593Smuzhiyun					#size-cells = <1>;
825*4882a593Smuzhiyun					ranges = <0 0x1000 0x1000>;
826*4882a593Smuzhiyun
827*4882a593Smuzhiyun					dispc@0 {
828*4882a593Smuzhiyun						compatible = "ti,dra7-dispc";
829*4882a593Smuzhiyun						reg = <0 0x1000>;
830*4882a593Smuzhiyun						interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
831*4882a593Smuzhiyun						clocks = <&dss_clkctrl DRA7_DSS_DSS_CORE_CLKCTRL 8>;
832*4882a593Smuzhiyun						clock-names = "fck";
833*4882a593Smuzhiyun						/* CTRL_CORE_SMA_SW_1 */
834*4882a593Smuzhiyun						syscon-pol = <&scm_conf 0x534>;
835*4882a593Smuzhiyun					};
836*4882a593Smuzhiyun				};
837*4882a593Smuzhiyun
838*4882a593Smuzhiyun				target-module@40000 {
839*4882a593Smuzhiyun					compatible = "ti,sysc-omap4", "ti,sysc";
840*4882a593Smuzhiyun					reg = <0x40000 0x4>,
841*4882a593Smuzhiyun					      <0x40010 0x4>;
842*4882a593Smuzhiyun					reg-names = "rev", "sysc";
843*4882a593Smuzhiyun					ti,sysc-sidle = <SYSC_IDLE_FORCE>,
844*4882a593Smuzhiyun							<SYSC_IDLE_NO>,
845*4882a593Smuzhiyun							<SYSC_IDLE_SMART>,
846*4882a593Smuzhiyun							<SYSC_IDLE_SMART_WKUP>;
847*4882a593Smuzhiyun					ti,sysc-mask = <(SYSC_OMAP4_SOFTRESET)>;
848*4882a593Smuzhiyun					clocks = <&dss_clkctrl DRA7_DSS_CORE_CLKCTRL 9>,
849*4882a593Smuzhiyun						 <&dss_clkctrl DRA7_DSS_CORE_CLKCTRL 8>;
850*4882a593Smuzhiyun					clock-names = "fck", "dss_clk";
851*4882a593Smuzhiyun					#address-cells = <1>;
852*4882a593Smuzhiyun					#size-cells = <1>;
853*4882a593Smuzhiyun					ranges = <0 0x40000 0x40000>;
854*4882a593Smuzhiyun
855*4882a593Smuzhiyun					hdmi: encoder@0 {
856*4882a593Smuzhiyun						compatible = "ti,dra7-hdmi";
857*4882a593Smuzhiyun						reg = <0 0x200>,
858*4882a593Smuzhiyun						      <0x200 0x80>,
859*4882a593Smuzhiyun						      <0x300 0x80>,
860*4882a593Smuzhiyun						      <0x20000 0x19000>;
861*4882a593Smuzhiyun						reg-names = "wp", "pll", "phy", "core";
862*4882a593Smuzhiyun						interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
863*4882a593Smuzhiyun						status = "disabled";
864*4882a593Smuzhiyun						clocks = <&dss_clkctrl DRA7_DSS_DSS_CORE_CLKCTRL 9>,
865*4882a593Smuzhiyun							 <&dss_clkctrl DRA7_DSS_DSS_CORE_CLKCTRL 10>;
866*4882a593Smuzhiyun						clock-names = "fck", "sys_clk";
867*4882a593Smuzhiyun						dmas = <&sdma_xbar 76>;
868*4882a593Smuzhiyun						dma-names = "audio_tx";
869*4882a593Smuzhiyun					};
870*4882a593Smuzhiyun				};
871*4882a593Smuzhiyun			};
872*4882a593Smuzhiyun		};
873*4882a593Smuzhiyun
874*4882a593Smuzhiyun		aes1_target: target-module@4b500000 {
875*4882a593Smuzhiyun			compatible = "ti,sysc-omap2", "ti,sysc";
876*4882a593Smuzhiyun			reg = <0x4b500080 0x4>,
877*4882a593Smuzhiyun			      <0x4b500084 0x4>,
878*4882a593Smuzhiyun			      <0x4b500088 0x4>;
879*4882a593Smuzhiyun			reg-names = "rev", "sysc", "syss";
880*4882a593Smuzhiyun			ti,sysc-mask = <(SYSC_OMAP2_SOFTRESET |
881*4882a593Smuzhiyun					 SYSC_OMAP2_AUTOIDLE)>;
882*4882a593Smuzhiyun			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
883*4882a593Smuzhiyun					<SYSC_IDLE_NO>,
884*4882a593Smuzhiyun					<SYSC_IDLE_SMART>,
885*4882a593Smuzhiyun					<SYSC_IDLE_SMART_WKUP>;
886*4882a593Smuzhiyun			ti,syss-mask = <1>;
887*4882a593Smuzhiyun			/* Domains (P, C): per_pwrdm, l4sec_clkdm */
888*4882a593Smuzhiyun			clocks = <&l4sec_clkctrl DRA7_L4SEC_AES1_CLKCTRL 0>;
889*4882a593Smuzhiyun			clock-names = "fck";
890*4882a593Smuzhiyun			#address-cells = <1>;
891*4882a593Smuzhiyun			#size-cells = <1>;
892*4882a593Smuzhiyun			ranges = <0x0 0x4b500000 0x1000>;
893*4882a593Smuzhiyun
894*4882a593Smuzhiyun			aes1: aes@0 {
895*4882a593Smuzhiyun				compatible = "ti,omap4-aes";
896*4882a593Smuzhiyun				reg = <0 0xa0>;
897*4882a593Smuzhiyun				interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>;
898*4882a593Smuzhiyun				dmas = <&edma_xbar 111 0>, <&edma_xbar 110 0>;
899*4882a593Smuzhiyun				dma-names = "tx", "rx";
900*4882a593Smuzhiyun				clocks = <&l3_iclk_div>;
901*4882a593Smuzhiyun				clock-names = "fck";
902*4882a593Smuzhiyun			};
903*4882a593Smuzhiyun		};
904*4882a593Smuzhiyun
905*4882a593Smuzhiyun		aes2_target: target-module@4b700000 {
906*4882a593Smuzhiyun			compatible = "ti,sysc-omap2", "ti,sysc";
907*4882a593Smuzhiyun			reg = <0x4b700080 0x4>,
908*4882a593Smuzhiyun			      <0x4b700084 0x4>,
909*4882a593Smuzhiyun			      <0x4b700088 0x4>;
910*4882a593Smuzhiyun			reg-names = "rev", "sysc", "syss";
911*4882a593Smuzhiyun			ti,sysc-mask = <(SYSC_OMAP2_SOFTRESET |
912*4882a593Smuzhiyun					 SYSC_OMAP2_AUTOIDLE)>;
913*4882a593Smuzhiyun			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
914*4882a593Smuzhiyun					<SYSC_IDLE_NO>,
915*4882a593Smuzhiyun					<SYSC_IDLE_SMART>,
916*4882a593Smuzhiyun					<SYSC_IDLE_SMART_WKUP>;
917*4882a593Smuzhiyun			ti,syss-mask = <1>;
918*4882a593Smuzhiyun			/* Domains (P, C): per_pwrdm, l4sec_clkdm */
919*4882a593Smuzhiyun			clocks = <&l4sec_clkctrl DRA7_L4SEC_AES2_CLKCTRL 0>;
920*4882a593Smuzhiyun			clock-names = "fck";
921*4882a593Smuzhiyun			#address-cells = <1>;
922*4882a593Smuzhiyun			#size-cells = <1>;
923*4882a593Smuzhiyun			ranges = <0x0 0x4b700000 0x1000>;
924*4882a593Smuzhiyun
925*4882a593Smuzhiyun			aes2: aes@0 {
926*4882a593Smuzhiyun				compatible = "ti,omap4-aes";
927*4882a593Smuzhiyun				reg = <0 0xa0>;
928*4882a593Smuzhiyun				interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>;
929*4882a593Smuzhiyun				dmas = <&edma_xbar 114 0>, <&edma_xbar 113 0>;
930*4882a593Smuzhiyun				dma-names = "tx", "rx";
931*4882a593Smuzhiyun				clocks = <&l3_iclk_div>;
932*4882a593Smuzhiyun				clock-names = "fck";
933*4882a593Smuzhiyun			};
934*4882a593Smuzhiyun		};
935*4882a593Smuzhiyun
936*4882a593Smuzhiyun		sham_target: target-module@4b101000 {
937*4882a593Smuzhiyun			compatible = "ti,sysc-omap3-sham", "ti,sysc";
938*4882a593Smuzhiyun			reg = <0x4b101100 0x4>,
939*4882a593Smuzhiyun			      <0x4b101110 0x4>,
940*4882a593Smuzhiyun			      <0x4b101114 0x4>;
941*4882a593Smuzhiyun			reg-names = "rev", "sysc", "syss";
942*4882a593Smuzhiyun			ti,sysc-mask = <(SYSC_OMAP2_SOFTRESET |
943*4882a593Smuzhiyun					 SYSC_OMAP2_AUTOIDLE)>;
944*4882a593Smuzhiyun			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
945*4882a593Smuzhiyun					<SYSC_IDLE_NO>,
946*4882a593Smuzhiyun					<SYSC_IDLE_SMART>;
947*4882a593Smuzhiyun			ti,syss-mask = <1>;
948*4882a593Smuzhiyun			/* Domains (P, C): l4per_pwrdm, l4sec_clkdm */
949*4882a593Smuzhiyun			clocks = <&l4sec_clkctrl DRA7_L4SEC_SHAM_CLKCTRL 0>;
950*4882a593Smuzhiyun			clock-names = "fck";
951*4882a593Smuzhiyun			#address-cells = <1>;
952*4882a593Smuzhiyun			#size-cells = <1>;
953*4882a593Smuzhiyun			ranges = <0x0 0x4b101000 0x1000>;
954*4882a593Smuzhiyun
955*4882a593Smuzhiyun			sham: sham@0 {
956*4882a593Smuzhiyun				compatible = "ti,omap5-sham";
957*4882a593Smuzhiyun				reg = <0 0x300>;
958*4882a593Smuzhiyun				interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
959*4882a593Smuzhiyun				dmas = <&edma_xbar 119 0>;
960*4882a593Smuzhiyun				dma-names = "rx";
961*4882a593Smuzhiyun				clocks = <&l3_iclk_div>;
962*4882a593Smuzhiyun				clock-names = "fck";
963*4882a593Smuzhiyun			};
964*4882a593Smuzhiyun		};
965*4882a593Smuzhiyun
966*4882a593Smuzhiyun		opp_supply_mpu: opp-supply@4a003b20 {
967*4882a593Smuzhiyun			compatible = "ti,omap5-opp-supply";
968*4882a593Smuzhiyun			reg = <0x4a003b20 0xc>;
969*4882a593Smuzhiyun			ti,efuse-settings = <
970*4882a593Smuzhiyun			/* uV   offset */
971*4882a593Smuzhiyun			1060000 0x0
972*4882a593Smuzhiyun			1160000 0x4
973*4882a593Smuzhiyun			1210000 0x8
974*4882a593Smuzhiyun			>;
975*4882a593Smuzhiyun			ti,absolute-max-voltage-uv = <1500000>;
976*4882a593Smuzhiyun		};
977*4882a593Smuzhiyun
978*4882a593Smuzhiyun	};
979*4882a593Smuzhiyun
980*4882a593Smuzhiyun	thermal_zones: thermal-zones {
981*4882a593Smuzhiyun		#include "omap4-cpu-thermal.dtsi"
982*4882a593Smuzhiyun		#include "omap5-gpu-thermal.dtsi"
983*4882a593Smuzhiyun		#include "omap5-core-thermal.dtsi"
984*4882a593Smuzhiyun		#include "dra7-dspeve-thermal.dtsi"
985*4882a593Smuzhiyun		#include "dra7-iva-thermal.dtsi"
986*4882a593Smuzhiyun	};
987*4882a593Smuzhiyun
988*4882a593Smuzhiyun};
989*4882a593Smuzhiyun
990*4882a593Smuzhiyun&cpu_thermal {
991*4882a593Smuzhiyun	polling-delay = <500>; /* milliseconds */
992*4882a593Smuzhiyun	coefficients = <0 2000>;
993*4882a593Smuzhiyun};
994*4882a593Smuzhiyun
995*4882a593Smuzhiyun&gpu_thermal {
996*4882a593Smuzhiyun	coefficients = <0 2000>;
997*4882a593Smuzhiyun};
998*4882a593Smuzhiyun
999*4882a593Smuzhiyun&core_thermal {
1000*4882a593Smuzhiyun	coefficients = <0 2000>;
1001*4882a593Smuzhiyun};
1002*4882a593Smuzhiyun
1003*4882a593Smuzhiyun&dspeve_thermal {
1004*4882a593Smuzhiyun	coefficients = <0 2000>;
1005*4882a593Smuzhiyun};
1006*4882a593Smuzhiyun
1007*4882a593Smuzhiyun&iva_thermal {
1008*4882a593Smuzhiyun	coefficients = <0 2000>;
1009*4882a593Smuzhiyun};
1010*4882a593Smuzhiyun
1011*4882a593Smuzhiyun&cpu_crit {
1012*4882a593Smuzhiyun	temperature = <120000>; /* milli Celsius */
1013*4882a593Smuzhiyun};
1014*4882a593Smuzhiyun
1015*4882a593Smuzhiyun&core_crit {
1016*4882a593Smuzhiyun	temperature = <120000>; /* milli Celsius */
1017*4882a593Smuzhiyun};
1018*4882a593Smuzhiyun
1019*4882a593Smuzhiyun&gpu_crit {
1020*4882a593Smuzhiyun	temperature = <120000>; /* milli Celsius */
1021*4882a593Smuzhiyun};
1022*4882a593Smuzhiyun
1023*4882a593Smuzhiyun&dspeve_crit {
1024*4882a593Smuzhiyun	temperature = <120000>; /* milli Celsius */
1025*4882a593Smuzhiyun};
1026*4882a593Smuzhiyun
1027*4882a593Smuzhiyun&iva_crit {
1028*4882a593Smuzhiyun	temperature = <120000>; /* milli Celsius */
1029*4882a593Smuzhiyun};
1030*4882a593Smuzhiyun
1031*4882a593Smuzhiyun#include "dra7-l4.dtsi"
1032*4882a593Smuzhiyun#include "dra7xx-clocks.dtsi"
1033*4882a593Smuzhiyun
1034*4882a593Smuzhiyun&prm {
1035*4882a593Smuzhiyun	prm_dsp1: prm@400 {
1036*4882a593Smuzhiyun		compatible = "ti,dra7-prm-inst", "ti,omap-prm-inst";
1037*4882a593Smuzhiyun		reg = <0x400 0x100>;
1038*4882a593Smuzhiyun		#reset-cells = <1>;
1039*4882a593Smuzhiyun	};
1040*4882a593Smuzhiyun
1041*4882a593Smuzhiyun	prm_ipu: prm@500 {
1042*4882a593Smuzhiyun		compatible = "ti,dra7-prm-inst", "ti,omap-prm-inst";
1043*4882a593Smuzhiyun		reg = <0x500 0x100>;
1044*4882a593Smuzhiyun		#reset-cells = <1>;
1045*4882a593Smuzhiyun	};
1046*4882a593Smuzhiyun
1047*4882a593Smuzhiyun	prm_core: prm@700 {
1048*4882a593Smuzhiyun		compatible = "ti,dra7-prm-inst", "ti,omap-prm-inst";
1049*4882a593Smuzhiyun		reg = <0x700 0x100>;
1050*4882a593Smuzhiyun		#reset-cells = <1>;
1051*4882a593Smuzhiyun	};
1052*4882a593Smuzhiyun
1053*4882a593Smuzhiyun	prm_iva: prm@f00 {
1054*4882a593Smuzhiyun		compatible = "ti,dra7-prm-inst", "ti,omap-prm-inst";
1055*4882a593Smuzhiyun		reg = <0xf00 0x100>;
1056*4882a593Smuzhiyun	};
1057*4882a593Smuzhiyun
1058*4882a593Smuzhiyun	prm_dsp2: prm@1b00 {
1059*4882a593Smuzhiyun		compatible = "ti,dra7-prm-inst", "ti,omap-prm-inst";
1060*4882a593Smuzhiyun		reg = <0x1b00 0x40>;
1061*4882a593Smuzhiyun		#reset-cells = <1>;
1062*4882a593Smuzhiyun	};
1063*4882a593Smuzhiyun
1064*4882a593Smuzhiyun	prm_eve1: prm@1b40 {
1065*4882a593Smuzhiyun		compatible = "ti,dra7-prm-inst", "ti,omap-prm-inst";
1066*4882a593Smuzhiyun		reg = <0x1b40 0x40>;
1067*4882a593Smuzhiyun	};
1068*4882a593Smuzhiyun
1069*4882a593Smuzhiyun	prm_eve2: prm@1b80 {
1070*4882a593Smuzhiyun		compatible = "ti,dra7-prm-inst", "ti,omap-prm-inst";
1071*4882a593Smuzhiyun		reg = <0x1b80 0x40>;
1072*4882a593Smuzhiyun	};
1073*4882a593Smuzhiyun
1074*4882a593Smuzhiyun	prm_eve3: prm@1bc0 {
1075*4882a593Smuzhiyun		compatible = "ti,dra7-prm-inst", "ti,omap-prm-inst";
1076*4882a593Smuzhiyun		reg = <0x1bc0 0x40>;
1077*4882a593Smuzhiyun	};
1078*4882a593Smuzhiyun
1079*4882a593Smuzhiyun	prm_eve4: prm@1c00 {
1080*4882a593Smuzhiyun		compatible = "ti,dra7-prm-inst", "ti,omap-prm-inst";
1081*4882a593Smuzhiyun		reg = <0x1c00 0x60>;
1082*4882a593Smuzhiyun	};
1083*4882a593Smuzhiyun};
1084*4882a593Smuzhiyun
1085*4882a593Smuzhiyun/* Preferred always-on timer for clockevent */
1086*4882a593Smuzhiyun&timer1_target {
1087*4882a593Smuzhiyun	ti,no-reset-on-init;
1088*4882a593Smuzhiyun	ti,no-idle;
1089*4882a593Smuzhiyun	timer@0 {
1090*4882a593Smuzhiyun		assigned-clocks = <&wkupaon_clkctrl DRA7_TIMER1_CLKCTRL 24>;
1091*4882a593Smuzhiyun		assigned-clock-parents = <&sys_32k_ck>;
1092*4882a593Smuzhiyun	};
1093*4882a593Smuzhiyun};
1094*4882a593Smuzhiyun
1095*4882a593Smuzhiyun/* Local timers, see ARM architected timer wrap erratum i940 */
1096*4882a593Smuzhiyun&timer15_target {
1097*4882a593Smuzhiyun	ti,no-reset-on-init;
1098*4882a593Smuzhiyun	ti,no-idle;
1099*4882a593Smuzhiyun	timer@0 {
1100*4882a593Smuzhiyun		assigned-clocks = <&l4per3_clkctrl DRA7_L4PER3_TIMER15_CLKCTRL 24>;
1101*4882a593Smuzhiyun		assigned-clock-parents = <&timer_sys_clk_div>;
1102*4882a593Smuzhiyun	};
1103*4882a593Smuzhiyun};
1104*4882a593Smuzhiyun
1105*4882a593Smuzhiyun&timer16_target {
1106*4882a593Smuzhiyun	ti,no-reset-on-init;
1107*4882a593Smuzhiyun	ti,no-idle;
1108*4882a593Smuzhiyun	timer@0 {
1109*4882a593Smuzhiyun		assigned-clocks = <&l4per3_clkctrl DRA7_L4PER3_TIMER16_CLKCTRL 24>;
1110*4882a593Smuzhiyun		assigned-clock-parents = <&timer_sys_clk_div>;
1111*4882a593Smuzhiyun	};
1112*4882a593Smuzhiyun};
1113