xref: /OK3568_Linux_fs/kernel/arch/arm/boot/dts/exynos4412.dtsi (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun// SPDX-License-Identifier: GPL-2.0
2*4882a593Smuzhiyun/*
3*4882a593Smuzhiyun * Samsung's Exynos4412 SoC device tree source
4*4882a593Smuzhiyun *
5*4882a593Smuzhiyun * Copyright (c) 2012 Samsung Electronics Co., Ltd.
6*4882a593Smuzhiyun *		http://www.samsung.com
7*4882a593Smuzhiyun *
8*4882a593Smuzhiyun * Samsung's Exynos4412 SoC device nodes are listed in this file. Exynos4412
9*4882a593Smuzhiyun * based board files can include this file and provide values for board specfic
10*4882a593Smuzhiyun * bindings.
11*4882a593Smuzhiyun *
12*4882a593Smuzhiyun * Note: This file does not include device nodes for all the controllers in
13*4882a593Smuzhiyun * Exynos4412 SoC. As device tree coverage for Exynos4412 increases, additional
14*4882a593Smuzhiyun * nodes can be added to this file.
15*4882a593Smuzhiyun */
16*4882a593Smuzhiyun
17*4882a593Smuzhiyun#include "exynos4.dtsi"
18*4882a593Smuzhiyun
19*4882a593Smuzhiyun#include "exynos4-cpu-thermal.dtsi"
20*4882a593Smuzhiyun
21*4882a593Smuzhiyun/ {
22*4882a593Smuzhiyun	compatible = "samsung,exynos4412", "samsung,exynos4";
23*4882a593Smuzhiyun
24*4882a593Smuzhiyun	aliases {
25*4882a593Smuzhiyun		pinctrl0 = &pinctrl_0;
26*4882a593Smuzhiyun		pinctrl1 = &pinctrl_1;
27*4882a593Smuzhiyun		pinctrl2 = &pinctrl_2;
28*4882a593Smuzhiyun		pinctrl3 = &pinctrl_3;
29*4882a593Smuzhiyun		fimc-lite0 = &fimc_lite_0;
30*4882a593Smuzhiyun		fimc-lite1 = &fimc_lite_1;
31*4882a593Smuzhiyun		mshc0 = &mshc_0;
32*4882a593Smuzhiyun	};
33*4882a593Smuzhiyun
34*4882a593Smuzhiyun	cpus {
35*4882a593Smuzhiyun		#address-cells = <1>;
36*4882a593Smuzhiyun		#size-cells = <0>;
37*4882a593Smuzhiyun
38*4882a593Smuzhiyun		cpu0: cpu@a00 {
39*4882a593Smuzhiyun			device_type = "cpu";
40*4882a593Smuzhiyun			compatible = "arm,cortex-a9";
41*4882a593Smuzhiyun			reg = <0xA00>;
42*4882a593Smuzhiyun			clocks = <&clock CLK_ARM_CLK>;
43*4882a593Smuzhiyun			clock-names = "cpu";
44*4882a593Smuzhiyun			operating-points-v2 = <&cpu0_opp_table>;
45*4882a593Smuzhiyun			#cooling-cells = <2>; /* min followed by max */
46*4882a593Smuzhiyun		};
47*4882a593Smuzhiyun
48*4882a593Smuzhiyun		cpu1: cpu@a01 {
49*4882a593Smuzhiyun			device_type = "cpu";
50*4882a593Smuzhiyun			compatible = "arm,cortex-a9";
51*4882a593Smuzhiyun			reg = <0xA01>;
52*4882a593Smuzhiyun			clocks = <&clock CLK_ARM_CLK>;
53*4882a593Smuzhiyun			clock-names = "cpu";
54*4882a593Smuzhiyun			operating-points-v2 = <&cpu0_opp_table>;
55*4882a593Smuzhiyun			#cooling-cells = <2>; /* min followed by max */
56*4882a593Smuzhiyun		};
57*4882a593Smuzhiyun
58*4882a593Smuzhiyun		cpu2: cpu@a02 {
59*4882a593Smuzhiyun			device_type = "cpu";
60*4882a593Smuzhiyun			compatible = "arm,cortex-a9";
61*4882a593Smuzhiyun			reg = <0xA02>;
62*4882a593Smuzhiyun			clocks = <&clock CLK_ARM_CLK>;
63*4882a593Smuzhiyun			clock-names = "cpu";
64*4882a593Smuzhiyun			operating-points-v2 = <&cpu0_opp_table>;
65*4882a593Smuzhiyun			#cooling-cells = <2>; /* min followed by max */
66*4882a593Smuzhiyun		};
67*4882a593Smuzhiyun
68*4882a593Smuzhiyun		cpu3: cpu@a03 {
69*4882a593Smuzhiyun			device_type = "cpu";
70*4882a593Smuzhiyun			compatible = "arm,cortex-a9";
71*4882a593Smuzhiyun			reg = <0xA03>;
72*4882a593Smuzhiyun			clocks = <&clock CLK_ARM_CLK>;
73*4882a593Smuzhiyun			clock-names = "cpu";
74*4882a593Smuzhiyun			operating-points-v2 = <&cpu0_opp_table>;
75*4882a593Smuzhiyun			#cooling-cells = <2>; /* min followed by max */
76*4882a593Smuzhiyun		};
77*4882a593Smuzhiyun	};
78*4882a593Smuzhiyun
79*4882a593Smuzhiyun	cpu0_opp_table: opp-table0 {
80*4882a593Smuzhiyun		compatible = "operating-points-v2";
81*4882a593Smuzhiyun		opp-shared;
82*4882a593Smuzhiyun
83*4882a593Smuzhiyun		opp-200000000 {
84*4882a593Smuzhiyun			opp-hz = /bits/ 64 <200000000>;
85*4882a593Smuzhiyun			opp-microvolt = <900000>;
86*4882a593Smuzhiyun			clock-latency-ns = <200000>;
87*4882a593Smuzhiyun		};
88*4882a593Smuzhiyun		opp-300000000 {
89*4882a593Smuzhiyun			opp-hz = /bits/ 64 <300000000>;
90*4882a593Smuzhiyun			opp-microvolt = <900000>;
91*4882a593Smuzhiyun			clock-latency-ns = <200000>;
92*4882a593Smuzhiyun		};
93*4882a593Smuzhiyun		opp-400000000 {
94*4882a593Smuzhiyun			opp-hz = /bits/ 64 <400000000>;
95*4882a593Smuzhiyun			opp-microvolt = <925000>;
96*4882a593Smuzhiyun			clock-latency-ns = <200000>;
97*4882a593Smuzhiyun		};
98*4882a593Smuzhiyun		opp-500000000 {
99*4882a593Smuzhiyun			opp-hz = /bits/ 64 <500000000>;
100*4882a593Smuzhiyun			opp-microvolt = <950000>;
101*4882a593Smuzhiyun			clock-latency-ns = <200000>;
102*4882a593Smuzhiyun		};
103*4882a593Smuzhiyun		opp-600000000 {
104*4882a593Smuzhiyun			opp-hz = /bits/ 64 <600000000>;
105*4882a593Smuzhiyun			opp-microvolt = <975000>;
106*4882a593Smuzhiyun			clock-latency-ns = <200000>;
107*4882a593Smuzhiyun		};
108*4882a593Smuzhiyun		opp-700000000 {
109*4882a593Smuzhiyun			opp-hz = /bits/ 64 <700000000>;
110*4882a593Smuzhiyun			opp-microvolt = <987500>;
111*4882a593Smuzhiyun			clock-latency-ns = <200000>;
112*4882a593Smuzhiyun		};
113*4882a593Smuzhiyun		opp-800000000 {
114*4882a593Smuzhiyun			opp-hz = /bits/ 64 <800000000>;
115*4882a593Smuzhiyun			opp-microvolt = <1000000>;
116*4882a593Smuzhiyun			clock-latency-ns = <200000>;
117*4882a593Smuzhiyun			opp-suspend;
118*4882a593Smuzhiyun		};
119*4882a593Smuzhiyun		opp-900000000 {
120*4882a593Smuzhiyun			opp-hz = /bits/ 64 <900000000>;
121*4882a593Smuzhiyun			opp-microvolt = <1037500>;
122*4882a593Smuzhiyun			clock-latency-ns = <200000>;
123*4882a593Smuzhiyun		};
124*4882a593Smuzhiyun		opp-1000000000 {
125*4882a593Smuzhiyun			opp-hz = /bits/ 64 <1000000000>;
126*4882a593Smuzhiyun			opp-microvolt = <1087500>;
127*4882a593Smuzhiyun			clock-latency-ns = <200000>;
128*4882a593Smuzhiyun		};
129*4882a593Smuzhiyun		opp-1100000000 {
130*4882a593Smuzhiyun			opp-hz = /bits/ 64 <1100000000>;
131*4882a593Smuzhiyun			opp-microvolt = <1137500>;
132*4882a593Smuzhiyun			clock-latency-ns = <200000>;
133*4882a593Smuzhiyun		};
134*4882a593Smuzhiyun		opp-1200000000 {
135*4882a593Smuzhiyun			opp-hz = /bits/ 64 <1200000000>;
136*4882a593Smuzhiyun			opp-microvolt = <1187500>;
137*4882a593Smuzhiyun			clock-latency-ns = <200000>;
138*4882a593Smuzhiyun		};
139*4882a593Smuzhiyun		opp-1300000000 {
140*4882a593Smuzhiyun			opp-hz = /bits/ 64 <1300000000>;
141*4882a593Smuzhiyun			opp-microvolt = <1250000>;
142*4882a593Smuzhiyun			clock-latency-ns = <200000>;
143*4882a593Smuzhiyun		};
144*4882a593Smuzhiyun		opp-1400000000 {
145*4882a593Smuzhiyun			opp-hz = /bits/ 64 <1400000000>;
146*4882a593Smuzhiyun			opp-microvolt = <1287500>;
147*4882a593Smuzhiyun			clock-latency-ns = <200000>;
148*4882a593Smuzhiyun		};
149*4882a593Smuzhiyun		cpu0_opp_1500: opp-1500000000 {
150*4882a593Smuzhiyun			opp-hz = /bits/ 64 <1500000000>;
151*4882a593Smuzhiyun			opp-microvolt = <1350000>;
152*4882a593Smuzhiyun			clock-latency-ns = <200000>;
153*4882a593Smuzhiyun			turbo-mode;
154*4882a593Smuzhiyun		};
155*4882a593Smuzhiyun	};
156*4882a593Smuzhiyun
157*4882a593Smuzhiyun
158*4882a593Smuzhiyun	soc: soc {
159*4882a593Smuzhiyun
160*4882a593Smuzhiyun		pinctrl_0: pinctrl@11400000 {
161*4882a593Smuzhiyun			compatible = "samsung,exynos4x12-pinctrl";
162*4882a593Smuzhiyun			reg = <0x11400000 0x1000>;
163*4882a593Smuzhiyun			interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
164*4882a593Smuzhiyun		};
165*4882a593Smuzhiyun
166*4882a593Smuzhiyun		pinctrl_1: pinctrl@11000000 {
167*4882a593Smuzhiyun			compatible = "samsung,exynos4x12-pinctrl";
168*4882a593Smuzhiyun			reg = <0x11000000 0x1000>;
169*4882a593Smuzhiyun			interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
170*4882a593Smuzhiyun
171*4882a593Smuzhiyun			wakup_eint: wakeup-interrupt-controller {
172*4882a593Smuzhiyun				compatible = "samsung,exynos4210-wakeup-eint";
173*4882a593Smuzhiyun				interrupt-parent = <&gic>;
174*4882a593Smuzhiyun				interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
175*4882a593Smuzhiyun			};
176*4882a593Smuzhiyun		};
177*4882a593Smuzhiyun
178*4882a593Smuzhiyun		pinctrl_2: pinctrl@3860000 {
179*4882a593Smuzhiyun			compatible = "samsung,exynos4x12-pinctrl";
180*4882a593Smuzhiyun			reg = <0x03860000 0x1000>;
181*4882a593Smuzhiyun			interrupt-parent = <&combiner>;
182*4882a593Smuzhiyun			interrupts = <10 0>;
183*4882a593Smuzhiyun		};
184*4882a593Smuzhiyun
185*4882a593Smuzhiyun		pinctrl_3: pinctrl@106e0000 {
186*4882a593Smuzhiyun			compatible = "samsung,exynos4x12-pinctrl";
187*4882a593Smuzhiyun			reg = <0x106E0000 0x1000>;
188*4882a593Smuzhiyun			interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
189*4882a593Smuzhiyun		};
190*4882a593Smuzhiyun
191*4882a593Smuzhiyun		sram@2020000 {
192*4882a593Smuzhiyun			compatible = "mmio-sram";
193*4882a593Smuzhiyun			reg = <0x02020000 0x40000>;
194*4882a593Smuzhiyun			#address-cells = <1>;
195*4882a593Smuzhiyun			#size-cells = <1>;
196*4882a593Smuzhiyun			ranges = <0 0x02020000 0x40000>;
197*4882a593Smuzhiyun
198*4882a593Smuzhiyun			smp-sram@0 {
199*4882a593Smuzhiyun				compatible = "samsung,exynos4210-sysram";
200*4882a593Smuzhiyun				reg = <0x0 0x1000>;
201*4882a593Smuzhiyun			};
202*4882a593Smuzhiyun
203*4882a593Smuzhiyun			smp-sram@2f000 {
204*4882a593Smuzhiyun				compatible = "samsung,exynos4210-sysram-ns";
205*4882a593Smuzhiyun				reg = <0x2f000 0x1000>;
206*4882a593Smuzhiyun			};
207*4882a593Smuzhiyun		};
208*4882a593Smuzhiyun
209*4882a593Smuzhiyun		pd_isp: power-domain@10023ca0 {
210*4882a593Smuzhiyun			compatible = "samsung,exynos4210-pd";
211*4882a593Smuzhiyun			reg = <0x10023CA0 0x20>;
212*4882a593Smuzhiyun			#power-domain-cells = <0>;
213*4882a593Smuzhiyun			label = "ISP";
214*4882a593Smuzhiyun		};
215*4882a593Smuzhiyun
216*4882a593Smuzhiyun		l2c: cache-controller@10502000 {
217*4882a593Smuzhiyun			compatible = "arm,pl310-cache";
218*4882a593Smuzhiyun			reg = <0x10502000 0x1000>;
219*4882a593Smuzhiyun			cache-unified;
220*4882a593Smuzhiyun			cache-level = <2>;
221*4882a593Smuzhiyun			prefetch-data = <1>;
222*4882a593Smuzhiyun			prefetch-instr = <1>;
223*4882a593Smuzhiyun			arm,tag-latency = <2 2 1>;
224*4882a593Smuzhiyun			arm,data-latency = <3 2 1>;
225*4882a593Smuzhiyun			arm,double-linefill = <1>;
226*4882a593Smuzhiyun			arm,double-linefill-incr = <0>;
227*4882a593Smuzhiyun			arm,double-linefill-wrap = <1>;
228*4882a593Smuzhiyun			arm,prefetch-drop = <1>;
229*4882a593Smuzhiyun			arm,prefetch-offset = <7>;
230*4882a593Smuzhiyun		};
231*4882a593Smuzhiyun
232*4882a593Smuzhiyun		clock: clock-controller@10030000 {
233*4882a593Smuzhiyun			compatible = "samsung,exynos4412-clock";
234*4882a593Smuzhiyun			reg = <0x10030000 0x18000>;
235*4882a593Smuzhiyun			#clock-cells = <1>;
236*4882a593Smuzhiyun		};
237*4882a593Smuzhiyun
238*4882a593Smuzhiyun		isp_clock: clock-controller@10048000 {
239*4882a593Smuzhiyun			compatible = "samsung,exynos4412-isp-clock";
240*4882a593Smuzhiyun			reg = <0x10048000 0x1000>;
241*4882a593Smuzhiyun			#clock-cells = <1>;
242*4882a593Smuzhiyun			power-domains = <&pd_isp>;
243*4882a593Smuzhiyun			clocks = <&clock CLK_ACLK200>,
244*4882a593Smuzhiyun				 <&clock CLK_ACLK400_MCUISP>;
245*4882a593Smuzhiyun			clock-names = "aclk200", "aclk400_mcuisp";
246*4882a593Smuzhiyun		};
247*4882a593Smuzhiyun
248*4882a593Smuzhiyun		timer@10050000 {
249*4882a593Smuzhiyun			compatible = "samsung,exynos4412-mct";
250*4882a593Smuzhiyun			reg = <0x10050000 0x800>;
251*4882a593Smuzhiyun			clocks = <&clock CLK_FIN_PLL>, <&clock CLK_MCT>;
252*4882a593Smuzhiyun			clock-names = "fin_pll", "mct";
253*4882a593Smuzhiyun			interrupts-extended = <&gic GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>,
254*4882a593Smuzhiyun					      <&combiner 12 5>,
255*4882a593Smuzhiyun					      <&combiner 12 6>,
256*4882a593Smuzhiyun					      <&combiner 12 7>,
257*4882a593Smuzhiyun					      <&gic GIC_PPI 12 IRQ_TYPE_LEVEL_HIGH>;
258*4882a593Smuzhiyun		};
259*4882a593Smuzhiyun
260*4882a593Smuzhiyun		watchdog: watchdog@10060000 {
261*4882a593Smuzhiyun			compatible = "samsung,exynos5250-wdt";
262*4882a593Smuzhiyun			reg = <0x10060000 0x100>;
263*4882a593Smuzhiyun			interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>;
264*4882a593Smuzhiyun			clocks = <&clock CLK_WDT>;
265*4882a593Smuzhiyun			clock-names = "watchdog";
266*4882a593Smuzhiyun			samsung,syscon-phandle = <&pmu_system_controller>;
267*4882a593Smuzhiyun		};
268*4882a593Smuzhiyun
269*4882a593Smuzhiyun		adc: adc@126c0000 {
270*4882a593Smuzhiyun			compatible = "samsung,exynos4212-adc";
271*4882a593Smuzhiyun			reg = <0x126C0000 0x100>;
272*4882a593Smuzhiyun			interrupt-parent = <&combiner>;
273*4882a593Smuzhiyun			interrupts = <10 3>;
274*4882a593Smuzhiyun			clocks = <&clock CLK_TSADC>;
275*4882a593Smuzhiyun			clock-names = "adc";
276*4882a593Smuzhiyun			#io-channel-cells = <1>;
277*4882a593Smuzhiyun			io-channel-ranges;
278*4882a593Smuzhiyun			samsung,syscon-phandle = <&pmu_system_controller>;
279*4882a593Smuzhiyun			status = "disabled";
280*4882a593Smuzhiyun		};
281*4882a593Smuzhiyun
282*4882a593Smuzhiyun		g2d: g2d@10800000 {
283*4882a593Smuzhiyun			compatible = "samsung,exynos4212-g2d";
284*4882a593Smuzhiyun			reg = <0x10800000 0x1000>;
285*4882a593Smuzhiyun			interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>;
286*4882a593Smuzhiyun			clocks = <&clock CLK_SCLK_FIMG2D>, <&clock CLK_G2D>;
287*4882a593Smuzhiyun			clock-names = "sclk_fimg2d", "fimg2d";
288*4882a593Smuzhiyun			iommus = <&sysmmu_g2d>;
289*4882a593Smuzhiyun		};
290*4882a593Smuzhiyun
291*4882a593Smuzhiyun		mshc_0: mmc@12550000 {
292*4882a593Smuzhiyun			compatible = "samsung,exynos4412-dw-mshc";
293*4882a593Smuzhiyun			reg = <0x12550000 0x1000>;
294*4882a593Smuzhiyun			interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>;
295*4882a593Smuzhiyun			#address-cells = <1>;
296*4882a593Smuzhiyun			#size-cells = <0>;
297*4882a593Smuzhiyun			fifo-depth = <0x80>;
298*4882a593Smuzhiyun			clocks = <&clock CLK_SDMMC4>, <&clock CLK_SCLK_MMC4>;
299*4882a593Smuzhiyun			clock-names = "biu", "ciu";
300*4882a593Smuzhiyun			status = "disabled";
301*4882a593Smuzhiyun		};
302*4882a593Smuzhiyun
303*4882a593Smuzhiyun		sysmmu_g2d: sysmmu@10a40000 {
304*4882a593Smuzhiyun			compatible = "samsung,exynos-sysmmu";
305*4882a593Smuzhiyun			reg = <0x10A40000 0x1000>;
306*4882a593Smuzhiyun			interrupt-parent = <&combiner>;
307*4882a593Smuzhiyun			interrupts = <4 7>;
308*4882a593Smuzhiyun			clock-names = "sysmmu", "master";
309*4882a593Smuzhiyun			clocks = <&clock CLK_SMMU_G2D>, <&clock CLK_G2D>;
310*4882a593Smuzhiyun			#iommu-cells = <0>;
311*4882a593Smuzhiyun		};
312*4882a593Smuzhiyun
313*4882a593Smuzhiyun		sysmmu_fimc_isp: sysmmu@12260000 {
314*4882a593Smuzhiyun			compatible = "samsung,exynos-sysmmu";
315*4882a593Smuzhiyun			reg = <0x12260000 0x1000>;
316*4882a593Smuzhiyun			interrupt-parent = <&combiner>;
317*4882a593Smuzhiyun			interrupts = <16 2>;
318*4882a593Smuzhiyun			power-domains = <&pd_isp>;
319*4882a593Smuzhiyun			clock-names = "sysmmu";
320*4882a593Smuzhiyun			clocks = <&isp_clock CLK_ISP_SMMU_ISP>;
321*4882a593Smuzhiyun			#iommu-cells = <0>;
322*4882a593Smuzhiyun		};
323*4882a593Smuzhiyun
324*4882a593Smuzhiyun		sysmmu_fimc_drc: sysmmu@12270000 {
325*4882a593Smuzhiyun			compatible = "samsung,exynos-sysmmu";
326*4882a593Smuzhiyun			reg = <0x12270000 0x1000>;
327*4882a593Smuzhiyun			interrupt-parent = <&combiner>;
328*4882a593Smuzhiyun			interrupts = <16 3>;
329*4882a593Smuzhiyun			power-domains = <&pd_isp>;
330*4882a593Smuzhiyun			clock-names = "sysmmu";
331*4882a593Smuzhiyun			clocks = <&isp_clock CLK_ISP_SMMU_DRC>;
332*4882a593Smuzhiyun			#iommu-cells = <0>;
333*4882a593Smuzhiyun		};
334*4882a593Smuzhiyun
335*4882a593Smuzhiyun		sysmmu_fimc_fd: sysmmu@122a0000 {
336*4882a593Smuzhiyun			compatible = "samsung,exynos-sysmmu";
337*4882a593Smuzhiyun			reg = <0x122A0000 0x1000>;
338*4882a593Smuzhiyun			interrupt-parent = <&combiner>;
339*4882a593Smuzhiyun			interrupts = <16 4>;
340*4882a593Smuzhiyun			power-domains = <&pd_isp>;
341*4882a593Smuzhiyun			clock-names = "sysmmu";
342*4882a593Smuzhiyun			clocks = <&isp_clock CLK_ISP_SMMU_FD>;
343*4882a593Smuzhiyun			#iommu-cells = <0>;
344*4882a593Smuzhiyun		};
345*4882a593Smuzhiyun
346*4882a593Smuzhiyun		sysmmu_fimc_mcuctl: sysmmu@122b0000 {
347*4882a593Smuzhiyun			compatible = "samsung,exynos-sysmmu";
348*4882a593Smuzhiyun			reg = <0x122B0000 0x1000>;
349*4882a593Smuzhiyun			interrupt-parent = <&combiner>;
350*4882a593Smuzhiyun			interrupts = <16 5>;
351*4882a593Smuzhiyun			power-domains = <&pd_isp>;
352*4882a593Smuzhiyun			clock-names = "sysmmu";
353*4882a593Smuzhiyun			clocks = <&isp_clock CLK_ISP_SMMU_ISPCX>;
354*4882a593Smuzhiyun			#iommu-cells = <0>;
355*4882a593Smuzhiyun		};
356*4882a593Smuzhiyun
357*4882a593Smuzhiyun		sysmmu_fimc_lite0: sysmmu@123b0000 {
358*4882a593Smuzhiyun			compatible = "samsung,exynos-sysmmu";
359*4882a593Smuzhiyun			reg = <0x123B0000 0x1000>;
360*4882a593Smuzhiyun			interrupt-parent = <&combiner>;
361*4882a593Smuzhiyun			interrupts = <16 0>;
362*4882a593Smuzhiyun			power-domains = <&pd_isp>;
363*4882a593Smuzhiyun			clock-names = "sysmmu", "master";
364*4882a593Smuzhiyun			clocks = <&isp_clock CLK_ISP_SMMU_LITE0>,
365*4882a593Smuzhiyun				 <&isp_clock CLK_ISP_FIMC_LITE0>;
366*4882a593Smuzhiyun			#iommu-cells = <0>;
367*4882a593Smuzhiyun		};
368*4882a593Smuzhiyun
369*4882a593Smuzhiyun		sysmmu_fimc_lite1: sysmmu@123c0000 {
370*4882a593Smuzhiyun			compatible = "samsung,exynos-sysmmu";
371*4882a593Smuzhiyun			reg = <0x123C0000 0x1000>;
372*4882a593Smuzhiyun			interrupt-parent = <&combiner>;
373*4882a593Smuzhiyun			interrupts = <16 1>;
374*4882a593Smuzhiyun			power-domains = <&pd_isp>;
375*4882a593Smuzhiyun			clock-names = "sysmmu", "master";
376*4882a593Smuzhiyun			clocks = <&isp_clock CLK_ISP_SMMU_LITE1>,
377*4882a593Smuzhiyun				 <&isp_clock CLK_ISP_FIMC_LITE1>;
378*4882a593Smuzhiyun			#iommu-cells = <0>;
379*4882a593Smuzhiyun		};
380*4882a593Smuzhiyun
381*4882a593Smuzhiyun		bus_dmc: bus_dmc {
382*4882a593Smuzhiyun			compatible = "samsung,exynos-bus";
383*4882a593Smuzhiyun			clocks = <&clock CLK_DIV_DMC>;
384*4882a593Smuzhiyun			clock-names = "bus";
385*4882a593Smuzhiyun			operating-points-v2 = <&bus_dmc_opp_table>;
386*4882a593Smuzhiyun			status = "disabled";
387*4882a593Smuzhiyun		};
388*4882a593Smuzhiyun
389*4882a593Smuzhiyun		bus_acp: bus_acp {
390*4882a593Smuzhiyun			compatible = "samsung,exynos-bus";
391*4882a593Smuzhiyun			clocks = <&clock CLK_DIV_ACP>;
392*4882a593Smuzhiyun			clock-names = "bus";
393*4882a593Smuzhiyun			operating-points-v2 = <&bus_acp_opp_table>;
394*4882a593Smuzhiyun			status = "disabled";
395*4882a593Smuzhiyun		};
396*4882a593Smuzhiyun
397*4882a593Smuzhiyun		bus_c2c: bus_c2c {
398*4882a593Smuzhiyun			compatible = "samsung,exynos-bus";
399*4882a593Smuzhiyun			clocks = <&clock CLK_DIV_C2C>;
400*4882a593Smuzhiyun			clock-names = "bus";
401*4882a593Smuzhiyun			operating-points-v2 = <&bus_dmc_opp_table>;
402*4882a593Smuzhiyun			status = "disabled";
403*4882a593Smuzhiyun		};
404*4882a593Smuzhiyun
405*4882a593Smuzhiyun		bus_dmc_opp_table: opp-table1 {
406*4882a593Smuzhiyun			compatible = "operating-points-v2";
407*4882a593Smuzhiyun			opp-shared;
408*4882a593Smuzhiyun
409*4882a593Smuzhiyun			opp-100000000 {
410*4882a593Smuzhiyun				opp-hz = /bits/ 64 <100000000>;
411*4882a593Smuzhiyun				opp-microvolt = <900000>;
412*4882a593Smuzhiyun			};
413*4882a593Smuzhiyun			opp-134000000 {
414*4882a593Smuzhiyun				opp-hz = /bits/ 64 <134000000>;
415*4882a593Smuzhiyun				opp-microvolt = <900000>;
416*4882a593Smuzhiyun			};
417*4882a593Smuzhiyun			opp-160000000 {
418*4882a593Smuzhiyun				opp-hz = /bits/ 64 <160000000>;
419*4882a593Smuzhiyun				opp-microvolt = <900000>;
420*4882a593Smuzhiyun			};
421*4882a593Smuzhiyun			opp-267000000 {
422*4882a593Smuzhiyun				opp-hz = /bits/ 64 <267000000>;
423*4882a593Smuzhiyun				opp-microvolt = <950000>;
424*4882a593Smuzhiyun			};
425*4882a593Smuzhiyun			opp-400000000 {
426*4882a593Smuzhiyun				opp-hz = /bits/ 64 <400000000>;
427*4882a593Smuzhiyun				opp-microvolt = <1050000>;
428*4882a593Smuzhiyun				opp-suspend;
429*4882a593Smuzhiyun			};
430*4882a593Smuzhiyun		};
431*4882a593Smuzhiyun
432*4882a593Smuzhiyun		bus_acp_opp_table: opp-table2 {
433*4882a593Smuzhiyun			compatible = "operating-points-v2";
434*4882a593Smuzhiyun			opp-shared;
435*4882a593Smuzhiyun
436*4882a593Smuzhiyun			opp-100000000 {
437*4882a593Smuzhiyun				opp-hz = /bits/ 64 <100000000>;
438*4882a593Smuzhiyun			};
439*4882a593Smuzhiyun			opp-134000000 {
440*4882a593Smuzhiyun				opp-hz = /bits/ 64 <134000000>;
441*4882a593Smuzhiyun			};
442*4882a593Smuzhiyun			opp-160000000 {
443*4882a593Smuzhiyun				opp-hz = /bits/ 64 <160000000>;
444*4882a593Smuzhiyun			};
445*4882a593Smuzhiyun			opp-267000000 {
446*4882a593Smuzhiyun				opp-hz = /bits/ 64 <267000000>;
447*4882a593Smuzhiyun			};
448*4882a593Smuzhiyun		};
449*4882a593Smuzhiyun
450*4882a593Smuzhiyun		bus_leftbus: bus_leftbus {
451*4882a593Smuzhiyun			compatible = "samsung,exynos-bus";
452*4882a593Smuzhiyun			clocks = <&clock CLK_DIV_GDL>;
453*4882a593Smuzhiyun			clock-names = "bus";
454*4882a593Smuzhiyun			operating-points-v2 = <&bus_leftbus_opp_table>;
455*4882a593Smuzhiyun			status = "disabled";
456*4882a593Smuzhiyun		};
457*4882a593Smuzhiyun
458*4882a593Smuzhiyun		bus_rightbus: bus_rightbus {
459*4882a593Smuzhiyun			compatible = "samsung,exynos-bus";
460*4882a593Smuzhiyun			clocks = <&clock CLK_DIV_GDR>;
461*4882a593Smuzhiyun			clock-names = "bus";
462*4882a593Smuzhiyun			operating-points-v2 = <&bus_leftbus_opp_table>;
463*4882a593Smuzhiyun			status = "disabled";
464*4882a593Smuzhiyun		};
465*4882a593Smuzhiyun
466*4882a593Smuzhiyun		bus_display: bus_display {
467*4882a593Smuzhiyun			compatible = "samsung,exynos-bus";
468*4882a593Smuzhiyun			clocks = <&clock CLK_ACLK160>;
469*4882a593Smuzhiyun			clock-names = "bus";
470*4882a593Smuzhiyun			operating-points-v2 = <&bus_display_opp_table>;
471*4882a593Smuzhiyun			status = "disabled";
472*4882a593Smuzhiyun		};
473*4882a593Smuzhiyun
474*4882a593Smuzhiyun		bus_fsys: bus_fsys {
475*4882a593Smuzhiyun			compatible = "samsung,exynos-bus";
476*4882a593Smuzhiyun			clocks = <&clock CLK_ACLK133>;
477*4882a593Smuzhiyun			clock-names = "bus";
478*4882a593Smuzhiyun			operating-points-v2 = <&bus_fsys_opp_table>;
479*4882a593Smuzhiyun			status = "disabled";
480*4882a593Smuzhiyun		};
481*4882a593Smuzhiyun
482*4882a593Smuzhiyun		bus_peri: bus_peri {
483*4882a593Smuzhiyun			compatible = "samsung,exynos-bus";
484*4882a593Smuzhiyun			clocks = <&clock CLK_ACLK100>;
485*4882a593Smuzhiyun			clock-names = "bus";
486*4882a593Smuzhiyun			operating-points-v2 = <&bus_peri_opp_table>;
487*4882a593Smuzhiyun			status = "disabled";
488*4882a593Smuzhiyun		};
489*4882a593Smuzhiyun
490*4882a593Smuzhiyun		bus_mfc: bus_mfc {
491*4882a593Smuzhiyun			compatible = "samsung,exynos-bus";
492*4882a593Smuzhiyun			clocks = <&clock CLK_SCLK_MFC>;
493*4882a593Smuzhiyun			clock-names = "bus";
494*4882a593Smuzhiyun			operating-points-v2 = <&bus_leftbus_opp_table>;
495*4882a593Smuzhiyun			status = "disabled";
496*4882a593Smuzhiyun		};
497*4882a593Smuzhiyun
498*4882a593Smuzhiyun		bus_leftbus_opp_table: opp-table3 {
499*4882a593Smuzhiyun			compatible = "operating-points-v2";
500*4882a593Smuzhiyun			opp-shared;
501*4882a593Smuzhiyun
502*4882a593Smuzhiyun			opp-100000000 {
503*4882a593Smuzhiyun				opp-hz = /bits/ 64 <100000000>;
504*4882a593Smuzhiyun				opp-microvolt = <900000>;
505*4882a593Smuzhiyun			};
506*4882a593Smuzhiyun			opp-134000000 {
507*4882a593Smuzhiyun				opp-hz = /bits/ 64 <134000000>;
508*4882a593Smuzhiyun				opp-microvolt = <925000>;
509*4882a593Smuzhiyun			};
510*4882a593Smuzhiyun			opp-160000000 {
511*4882a593Smuzhiyun				opp-hz = /bits/ 64 <160000000>;
512*4882a593Smuzhiyun				opp-microvolt = <950000>;
513*4882a593Smuzhiyun			};
514*4882a593Smuzhiyun			opp-200000000 {
515*4882a593Smuzhiyun				opp-hz = /bits/ 64 <200000000>;
516*4882a593Smuzhiyun				opp-microvolt = <1000000>;
517*4882a593Smuzhiyun				opp-suspend;
518*4882a593Smuzhiyun			};
519*4882a593Smuzhiyun		};
520*4882a593Smuzhiyun
521*4882a593Smuzhiyun		bus_display_opp_table: opp-table4 {
522*4882a593Smuzhiyun			compatible = "operating-points-v2";
523*4882a593Smuzhiyun			opp-shared;
524*4882a593Smuzhiyun
525*4882a593Smuzhiyun			opp-160000000 {
526*4882a593Smuzhiyun				opp-hz = /bits/ 64 <160000000>;
527*4882a593Smuzhiyun			};
528*4882a593Smuzhiyun			opp-200000000 {
529*4882a593Smuzhiyun				opp-hz = /bits/ 64 <200000000>;
530*4882a593Smuzhiyun			};
531*4882a593Smuzhiyun		};
532*4882a593Smuzhiyun
533*4882a593Smuzhiyun		bus_fsys_opp_table: opp-table5 {
534*4882a593Smuzhiyun			compatible = "operating-points-v2";
535*4882a593Smuzhiyun			opp-shared;
536*4882a593Smuzhiyun
537*4882a593Smuzhiyun			opp-100000000 {
538*4882a593Smuzhiyun				opp-hz = /bits/ 64 <100000000>;
539*4882a593Smuzhiyun			};
540*4882a593Smuzhiyun			opp-134000000 {
541*4882a593Smuzhiyun				opp-hz = /bits/ 64 <134000000>;
542*4882a593Smuzhiyun			};
543*4882a593Smuzhiyun		};
544*4882a593Smuzhiyun
545*4882a593Smuzhiyun		bus_peri_opp_table: opp-table6 {
546*4882a593Smuzhiyun			compatible = "operating-points-v2";
547*4882a593Smuzhiyun			opp-shared;
548*4882a593Smuzhiyun
549*4882a593Smuzhiyun			opp-50000000 {
550*4882a593Smuzhiyun				opp-hz = /bits/ 64 <50000000>;
551*4882a593Smuzhiyun			};
552*4882a593Smuzhiyun			opp-100000000 {
553*4882a593Smuzhiyun				opp-hz = /bits/ 64 <100000000>;
554*4882a593Smuzhiyun			};
555*4882a593Smuzhiyun		};
556*4882a593Smuzhiyun	};
557*4882a593Smuzhiyun};
558*4882a593Smuzhiyun
559*4882a593Smuzhiyun&combiner {
560*4882a593Smuzhiyun	samsung,combiner-nr = <20>;
561*4882a593Smuzhiyun	interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
562*4882a593Smuzhiyun		     <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>,
563*4882a593Smuzhiyun		     <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>,
564*4882a593Smuzhiyun		     <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>,
565*4882a593Smuzhiyun		     <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
566*4882a593Smuzhiyun		     <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>,
567*4882a593Smuzhiyun		     <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
568*4882a593Smuzhiyun		     <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>,
569*4882a593Smuzhiyun		     <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
570*4882a593Smuzhiyun		     <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
571*4882a593Smuzhiyun		     <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>,
572*4882a593Smuzhiyun		     <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>,
573*4882a593Smuzhiyun		     <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
574*4882a593Smuzhiyun		     <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>,
575*4882a593Smuzhiyun		     <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>,
576*4882a593Smuzhiyun		     <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>,
577*4882a593Smuzhiyun		     <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>,
578*4882a593Smuzhiyun		     <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>,
579*4882a593Smuzhiyun		     <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>,
580*4882a593Smuzhiyun		     <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>;
581*4882a593Smuzhiyun};
582*4882a593Smuzhiyun
583*4882a593Smuzhiyun&camera {
584*4882a593Smuzhiyun	clocks = <&clock CLK_SCLK_CAM0>, <&clock CLK_SCLK_CAM1>,
585*4882a593Smuzhiyun		 <&clock CLK_PIXELASYNCM0>, <&clock CLK_PIXELASYNCM1>;
586*4882a593Smuzhiyun	clock-names = "sclk_cam0", "sclk_cam1", "pxl_async0", "pxl_async1";
587*4882a593Smuzhiyun
588*4882a593Smuzhiyun	/* fimc_[0-3] are configured outside, under phandles */
589*4882a593Smuzhiyun	fimc_lite_0: fimc-lite@12390000 {
590*4882a593Smuzhiyun		compatible = "samsung,exynos4212-fimc-lite";
591*4882a593Smuzhiyun		reg = <0x12390000 0x1000>;
592*4882a593Smuzhiyun		interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>;
593*4882a593Smuzhiyun		power-domains = <&pd_isp>;
594*4882a593Smuzhiyun		clocks = <&isp_clock CLK_ISP_FIMC_LITE0>;
595*4882a593Smuzhiyun		clock-names = "flite";
596*4882a593Smuzhiyun		iommus = <&sysmmu_fimc_lite0>;
597*4882a593Smuzhiyun		status = "disabled";
598*4882a593Smuzhiyun	};
599*4882a593Smuzhiyun
600*4882a593Smuzhiyun	fimc_lite_1: fimc-lite@123a0000 {
601*4882a593Smuzhiyun		compatible = "samsung,exynos4212-fimc-lite";
602*4882a593Smuzhiyun		reg = <0x123A0000 0x1000>;
603*4882a593Smuzhiyun		interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>;
604*4882a593Smuzhiyun		power-domains = <&pd_isp>;
605*4882a593Smuzhiyun		clocks = <&isp_clock CLK_ISP_FIMC_LITE1>;
606*4882a593Smuzhiyun		clock-names = "flite";
607*4882a593Smuzhiyun		iommus = <&sysmmu_fimc_lite1>;
608*4882a593Smuzhiyun		status = "disabled";
609*4882a593Smuzhiyun	};
610*4882a593Smuzhiyun
611*4882a593Smuzhiyun	fimc_is: fimc-is@12000000 {
612*4882a593Smuzhiyun		compatible = "samsung,exynos4212-fimc-is";
613*4882a593Smuzhiyun		reg = <0x12000000 0x260000>;
614*4882a593Smuzhiyun		interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>,
615*4882a593Smuzhiyun			     <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
616*4882a593Smuzhiyun		power-domains = <&pd_isp>;
617*4882a593Smuzhiyun		clocks = <&isp_clock CLK_ISP_FIMC_LITE0>,
618*4882a593Smuzhiyun			 <&isp_clock CLK_ISP_FIMC_LITE1>,
619*4882a593Smuzhiyun			 <&isp_clock CLK_ISP_PPMUISPX>,
620*4882a593Smuzhiyun			 <&isp_clock CLK_ISP_PPMUISPMX>,
621*4882a593Smuzhiyun			 <&isp_clock CLK_ISP_FIMC_ISP>,
622*4882a593Smuzhiyun			 <&isp_clock CLK_ISP_FIMC_DRC>,
623*4882a593Smuzhiyun			 <&isp_clock CLK_ISP_FIMC_FD>,
624*4882a593Smuzhiyun			 <&isp_clock CLK_ISP_MCUISP>,
625*4882a593Smuzhiyun			 <&isp_clock CLK_ISP_GICISP>,
626*4882a593Smuzhiyun			 <&isp_clock CLK_ISP_MCUCTL_ISP>,
627*4882a593Smuzhiyun			 <&isp_clock CLK_ISP_PWM_ISP>,
628*4882a593Smuzhiyun			 <&isp_clock CLK_ISP_DIV_ISP0>,
629*4882a593Smuzhiyun			 <&isp_clock CLK_ISP_DIV_ISP1>,
630*4882a593Smuzhiyun			 <&isp_clock CLK_ISP_DIV_MCUISP0>,
631*4882a593Smuzhiyun			 <&isp_clock CLK_ISP_DIV_MCUISP1>,
632*4882a593Smuzhiyun			 <&clock CLK_MOUT_MPLL_USER_T>,
633*4882a593Smuzhiyun			 <&clock CLK_ACLK200>,
634*4882a593Smuzhiyun			 <&clock CLK_ACLK400_MCUISP>,
635*4882a593Smuzhiyun			 <&clock CLK_DIV_ACLK200>,
636*4882a593Smuzhiyun			 <&clock CLK_DIV_ACLK400_MCUISP>,
637*4882a593Smuzhiyun			 <&clock CLK_UART_ISP_SCLK>;
638*4882a593Smuzhiyun		clock-names = "lite0", "lite1", "ppmuispx",
639*4882a593Smuzhiyun			      "ppmuispmx", "isp",
640*4882a593Smuzhiyun			      "drc", "fd", "mcuisp",
641*4882a593Smuzhiyun			      "gicisp", "mcuctl_isp", "pwm_isp",
642*4882a593Smuzhiyun			      "ispdiv0", "ispdiv1", "mcuispdiv0",
643*4882a593Smuzhiyun			      "mcuispdiv1", "mpll", "aclk200",
644*4882a593Smuzhiyun			      "aclk400mcuisp", "div_aclk200",
645*4882a593Smuzhiyun			      "div_aclk400mcuisp", "uart";
646*4882a593Smuzhiyun		iommus = <&sysmmu_fimc_isp>, <&sysmmu_fimc_drc>,
647*4882a593Smuzhiyun			 <&sysmmu_fimc_fd>, <&sysmmu_fimc_mcuctl>;
648*4882a593Smuzhiyun		iommu-names = "isp", "drc", "fd", "mcuctl";
649*4882a593Smuzhiyun		#address-cells = <1>;
650*4882a593Smuzhiyun		#size-cells = <1>;
651*4882a593Smuzhiyun		ranges;
652*4882a593Smuzhiyun		status = "disabled";
653*4882a593Smuzhiyun
654*4882a593Smuzhiyun		pmu@10020000 {
655*4882a593Smuzhiyun			reg = <0x10020000 0x3000>;
656*4882a593Smuzhiyun		};
657*4882a593Smuzhiyun
658*4882a593Smuzhiyun		i2c1_isp: i2c-isp@12140000 {
659*4882a593Smuzhiyun			compatible = "samsung,exynos4212-i2c-isp";
660*4882a593Smuzhiyun			reg = <0x12140000 0x100>;
661*4882a593Smuzhiyun			clocks = <&isp_clock CLK_ISP_I2C1_ISP>;
662*4882a593Smuzhiyun			clock-names = "i2c_isp";
663*4882a593Smuzhiyun			#address-cells = <1>;
664*4882a593Smuzhiyun			#size-cells = <0>;
665*4882a593Smuzhiyun		};
666*4882a593Smuzhiyun	};
667*4882a593Smuzhiyun};
668*4882a593Smuzhiyun
669*4882a593Smuzhiyun&exynos_usbphy {
670*4882a593Smuzhiyun	compatible = "samsung,exynos4x12-usb2-phy";
671*4882a593Smuzhiyun	samsung,sysreg-phandle = <&sys_reg>;
672*4882a593Smuzhiyun};
673*4882a593Smuzhiyun
674*4882a593Smuzhiyun&fimc_0 {
675*4882a593Smuzhiyun	compatible = "samsung,exynos4212-fimc";
676*4882a593Smuzhiyun	samsung,pix-limits = <4224 8192 1920 4224>;
677*4882a593Smuzhiyun	samsung,mainscaler-ext;
678*4882a593Smuzhiyun	samsung,isp-wb;
679*4882a593Smuzhiyun	samsung,cam-if;
680*4882a593Smuzhiyun};
681*4882a593Smuzhiyun
682*4882a593Smuzhiyun&fimc_1 {
683*4882a593Smuzhiyun	compatible = "samsung,exynos4212-fimc";
684*4882a593Smuzhiyun	samsung,pix-limits = <4224 8192 1920 4224>;
685*4882a593Smuzhiyun	samsung,mainscaler-ext;
686*4882a593Smuzhiyun	samsung,isp-wb;
687*4882a593Smuzhiyun	samsung,cam-if;
688*4882a593Smuzhiyun};
689*4882a593Smuzhiyun
690*4882a593Smuzhiyun&fimc_2 {
691*4882a593Smuzhiyun	compatible = "samsung,exynos4212-fimc";
692*4882a593Smuzhiyun	samsung,pix-limits = <4224 8192 1920 4224>;
693*4882a593Smuzhiyun	samsung,mainscaler-ext;
694*4882a593Smuzhiyun	samsung,isp-wb;
695*4882a593Smuzhiyun	samsung,lcd-wb;
696*4882a593Smuzhiyun	samsung,cam-if;
697*4882a593Smuzhiyun};
698*4882a593Smuzhiyun
699*4882a593Smuzhiyun&fimc_3 {
700*4882a593Smuzhiyun	compatible = "samsung,exynos4212-fimc";
701*4882a593Smuzhiyun	samsung,pix-limits = <1920 8192 1366 1920>;
702*4882a593Smuzhiyun	samsung,rotators = <0>;
703*4882a593Smuzhiyun	samsung,mainscaler-ext;
704*4882a593Smuzhiyun	samsung,isp-wb;
705*4882a593Smuzhiyun	samsung,lcd-wb;
706*4882a593Smuzhiyun};
707*4882a593Smuzhiyun
708*4882a593Smuzhiyun&gic {
709*4882a593Smuzhiyun	cpu-offset = <0x4000>;
710*4882a593Smuzhiyun};
711*4882a593Smuzhiyun
712*4882a593Smuzhiyun&gpu {
713*4882a593Smuzhiyun	interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>,
714*4882a593Smuzhiyun		     <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>,
715*4882a593Smuzhiyun		     <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>,
716*4882a593Smuzhiyun		     <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>,
717*4882a593Smuzhiyun		     <GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>,
718*4882a593Smuzhiyun		     <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>,
719*4882a593Smuzhiyun		     <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>,
720*4882a593Smuzhiyun		     <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>,
721*4882a593Smuzhiyun		     <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>,
722*4882a593Smuzhiyun		     <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>,
723*4882a593Smuzhiyun		     <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>;
724*4882a593Smuzhiyun	interrupt-names = "gp",
725*4882a593Smuzhiyun			  "gpmmu",
726*4882a593Smuzhiyun			  "pp0",
727*4882a593Smuzhiyun			  "ppmmu0",
728*4882a593Smuzhiyun			  "pp1",
729*4882a593Smuzhiyun			  "ppmmu1",
730*4882a593Smuzhiyun			  "pp2",
731*4882a593Smuzhiyun			  "ppmmu2",
732*4882a593Smuzhiyun			  "pp3",
733*4882a593Smuzhiyun			  "ppmmu3",
734*4882a593Smuzhiyun			  "pmu";
735*4882a593Smuzhiyun	operating-points-v2 = <&gpu_opp_table>;
736*4882a593Smuzhiyun
737*4882a593Smuzhiyun	gpu_opp_table: opp-table {
738*4882a593Smuzhiyun		compatible = "operating-points-v2";
739*4882a593Smuzhiyun
740*4882a593Smuzhiyun		opp-160000000 {
741*4882a593Smuzhiyun			opp-hz = /bits/ 64 <160000000>;
742*4882a593Smuzhiyun			opp-microvolt = <875000>;
743*4882a593Smuzhiyun		};
744*4882a593Smuzhiyun		opp-267000000 {
745*4882a593Smuzhiyun			opp-hz = /bits/ 64 <267000000>;
746*4882a593Smuzhiyun			opp-microvolt = <900000>;
747*4882a593Smuzhiyun		};
748*4882a593Smuzhiyun		opp-350000000 {
749*4882a593Smuzhiyun			opp-hz = /bits/ 64 <350000000>;
750*4882a593Smuzhiyun			opp-microvolt = <950000>;
751*4882a593Smuzhiyun		};
752*4882a593Smuzhiyun		opp-440000000 {
753*4882a593Smuzhiyun			opp-hz = /bits/ 64 <440000000>;
754*4882a593Smuzhiyun			opp-microvolt = <1025000>;
755*4882a593Smuzhiyun		};
756*4882a593Smuzhiyun	};
757*4882a593Smuzhiyun};
758*4882a593Smuzhiyun
759*4882a593Smuzhiyun&hdmi {
760*4882a593Smuzhiyun	compatible = "samsung,exynos4212-hdmi";
761*4882a593Smuzhiyun};
762*4882a593Smuzhiyun
763*4882a593Smuzhiyun&jpeg_codec {
764*4882a593Smuzhiyun	compatible = "samsung,exynos4212-jpeg";
765*4882a593Smuzhiyun};
766*4882a593Smuzhiyun
767*4882a593Smuzhiyun&rotator {
768*4882a593Smuzhiyun	compatible = "samsung,exynos4212-rotator";
769*4882a593Smuzhiyun};
770*4882a593Smuzhiyun
771*4882a593Smuzhiyun&mixer {
772*4882a593Smuzhiyun	compatible = "samsung,exynos4212-mixer";
773*4882a593Smuzhiyun	clock-names = "mixer", "hdmi", "sclk_hdmi", "vp";
774*4882a593Smuzhiyun	clocks = <&clock CLK_MIXER>, <&clock CLK_HDMI>,
775*4882a593Smuzhiyun		 <&clock CLK_SCLK_HDMI>, <&clock CLK_VP>;
776*4882a593Smuzhiyun};
777*4882a593Smuzhiyun
778*4882a593Smuzhiyun&pmu {
779*4882a593Smuzhiyun	interrupts = <2 2>, <3 2>, <18 2>, <19 2>;
780*4882a593Smuzhiyun	interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>;
781*4882a593Smuzhiyun	status = "okay";
782*4882a593Smuzhiyun};
783*4882a593Smuzhiyun
784*4882a593Smuzhiyun&pmu_system_controller {
785*4882a593Smuzhiyun	compatible = "samsung,exynos4412-pmu", "syscon";
786*4882a593Smuzhiyun	clock-names = "clkout0", "clkout1", "clkout2", "clkout3",
787*4882a593Smuzhiyun			"clkout4", "clkout8", "clkout9";
788*4882a593Smuzhiyun	clocks = <&clock CLK_OUT_DMC>, <&clock CLK_OUT_TOP>,
789*4882a593Smuzhiyun		<&clock CLK_OUT_LEFTBUS>, <&clock CLK_OUT_RIGHTBUS>,
790*4882a593Smuzhiyun		<&clock CLK_OUT_CPU>, <&clock CLK_XXTI>, <&clock CLK_XUSBXTI>;
791*4882a593Smuzhiyun	#clock-cells = <1>;
792*4882a593Smuzhiyun};
793*4882a593Smuzhiyun
794*4882a593Smuzhiyun&tmu {
795*4882a593Smuzhiyun	compatible = "samsung,exynos4412-tmu";
796*4882a593Smuzhiyun	interrupt-parent = <&combiner>;
797*4882a593Smuzhiyun	interrupts = <2 4>;
798*4882a593Smuzhiyun	reg = <0x100C0000 0x100>;
799*4882a593Smuzhiyun	clocks = <&clock 383>;
800*4882a593Smuzhiyun	clock-names = "tmu_apbif";
801*4882a593Smuzhiyun	status = "disabled";
802*4882a593Smuzhiyun};
803*4882a593Smuzhiyun
804*4882a593Smuzhiyun#include "exynos4412-pinctrl.dtsi"
805