xref: /OK3568_Linux_fs/kernel/arch/arm/boot/dts/exynos4.dtsi (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun// SPDX-License-Identifier: GPL-2.0
2*4882a593Smuzhiyun/*
3*4882a593Smuzhiyun * Samsung's Exynos4 SoC series common device tree source
4*4882a593Smuzhiyun *
5*4882a593Smuzhiyun * Copyright (c) 2010-2011 Samsung Electronics Co., Ltd.
6*4882a593Smuzhiyun *		http://www.samsung.com
7*4882a593Smuzhiyun * Copyright (c) 2010-2011 Linaro Ltd.
8*4882a593Smuzhiyun *		www.linaro.org
9*4882a593Smuzhiyun *
10*4882a593Smuzhiyun * Samsung's Exynos4 SoC series device nodes are listed in this file.  Particular
11*4882a593Smuzhiyun * SoCs from Exynos4 series can include this file and provide values for SoCs
12*4882a593Smuzhiyun * specfic bindings.
13*4882a593Smuzhiyun *
14*4882a593Smuzhiyun * Note: This file does not include device nodes for all the controllers in
15*4882a593Smuzhiyun * Exynos4 SoCs. As device tree coverage for Exynos4 increases, additional
16*4882a593Smuzhiyun * nodes can be added to this file.
17*4882a593Smuzhiyun */
18*4882a593Smuzhiyun
19*4882a593Smuzhiyun#include <dt-bindings/clock/exynos4.h>
20*4882a593Smuzhiyun#include <dt-bindings/clock/exynos-audss-clk.h>
21*4882a593Smuzhiyun#include <dt-bindings/interrupt-controller/arm-gic.h>
22*4882a593Smuzhiyun#include <dt-bindings/interrupt-controller/irq.h>
23*4882a593Smuzhiyun
24*4882a593Smuzhiyun/ {
25*4882a593Smuzhiyun	interrupt-parent = <&gic>;
26*4882a593Smuzhiyun	#address-cells = <1>;
27*4882a593Smuzhiyun	#size-cells = <1>;
28*4882a593Smuzhiyun
29*4882a593Smuzhiyun	aliases {
30*4882a593Smuzhiyun		spi0 = &spi_0;
31*4882a593Smuzhiyun		spi1 = &spi_1;
32*4882a593Smuzhiyun		spi2 = &spi_2;
33*4882a593Smuzhiyun		i2c0 = &i2c_0;
34*4882a593Smuzhiyun		i2c1 = &i2c_1;
35*4882a593Smuzhiyun		i2c2 = &i2c_2;
36*4882a593Smuzhiyun		i2c3 = &i2c_3;
37*4882a593Smuzhiyun		i2c4 = &i2c_4;
38*4882a593Smuzhiyun		i2c5 = &i2c_5;
39*4882a593Smuzhiyun		i2c6 = &i2c_6;
40*4882a593Smuzhiyun		i2c7 = &i2c_7;
41*4882a593Smuzhiyun		i2c8 = &i2c_8;
42*4882a593Smuzhiyun		csis0 = &csis_0;
43*4882a593Smuzhiyun		csis1 = &csis_1;
44*4882a593Smuzhiyun		fimc0 = &fimc_0;
45*4882a593Smuzhiyun		fimc1 = &fimc_1;
46*4882a593Smuzhiyun		fimc2 = &fimc_2;
47*4882a593Smuzhiyun		fimc3 = &fimc_3;
48*4882a593Smuzhiyun		serial0 = &serial_0;
49*4882a593Smuzhiyun		serial1 = &serial_1;
50*4882a593Smuzhiyun		serial2 = &serial_2;
51*4882a593Smuzhiyun		serial3 = &serial_3;
52*4882a593Smuzhiyun	};
53*4882a593Smuzhiyun
54*4882a593Smuzhiyun	pmu: pmu {
55*4882a593Smuzhiyun		compatible = "arm,cortex-a9-pmu";
56*4882a593Smuzhiyun		interrupt-parent = <&combiner>;
57*4882a593Smuzhiyun		status = "disabled";
58*4882a593Smuzhiyun	};
59*4882a593Smuzhiyun
60*4882a593Smuzhiyun	soc: soc {
61*4882a593Smuzhiyun		compatible = "simple-bus";
62*4882a593Smuzhiyun		#address-cells = <1>;
63*4882a593Smuzhiyun		#size-cells = <1>;
64*4882a593Smuzhiyun		ranges;
65*4882a593Smuzhiyun
66*4882a593Smuzhiyun		clock_audss: clock-controller@3810000 {
67*4882a593Smuzhiyun			compatible = "samsung,exynos4210-audss-clock";
68*4882a593Smuzhiyun			reg = <0x03810000 0x0C>;
69*4882a593Smuzhiyun			#clock-cells = <1>;
70*4882a593Smuzhiyun			clocks = <&clock CLK_FIN_PLL>, <&clock CLK_FOUT_EPLL>,
71*4882a593Smuzhiyun				 <&clock CLK_SCLK_AUDIO0>,
72*4882a593Smuzhiyun				 <&clock CLK_SCLK_AUDIO0>;
73*4882a593Smuzhiyun			clock-names = "pll_ref", "pll_in", "sclk_audio",
74*4882a593Smuzhiyun				      "sclk_pcm_in";
75*4882a593Smuzhiyun		};
76*4882a593Smuzhiyun
77*4882a593Smuzhiyun		i2s0: i2s@3830000 {
78*4882a593Smuzhiyun			compatible = "samsung,s5pv210-i2s";
79*4882a593Smuzhiyun			reg = <0x03830000 0x100>;
80*4882a593Smuzhiyun			clocks = <&clock_audss EXYNOS_I2S_BUS>,
81*4882a593Smuzhiyun				 <&clock_audss EXYNOS_DOUT_AUD_BUS>,
82*4882a593Smuzhiyun				 <&clock_audss EXYNOS_SCLK_I2S>;
83*4882a593Smuzhiyun			clock-names = "iis", "i2s_opclk0", "i2s_opclk1";
84*4882a593Smuzhiyun			#clock-cells = <1>;
85*4882a593Smuzhiyun			clock-output-names = "i2s_cdclk0";
86*4882a593Smuzhiyun			dmas = <&pdma0 12>, <&pdma0 11>, <&pdma0 10>;
87*4882a593Smuzhiyun			dma-names = "tx", "rx", "tx-sec";
88*4882a593Smuzhiyun			samsung,idma-addr = <0x03000000>;
89*4882a593Smuzhiyun			#sound-dai-cells = <1>;
90*4882a593Smuzhiyun			status = "disabled";
91*4882a593Smuzhiyun		};
92*4882a593Smuzhiyun
93*4882a593Smuzhiyun		chipid@10000000 {
94*4882a593Smuzhiyun			compatible = "samsung,exynos4210-chipid";
95*4882a593Smuzhiyun			reg = <0x10000000 0x100>;
96*4882a593Smuzhiyun		};
97*4882a593Smuzhiyun
98*4882a593Smuzhiyun		scu: snoop-control-unit@10500000 {
99*4882a593Smuzhiyun			compatible = "arm,cortex-a9-scu";
100*4882a593Smuzhiyun			reg = <0x10500000 0x2000>;
101*4882a593Smuzhiyun		};
102*4882a593Smuzhiyun
103*4882a593Smuzhiyun		memory-controller@12570000 {
104*4882a593Smuzhiyun			compatible = "samsung,exynos4210-srom";
105*4882a593Smuzhiyun			reg = <0x12570000 0x14>;
106*4882a593Smuzhiyun		};
107*4882a593Smuzhiyun
108*4882a593Smuzhiyun		mipi_phy: video-phy {
109*4882a593Smuzhiyun			compatible = "samsung,s5pv210-mipi-video-phy";
110*4882a593Smuzhiyun			#phy-cells = <1>;
111*4882a593Smuzhiyun			syscon = <&pmu_system_controller>;
112*4882a593Smuzhiyun		};
113*4882a593Smuzhiyun
114*4882a593Smuzhiyun		pd_mfc: power-domain@10023c40 {
115*4882a593Smuzhiyun			compatible = "samsung,exynos4210-pd";
116*4882a593Smuzhiyun			reg = <0x10023C40 0x20>;
117*4882a593Smuzhiyun			#power-domain-cells = <0>;
118*4882a593Smuzhiyun			label = "MFC";
119*4882a593Smuzhiyun		};
120*4882a593Smuzhiyun
121*4882a593Smuzhiyun		pd_g3d: power-domain@10023c60 {
122*4882a593Smuzhiyun			compatible = "samsung,exynos4210-pd";
123*4882a593Smuzhiyun			reg = <0x10023C60 0x20>;
124*4882a593Smuzhiyun			#power-domain-cells = <0>;
125*4882a593Smuzhiyun			label = "G3D";
126*4882a593Smuzhiyun		};
127*4882a593Smuzhiyun
128*4882a593Smuzhiyun		pd_lcd0: power-domain@10023c80 {
129*4882a593Smuzhiyun			compatible = "samsung,exynos4210-pd";
130*4882a593Smuzhiyun			reg = <0x10023C80 0x20>;
131*4882a593Smuzhiyun			#power-domain-cells = <0>;
132*4882a593Smuzhiyun			label = "LCD0";
133*4882a593Smuzhiyun		};
134*4882a593Smuzhiyun
135*4882a593Smuzhiyun		pd_tv: power-domain@10023c20 {
136*4882a593Smuzhiyun			compatible = "samsung,exynos4210-pd";
137*4882a593Smuzhiyun			reg = <0x10023C20 0x20>;
138*4882a593Smuzhiyun			#power-domain-cells = <0>;
139*4882a593Smuzhiyun			power-domains = <&pd_lcd0>;
140*4882a593Smuzhiyun			label = "TV";
141*4882a593Smuzhiyun		};
142*4882a593Smuzhiyun
143*4882a593Smuzhiyun		pd_cam: power-domain@10023c00 {
144*4882a593Smuzhiyun			compatible = "samsung,exynos4210-pd";
145*4882a593Smuzhiyun			reg = <0x10023C00 0x20>;
146*4882a593Smuzhiyun			#power-domain-cells = <0>;
147*4882a593Smuzhiyun			label = "CAM";
148*4882a593Smuzhiyun		};
149*4882a593Smuzhiyun
150*4882a593Smuzhiyun		pd_gps: power-domain@10023ce0 {
151*4882a593Smuzhiyun			compatible = "samsung,exynos4210-pd";
152*4882a593Smuzhiyun			reg = <0x10023CE0 0x20>;
153*4882a593Smuzhiyun			#power-domain-cells = <0>;
154*4882a593Smuzhiyun			label = "GPS";
155*4882a593Smuzhiyun		};
156*4882a593Smuzhiyun
157*4882a593Smuzhiyun		pd_gps_alive: power-domain@10023d00 {
158*4882a593Smuzhiyun			compatible = "samsung,exynos4210-pd";
159*4882a593Smuzhiyun			reg = <0x10023D00 0x20>;
160*4882a593Smuzhiyun			#power-domain-cells = <0>;
161*4882a593Smuzhiyun			label = "GPS alive";
162*4882a593Smuzhiyun		};
163*4882a593Smuzhiyun
164*4882a593Smuzhiyun		gic: interrupt-controller@10490000 {
165*4882a593Smuzhiyun			compatible = "arm,cortex-a9-gic";
166*4882a593Smuzhiyun			#interrupt-cells = <3>;
167*4882a593Smuzhiyun			interrupt-controller;
168*4882a593Smuzhiyun			reg = <0x10490000 0x10000>, <0x10480000 0x10000>;
169*4882a593Smuzhiyun		};
170*4882a593Smuzhiyun
171*4882a593Smuzhiyun		combiner: interrupt-controller@10440000 {
172*4882a593Smuzhiyun			compatible = "samsung,exynos4210-combiner";
173*4882a593Smuzhiyun			#interrupt-cells = <2>;
174*4882a593Smuzhiyun			interrupt-controller;
175*4882a593Smuzhiyun			reg = <0x10440000 0x1000>;
176*4882a593Smuzhiyun		};
177*4882a593Smuzhiyun
178*4882a593Smuzhiyun		sys_reg: syscon@10010000 {
179*4882a593Smuzhiyun			compatible = "samsung,exynos4-sysreg", "syscon";
180*4882a593Smuzhiyun			reg = <0x10010000 0x400>;
181*4882a593Smuzhiyun		};
182*4882a593Smuzhiyun
183*4882a593Smuzhiyun		pmu_system_controller: system-controller@10020000 {
184*4882a593Smuzhiyun			compatible = "samsung,exynos4210-pmu", "syscon";
185*4882a593Smuzhiyun			reg = <0x10020000 0x4000>;
186*4882a593Smuzhiyun			interrupt-controller;
187*4882a593Smuzhiyun			#interrupt-cells = <3>;
188*4882a593Smuzhiyun			interrupt-parent = <&gic>;
189*4882a593Smuzhiyun		};
190*4882a593Smuzhiyun
191*4882a593Smuzhiyun		dsi_0: dsi@11c80000 {
192*4882a593Smuzhiyun			compatible = "samsung,exynos4210-mipi-dsi";
193*4882a593Smuzhiyun			reg = <0x11C80000 0x10000>;
194*4882a593Smuzhiyun			interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
195*4882a593Smuzhiyun			power-domains = <&pd_lcd0>;
196*4882a593Smuzhiyun			phys = <&mipi_phy 1>;
197*4882a593Smuzhiyun			phy-names = "dsim";
198*4882a593Smuzhiyun			clocks = <&clock CLK_DSIM0>, <&clock CLK_SCLK_MIPI0>;
199*4882a593Smuzhiyun			clock-names = "bus_clk", "sclk_mipi";
200*4882a593Smuzhiyun			status = "disabled";
201*4882a593Smuzhiyun			#address-cells = <1>;
202*4882a593Smuzhiyun			#size-cells = <0>;
203*4882a593Smuzhiyun		};
204*4882a593Smuzhiyun
205*4882a593Smuzhiyun		camera: camera {
206*4882a593Smuzhiyun			compatible = "samsung,fimc", "simple-bus";
207*4882a593Smuzhiyun			status = "disabled";
208*4882a593Smuzhiyun			#address-cells = <1>;
209*4882a593Smuzhiyun			#size-cells = <1>;
210*4882a593Smuzhiyun			#clock-cells = <1>;
211*4882a593Smuzhiyun			clock-output-names = "cam_a_clkout", "cam_b_clkout";
212*4882a593Smuzhiyun			ranges;
213*4882a593Smuzhiyun
214*4882a593Smuzhiyun			fimc_0: fimc@11800000 {
215*4882a593Smuzhiyun				compatible = "samsung,exynos4210-fimc";
216*4882a593Smuzhiyun				reg = <0x11800000 0x1000>;
217*4882a593Smuzhiyun				interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>;
218*4882a593Smuzhiyun				clocks = <&clock CLK_FIMC0>,
219*4882a593Smuzhiyun					 <&clock CLK_SCLK_FIMC0>;
220*4882a593Smuzhiyun				clock-names = "fimc", "sclk_fimc";
221*4882a593Smuzhiyun				power-domains = <&pd_cam>;
222*4882a593Smuzhiyun				samsung,sysreg = <&sys_reg>;
223*4882a593Smuzhiyun				iommus = <&sysmmu_fimc0>;
224*4882a593Smuzhiyun				status = "disabled";
225*4882a593Smuzhiyun			};
226*4882a593Smuzhiyun
227*4882a593Smuzhiyun			fimc_1: fimc@11810000 {
228*4882a593Smuzhiyun				compatible = "samsung,exynos4210-fimc";
229*4882a593Smuzhiyun				reg = <0x11810000 0x1000>;
230*4882a593Smuzhiyun				interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
231*4882a593Smuzhiyun				clocks = <&clock CLK_FIMC1>,
232*4882a593Smuzhiyun					 <&clock CLK_SCLK_FIMC1>;
233*4882a593Smuzhiyun				clock-names = "fimc", "sclk_fimc";
234*4882a593Smuzhiyun				power-domains = <&pd_cam>;
235*4882a593Smuzhiyun				samsung,sysreg = <&sys_reg>;
236*4882a593Smuzhiyun				iommus = <&sysmmu_fimc1>;
237*4882a593Smuzhiyun				status = "disabled";
238*4882a593Smuzhiyun			};
239*4882a593Smuzhiyun
240*4882a593Smuzhiyun			fimc_2: fimc@11820000 {
241*4882a593Smuzhiyun				compatible = "samsung,exynos4210-fimc";
242*4882a593Smuzhiyun				reg = <0x11820000 0x1000>;
243*4882a593Smuzhiyun				interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
244*4882a593Smuzhiyun				clocks = <&clock CLK_FIMC2>,
245*4882a593Smuzhiyun					 <&clock CLK_SCLK_FIMC2>;
246*4882a593Smuzhiyun				clock-names = "fimc", "sclk_fimc";
247*4882a593Smuzhiyun				power-domains = <&pd_cam>;
248*4882a593Smuzhiyun				samsung,sysreg = <&sys_reg>;
249*4882a593Smuzhiyun				iommus = <&sysmmu_fimc2>;
250*4882a593Smuzhiyun				status = "disabled";
251*4882a593Smuzhiyun			};
252*4882a593Smuzhiyun
253*4882a593Smuzhiyun			fimc_3: fimc@11830000 {
254*4882a593Smuzhiyun				compatible = "samsung,exynos4210-fimc";
255*4882a593Smuzhiyun				reg = <0x11830000 0x1000>;
256*4882a593Smuzhiyun				interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>;
257*4882a593Smuzhiyun				clocks = <&clock CLK_FIMC3>,
258*4882a593Smuzhiyun					 <&clock CLK_SCLK_FIMC3>;
259*4882a593Smuzhiyun				clock-names = "fimc", "sclk_fimc";
260*4882a593Smuzhiyun				power-domains = <&pd_cam>;
261*4882a593Smuzhiyun				samsung,sysreg = <&sys_reg>;
262*4882a593Smuzhiyun				iommus = <&sysmmu_fimc3>;
263*4882a593Smuzhiyun				status = "disabled";
264*4882a593Smuzhiyun			};
265*4882a593Smuzhiyun
266*4882a593Smuzhiyun			csis_0: csis@11880000 {
267*4882a593Smuzhiyun				compatible = "samsung,exynos4210-csis";
268*4882a593Smuzhiyun				reg = <0x11880000 0x4000>;
269*4882a593Smuzhiyun				interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>;
270*4882a593Smuzhiyun				clocks = <&clock CLK_CSIS0>,
271*4882a593Smuzhiyun					 <&clock CLK_SCLK_CSIS0>;
272*4882a593Smuzhiyun				clock-names = "csis", "sclk_csis";
273*4882a593Smuzhiyun				bus-width = <4>;
274*4882a593Smuzhiyun				power-domains = <&pd_cam>;
275*4882a593Smuzhiyun				phys = <&mipi_phy 0>;
276*4882a593Smuzhiyun				phy-names = "csis";
277*4882a593Smuzhiyun				status = "disabled";
278*4882a593Smuzhiyun				#address-cells = <1>;
279*4882a593Smuzhiyun				#size-cells = <0>;
280*4882a593Smuzhiyun			};
281*4882a593Smuzhiyun
282*4882a593Smuzhiyun			csis_1: csis@11890000 {
283*4882a593Smuzhiyun				compatible = "samsung,exynos4210-csis";
284*4882a593Smuzhiyun				reg = <0x11890000 0x4000>;
285*4882a593Smuzhiyun				interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>;
286*4882a593Smuzhiyun				clocks = <&clock CLK_CSIS1>,
287*4882a593Smuzhiyun					 <&clock CLK_SCLK_CSIS1>;
288*4882a593Smuzhiyun				clock-names = "csis", "sclk_csis";
289*4882a593Smuzhiyun				bus-width = <2>;
290*4882a593Smuzhiyun				power-domains = <&pd_cam>;
291*4882a593Smuzhiyun				phys = <&mipi_phy 2>;
292*4882a593Smuzhiyun				phy-names = "csis";
293*4882a593Smuzhiyun				status = "disabled";
294*4882a593Smuzhiyun				#address-cells = <1>;
295*4882a593Smuzhiyun				#size-cells = <0>;
296*4882a593Smuzhiyun			};
297*4882a593Smuzhiyun		};
298*4882a593Smuzhiyun
299*4882a593Smuzhiyun		rtc: rtc@10070000 {
300*4882a593Smuzhiyun			compatible = "samsung,s3c6410-rtc";
301*4882a593Smuzhiyun			reg = <0x10070000 0x100>;
302*4882a593Smuzhiyun			interrupt-parent = <&pmu_system_controller>;
303*4882a593Smuzhiyun			interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>,
304*4882a593Smuzhiyun				     <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
305*4882a593Smuzhiyun			clocks = <&clock CLK_RTC>;
306*4882a593Smuzhiyun			clock-names = "rtc";
307*4882a593Smuzhiyun			status = "disabled";
308*4882a593Smuzhiyun		};
309*4882a593Smuzhiyun
310*4882a593Smuzhiyun		keypad: keypad@100a0000 {
311*4882a593Smuzhiyun			compatible = "samsung,s5pv210-keypad";
312*4882a593Smuzhiyun			reg = <0x100A0000 0x100>;
313*4882a593Smuzhiyun			interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>;
314*4882a593Smuzhiyun			clocks = <&clock CLK_KEYIF>;
315*4882a593Smuzhiyun			clock-names = "keypad";
316*4882a593Smuzhiyun			status = "disabled";
317*4882a593Smuzhiyun		};
318*4882a593Smuzhiyun
319*4882a593Smuzhiyun		sdhci_0: sdhci@12510000 {
320*4882a593Smuzhiyun			compatible = "samsung,exynos4210-sdhci";
321*4882a593Smuzhiyun			reg = <0x12510000 0x100>;
322*4882a593Smuzhiyun			interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
323*4882a593Smuzhiyun			clocks = <&clock CLK_SDMMC0>, <&clock CLK_SCLK_MMC0>;
324*4882a593Smuzhiyun			clock-names = "hsmmc", "mmc_busclk.2";
325*4882a593Smuzhiyun			status = "disabled";
326*4882a593Smuzhiyun		};
327*4882a593Smuzhiyun
328*4882a593Smuzhiyun		sdhci_1: sdhci@12520000 {
329*4882a593Smuzhiyun			compatible = "samsung,exynos4210-sdhci";
330*4882a593Smuzhiyun			reg = <0x12520000 0x100>;
331*4882a593Smuzhiyun			interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
332*4882a593Smuzhiyun			clocks = <&clock CLK_SDMMC1>, <&clock CLK_SCLK_MMC1>;
333*4882a593Smuzhiyun			clock-names = "hsmmc", "mmc_busclk.2";
334*4882a593Smuzhiyun			status = "disabled";
335*4882a593Smuzhiyun		};
336*4882a593Smuzhiyun
337*4882a593Smuzhiyun		sdhci_2: sdhci@12530000 {
338*4882a593Smuzhiyun			compatible = "samsung,exynos4210-sdhci";
339*4882a593Smuzhiyun			reg = <0x12530000 0x100>;
340*4882a593Smuzhiyun			interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>;
341*4882a593Smuzhiyun			clocks = <&clock CLK_SDMMC2>, <&clock CLK_SCLK_MMC2>;
342*4882a593Smuzhiyun			clock-names = "hsmmc", "mmc_busclk.2";
343*4882a593Smuzhiyun			status = "disabled";
344*4882a593Smuzhiyun		};
345*4882a593Smuzhiyun
346*4882a593Smuzhiyun		sdhci_3: sdhci@12540000 {
347*4882a593Smuzhiyun			compatible = "samsung,exynos4210-sdhci";
348*4882a593Smuzhiyun			reg = <0x12540000 0x100>;
349*4882a593Smuzhiyun			interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>;
350*4882a593Smuzhiyun			clocks = <&clock CLK_SDMMC3>, <&clock CLK_SCLK_MMC3>;
351*4882a593Smuzhiyun			clock-names = "hsmmc", "mmc_busclk.2";
352*4882a593Smuzhiyun			status = "disabled";
353*4882a593Smuzhiyun		};
354*4882a593Smuzhiyun
355*4882a593Smuzhiyun		exynos_usbphy: exynos-usbphy@125b0000 {
356*4882a593Smuzhiyun			compatible = "samsung,exynos4210-usb2-phy";
357*4882a593Smuzhiyun			reg = <0x125B0000 0x100>;
358*4882a593Smuzhiyun			samsung,pmureg-phandle = <&pmu_system_controller>;
359*4882a593Smuzhiyun			clocks = <&clock CLK_USB_DEVICE>, <&clock CLK_XUSBXTI>;
360*4882a593Smuzhiyun			clock-names = "phy", "ref";
361*4882a593Smuzhiyun			#phy-cells = <1>;
362*4882a593Smuzhiyun			status = "disabled";
363*4882a593Smuzhiyun		};
364*4882a593Smuzhiyun
365*4882a593Smuzhiyun		hsotg: hsotg@12480000 {
366*4882a593Smuzhiyun			compatible = "samsung,s3c6400-hsotg";
367*4882a593Smuzhiyun			reg = <0x12480000 0x20000>;
368*4882a593Smuzhiyun			interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>;
369*4882a593Smuzhiyun			clocks = <&clock CLK_USB_DEVICE>;
370*4882a593Smuzhiyun			clock-names = "otg";
371*4882a593Smuzhiyun			phys = <&exynos_usbphy 0>;
372*4882a593Smuzhiyun			phy-names = "usb2-phy";
373*4882a593Smuzhiyun			status = "disabled";
374*4882a593Smuzhiyun		};
375*4882a593Smuzhiyun
376*4882a593Smuzhiyun		ehci: ehci@12580000 {
377*4882a593Smuzhiyun			compatible = "samsung,exynos4210-ehci";
378*4882a593Smuzhiyun			reg = <0x12580000 0x100>;
379*4882a593Smuzhiyun			interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>;
380*4882a593Smuzhiyun			clocks = <&clock CLK_USB_HOST>;
381*4882a593Smuzhiyun			clock-names = "usbhost";
382*4882a593Smuzhiyun			status = "disabled";
383*4882a593Smuzhiyun			phys = <&exynos_usbphy 1>, <&exynos_usbphy 2>, <&exynos_usbphy 3>;
384*4882a593Smuzhiyun			phy-names = "host", "hsic0", "hsic1";
385*4882a593Smuzhiyun		};
386*4882a593Smuzhiyun
387*4882a593Smuzhiyun		ohci: ohci@12590000 {
388*4882a593Smuzhiyun			compatible = "samsung,exynos4210-ohci";
389*4882a593Smuzhiyun			reg = <0x12590000 0x100>;
390*4882a593Smuzhiyun			interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>;
391*4882a593Smuzhiyun			clocks = <&clock CLK_USB_HOST>;
392*4882a593Smuzhiyun			clock-names = "usbhost";
393*4882a593Smuzhiyun			status = "disabled";
394*4882a593Smuzhiyun			phys = <&exynos_usbphy 1>;
395*4882a593Smuzhiyun			phy-names = "host";
396*4882a593Smuzhiyun		};
397*4882a593Smuzhiyun
398*4882a593Smuzhiyun		gpu: gpu@13000000 {
399*4882a593Smuzhiyun			compatible = "samsung,exynos4210-mali", "arm,mali-400";
400*4882a593Smuzhiyun			reg = <0x13000000 0x10000>;
401*4882a593Smuzhiyun			/*
402*4882a593Smuzhiyun			 * CLK_G3D is not actually bus clock but a IP-level clock.
403*4882a593Smuzhiyun			 * The bus clock is not described in hardware manual.
404*4882a593Smuzhiyun			 */
405*4882a593Smuzhiyun			clocks = <&clock CLK_G3D>,
406*4882a593Smuzhiyun				 <&clock CLK_SCLK_G3D>;
407*4882a593Smuzhiyun			clock-names = "bus", "core";
408*4882a593Smuzhiyun			power-domains = <&pd_g3d>;
409*4882a593Smuzhiyun			status = "disabled";
410*4882a593Smuzhiyun		};
411*4882a593Smuzhiyun
412*4882a593Smuzhiyun		i2s1: i2s@13960000 {
413*4882a593Smuzhiyun			compatible = "samsung,s3c6410-i2s";
414*4882a593Smuzhiyun			reg = <0x13960000 0x100>;
415*4882a593Smuzhiyun			clocks = <&clock CLK_I2S1>;
416*4882a593Smuzhiyun			clock-names = "iis";
417*4882a593Smuzhiyun			#clock-cells = <1>;
418*4882a593Smuzhiyun			clock-output-names = "i2s_cdclk1";
419*4882a593Smuzhiyun			dmas = <&pdma1 12>, <&pdma1 11>;
420*4882a593Smuzhiyun			dma-names = "tx", "rx";
421*4882a593Smuzhiyun			#sound-dai-cells = <1>;
422*4882a593Smuzhiyun			status = "disabled";
423*4882a593Smuzhiyun		};
424*4882a593Smuzhiyun
425*4882a593Smuzhiyun		i2s2: i2s@13970000 {
426*4882a593Smuzhiyun			compatible = "samsung,s3c6410-i2s";
427*4882a593Smuzhiyun			reg = <0x13970000 0x100>;
428*4882a593Smuzhiyun			clocks = <&clock CLK_I2S2>;
429*4882a593Smuzhiyun			clock-names = "iis";
430*4882a593Smuzhiyun			#clock-cells = <1>;
431*4882a593Smuzhiyun			clock-output-names = "i2s_cdclk2";
432*4882a593Smuzhiyun			dmas = <&pdma0 14>, <&pdma0 13>;
433*4882a593Smuzhiyun			dma-names = "tx", "rx";
434*4882a593Smuzhiyun			#sound-dai-cells = <1>;
435*4882a593Smuzhiyun			status = "disabled";
436*4882a593Smuzhiyun		};
437*4882a593Smuzhiyun
438*4882a593Smuzhiyun		mfc: codec@13400000 {
439*4882a593Smuzhiyun			compatible = "samsung,mfc-v5";
440*4882a593Smuzhiyun			reg = <0x13400000 0x10000>;
441*4882a593Smuzhiyun			interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>;
442*4882a593Smuzhiyun			power-domains = <&pd_mfc>;
443*4882a593Smuzhiyun			clocks = <&clock CLK_MFC>, <&clock CLK_SCLK_MFC>;
444*4882a593Smuzhiyun			clock-names = "mfc", "sclk_mfc";
445*4882a593Smuzhiyun			iommus = <&sysmmu_mfc_l>, <&sysmmu_mfc_r>;
446*4882a593Smuzhiyun			iommu-names = "left", "right";
447*4882a593Smuzhiyun		};
448*4882a593Smuzhiyun
449*4882a593Smuzhiyun		serial_0: serial@13800000 {
450*4882a593Smuzhiyun			compatible = "samsung,exynos4210-uart";
451*4882a593Smuzhiyun			reg = <0x13800000 0x100>;
452*4882a593Smuzhiyun			interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;
453*4882a593Smuzhiyun			clocks = <&clock CLK_UART0>, <&clock CLK_SCLK_UART0>;
454*4882a593Smuzhiyun			clock-names = "uart", "clk_uart_baud0";
455*4882a593Smuzhiyun			dmas = <&pdma0 15>, <&pdma0 16>;
456*4882a593Smuzhiyun			dma-names = "rx", "tx";
457*4882a593Smuzhiyun			status = "disabled";
458*4882a593Smuzhiyun		};
459*4882a593Smuzhiyun
460*4882a593Smuzhiyun		serial_1: serial@13810000 {
461*4882a593Smuzhiyun			compatible = "samsung,exynos4210-uart";
462*4882a593Smuzhiyun			reg = <0x13810000 0x100>;
463*4882a593Smuzhiyun			interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
464*4882a593Smuzhiyun			clocks = <&clock CLK_UART1>, <&clock CLK_SCLK_UART1>;
465*4882a593Smuzhiyun			clock-names = "uart", "clk_uart_baud0";
466*4882a593Smuzhiyun			dmas = <&pdma1 15>, <&pdma1 16>;
467*4882a593Smuzhiyun			dma-names = "rx", "tx";
468*4882a593Smuzhiyun			status = "disabled";
469*4882a593Smuzhiyun		};
470*4882a593Smuzhiyun
471*4882a593Smuzhiyun		serial_2: serial@13820000 {
472*4882a593Smuzhiyun			compatible = "samsung,exynos4210-uart";
473*4882a593Smuzhiyun			reg = <0x13820000 0x100>;
474*4882a593Smuzhiyun			interrupts = <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>;
475*4882a593Smuzhiyun			clocks = <&clock CLK_UART2>, <&clock CLK_SCLK_UART2>;
476*4882a593Smuzhiyun			clock-names = "uart", "clk_uart_baud0";
477*4882a593Smuzhiyun			dmas = <&pdma0 17>, <&pdma0 18>;
478*4882a593Smuzhiyun			dma-names = "rx", "tx";
479*4882a593Smuzhiyun			status = "disabled";
480*4882a593Smuzhiyun		};
481*4882a593Smuzhiyun
482*4882a593Smuzhiyun		serial_3: serial@13830000 {
483*4882a593Smuzhiyun			compatible = "samsung,exynos4210-uart";
484*4882a593Smuzhiyun			reg = <0x13830000 0x100>;
485*4882a593Smuzhiyun			interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
486*4882a593Smuzhiyun			clocks = <&clock CLK_UART3>, <&clock CLK_SCLK_UART3>;
487*4882a593Smuzhiyun			clock-names = "uart", "clk_uart_baud0";
488*4882a593Smuzhiyun			dmas = <&pdma1 17>, <&pdma1 18>;
489*4882a593Smuzhiyun			dma-names = "rx", "tx";
490*4882a593Smuzhiyun			status = "disabled";
491*4882a593Smuzhiyun		};
492*4882a593Smuzhiyun
493*4882a593Smuzhiyun		i2c_0: i2c@13860000 {
494*4882a593Smuzhiyun			#address-cells = <1>;
495*4882a593Smuzhiyun			#size-cells = <0>;
496*4882a593Smuzhiyun			compatible = "samsung,s3c2440-i2c";
497*4882a593Smuzhiyun			reg = <0x13860000 0x100>;
498*4882a593Smuzhiyun			interrupts = <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>;
499*4882a593Smuzhiyun			clocks = <&clock CLK_I2C0>;
500*4882a593Smuzhiyun			clock-names = "i2c";
501*4882a593Smuzhiyun			pinctrl-names = "default";
502*4882a593Smuzhiyun			pinctrl-0 = <&i2c0_bus>;
503*4882a593Smuzhiyun			status = "disabled";
504*4882a593Smuzhiyun		};
505*4882a593Smuzhiyun
506*4882a593Smuzhiyun		i2c_1: i2c@13870000 {
507*4882a593Smuzhiyun			#address-cells = <1>;
508*4882a593Smuzhiyun			#size-cells = <0>;
509*4882a593Smuzhiyun			compatible = "samsung,s3c2440-i2c";
510*4882a593Smuzhiyun			reg = <0x13870000 0x100>;
511*4882a593Smuzhiyun			interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>;
512*4882a593Smuzhiyun			clocks = <&clock CLK_I2C1>;
513*4882a593Smuzhiyun			clock-names = "i2c";
514*4882a593Smuzhiyun			pinctrl-names = "default";
515*4882a593Smuzhiyun			pinctrl-0 = <&i2c1_bus>;
516*4882a593Smuzhiyun			status = "disabled";
517*4882a593Smuzhiyun		};
518*4882a593Smuzhiyun
519*4882a593Smuzhiyun		i2c_2: i2c@13880000 {
520*4882a593Smuzhiyun			#address-cells = <1>;
521*4882a593Smuzhiyun			#size-cells = <0>;
522*4882a593Smuzhiyun			compatible = "samsung,s3c2440-i2c";
523*4882a593Smuzhiyun			reg = <0x13880000 0x100>;
524*4882a593Smuzhiyun			interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>;
525*4882a593Smuzhiyun			clocks = <&clock CLK_I2C2>;
526*4882a593Smuzhiyun			clock-names = "i2c";
527*4882a593Smuzhiyun			pinctrl-names = "default";
528*4882a593Smuzhiyun			pinctrl-0 = <&i2c2_bus>;
529*4882a593Smuzhiyun			status = "disabled";
530*4882a593Smuzhiyun		};
531*4882a593Smuzhiyun
532*4882a593Smuzhiyun		i2c_3: i2c@13890000 {
533*4882a593Smuzhiyun			#address-cells = <1>;
534*4882a593Smuzhiyun			#size-cells = <0>;
535*4882a593Smuzhiyun			compatible = "samsung,s3c2440-i2c";
536*4882a593Smuzhiyun			reg = <0x13890000 0x100>;
537*4882a593Smuzhiyun			interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>;
538*4882a593Smuzhiyun			clocks = <&clock CLK_I2C3>;
539*4882a593Smuzhiyun			clock-names = "i2c";
540*4882a593Smuzhiyun			pinctrl-names = "default";
541*4882a593Smuzhiyun			pinctrl-0 = <&i2c3_bus>;
542*4882a593Smuzhiyun			status = "disabled";
543*4882a593Smuzhiyun		};
544*4882a593Smuzhiyun
545*4882a593Smuzhiyun		i2c_4: i2c@138a0000 {
546*4882a593Smuzhiyun			#address-cells = <1>;
547*4882a593Smuzhiyun			#size-cells = <0>;
548*4882a593Smuzhiyun			compatible = "samsung,s3c2440-i2c";
549*4882a593Smuzhiyun			reg = <0x138A0000 0x100>;
550*4882a593Smuzhiyun			interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
551*4882a593Smuzhiyun			clocks = <&clock CLK_I2C4>;
552*4882a593Smuzhiyun			clock-names = "i2c";
553*4882a593Smuzhiyun			pinctrl-names = "default";
554*4882a593Smuzhiyun			pinctrl-0 = <&i2c4_bus>;
555*4882a593Smuzhiyun			status = "disabled";
556*4882a593Smuzhiyun		};
557*4882a593Smuzhiyun
558*4882a593Smuzhiyun		i2c_5: i2c@138b0000 {
559*4882a593Smuzhiyun			#address-cells = <1>;
560*4882a593Smuzhiyun			#size-cells = <0>;
561*4882a593Smuzhiyun			compatible = "samsung,s3c2440-i2c";
562*4882a593Smuzhiyun			reg = <0x138B0000 0x100>;
563*4882a593Smuzhiyun			interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>;
564*4882a593Smuzhiyun			clocks = <&clock CLK_I2C5>;
565*4882a593Smuzhiyun			clock-names = "i2c";
566*4882a593Smuzhiyun			pinctrl-names = "default";
567*4882a593Smuzhiyun			pinctrl-0 = <&i2c5_bus>;
568*4882a593Smuzhiyun			status = "disabled";
569*4882a593Smuzhiyun		};
570*4882a593Smuzhiyun
571*4882a593Smuzhiyun		i2c_6: i2c@138c0000 {
572*4882a593Smuzhiyun			#address-cells = <1>;
573*4882a593Smuzhiyun			#size-cells = <0>;
574*4882a593Smuzhiyun			compatible = "samsung,s3c2440-i2c";
575*4882a593Smuzhiyun			reg = <0x138C0000 0x100>;
576*4882a593Smuzhiyun			interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>;
577*4882a593Smuzhiyun			clocks = <&clock CLK_I2C6>;
578*4882a593Smuzhiyun			clock-names = "i2c";
579*4882a593Smuzhiyun			pinctrl-names = "default";
580*4882a593Smuzhiyun			pinctrl-0 = <&i2c6_bus>;
581*4882a593Smuzhiyun			status = "disabled";
582*4882a593Smuzhiyun		};
583*4882a593Smuzhiyun
584*4882a593Smuzhiyun		i2c_7: i2c@138d0000 {
585*4882a593Smuzhiyun			#address-cells = <1>;
586*4882a593Smuzhiyun			#size-cells = <0>;
587*4882a593Smuzhiyun			compatible = "samsung,s3c2440-i2c";
588*4882a593Smuzhiyun			reg = <0x138D0000 0x100>;
589*4882a593Smuzhiyun			interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>;
590*4882a593Smuzhiyun			clocks = <&clock CLK_I2C7>;
591*4882a593Smuzhiyun			clock-names = "i2c";
592*4882a593Smuzhiyun			pinctrl-names = "default";
593*4882a593Smuzhiyun			pinctrl-0 = <&i2c7_bus>;
594*4882a593Smuzhiyun			status = "disabled";
595*4882a593Smuzhiyun		};
596*4882a593Smuzhiyun
597*4882a593Smuzhiyun		i2c_8: i2c@138e0000 {
598*4882a593Smuzhiyun			#address-cells = <1>;
599*4882a593Smuzhiyun			#size-cells = <0>;
600*4882a593Smuzhiyun			compatible = "samsung,s3c2440-hdmiphy-i2c";
601*4882a593Smuzhiyun			reg = <0x138E0000 0x100>;
602*4882a593Smuzhiyun			interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>;
603*4882a593Smuzhiyun			clocks = <&clock CLK_I2C_HDMI>;
604*4882a593Smuzhiyun			clock-names = "i2c";
605*4882a593Smuzhiyun			status = "disabled";
606*4882a593Smuzhiyun
607*4882a593Smuzhiyun			hdmi_i2c_phy: hdmiphy@38 {
608*4882a593Smuzhiyun				compatible = "exynos4210-hdmiphy";
609*4882a593Smuzhiyun				reg = <0x38>;
610*4882a593Smuzhiyun			};
611*4882a593Smuzhiyun		};
612*4882a593Smuzhiyun
613*4882a593Smuzhiyun		spi_0: spi@13920000 {
614*4882a593Smuzhiyun			compatible = "samsung,exynos4210-spi";
615*4882a593Smuzhiyun			reg = <0x13920000 0x100>;
616*4882a593Smuzhiyun			interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>;
617*4882a593Smuzhiyun			dmas = <&pdma0 7>, <&pdma0 6>;
618*4882a593Smuzhiyun			dma-names = "tx", "rx";
619*4882a593Smuzhiyun			#address-cells = <1>;
620*4882a593Smuzhiyun			#size-cells = <0>;
621*4882a593Smuzhiyun			clocks = <&clock CLK_SPI0>, <&clock CLK_SCLK_SPI0>;
622*4882a593Smuzhiyun			clock-names = "spi", "spi_busclk0";
623*4882a593Smuzhiyun			pinctrl-names = "default";
624*4882a593Smuzhiyun			pinctrl-0 = <&spi0_bus>;
625*4882a593Smuzhiyun			status = "disabled";
626*4882a593Smuzhiyun		};
627*4882a593Smuzhiyun
628*4882a593Smuzhiyun		spi_1: spi@13930000 {
629*4882a593Smuzhiyun			compatible = "samsung,exynos4210-spi";
630*4882a593Smuzhiyun			reg = <0x13930000 0x100>;
631*4882a593Smuzhiyun			interrupts = <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>;
632*4882a593Smuzhiyun			dmas = <&pdma1 7>, <&pdma1 6>;
633*4882a593Smuzhiyun			dma-names = "tx", "rx";
634*4882a593Smuzhiyun			#address-cells = <1>;
635*4882a593Smuzhiyun			#size-cells = <0>;
636*4882a593Smuzhiyun			clocks = <&clock CLK_SPI1>, <&clock CLK_SCLK_SPI1>;
637*4882a593Smuzhiyun			clock-names = "spi", "spi_busclk0";
638*4882a593Smuzhiyun			pinctrl-names = "default";
639*4882a593Smuzhiyun			pinctrl-0 = <&spi1_bus>;
640*4882a593Smuzhiyun			status = "disabled";
641*4882a593Smuzhiyun		};
642*4882a593Smuzhiyun
643*4882a593Smuzhiyun		spi_2: spi@13940000 {
644*4882a593Smuzhiyun			compatible = "samsung,exynos4210-spi";
645*4882a593Smuzhiyun			reg = <0x13940000 0x100>;
646*4882a593Smuzhiyun			interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>;
647*4882a593Smuzhiyun			dmas = <&pdma0 9>, <&pdma0 8>;
648*4882a593Smuzhiyun			dma-names = "tx", "rx";
649*4882a593Smuzhiyun			#address-cells = <1>;
650*4882a593Smuzhiyun			#size-cells = <0>;
651*4882a593Smuzhiyun			clocks = <&clock CLK_SPI2>, <&clock CLK_SCLK_SPI2>;
652*4882a593Smuzhiyun			clock-names = "spi", "spi_busclk0";
653*4882a593Smuzhiyun			pinctrl-names = "default";
654*4882a593Smuzhiyun			pinctrl-0 = <&spi2_bus>;
655*4882a593Smuzhiyun			status = "disabled";
656*4882a593Smuzhiyun		};
657*4882a593Smuzhiyun
658*4882a593Smuzhiyun		pwm: pwm@139d0000 {
659*4882a593Smuzhiyun			compatible = "samsung,exynos4210-pwm";
660*4882a593Smuzhiyun			reg = <0x139D0000 0x1000>;
661*4882a593Smuzhiyun			interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>,
662*4882a593Smuzhiyun				     <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>,
663*4882a593Smuzhiyun				     <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>,
664*4882a593Smuzhiyun				     <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>,
665*4882a593Smuzhiyun				     <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>;
666*4882a593Smuzhiyun			clocks = <&clock CLK_PWM>;
667*4882a593Smuzhiyun			clock-names = "timers";
668*4882a593Smuzhiyun			#pwm-cells = <3>;
669*4882a593Smuzhiyun			status = "disabled";
670*4882a593Smuzhiyun		};
671*4882a593Smuzhiyun
672*4882a593Smuzhiyun		pdma0: pdma@12680000 {
673*4882a593Smuzhiyun			compatible = "arm,pl330", "arm,primecell";
674*4882a593Smuzhiyun			reg = <0x12680000 0x1000>;
675*4882a593Smuzhiyun			interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
676*4882a593Smuzhiyun			clocks = <&clock CLK_PDMA0>;
677*4882a593Smuzhiyun			clock-names = "apb_pclk";
678*4882a593Smuzhiyun			#dma-cells = <1>;
679*4882a593Smuzhiyun			#dma-channels = <8>;
680*4882a593Smuzhiyun			#dma-requests = <32>;
681*4882a593Smuzhiyun		};
682*4882a593Smuzhiyun
683*4882a593Smuzhiyun		pdma1: pdma@12690000 {
684*4882a593Smuzhiyun			compatible = "arm,pl330", "arm,primecell";
685*4882a593Smuzhiyun			reg = <0x12690000 0x1000>;
686*4882a593Smuzhiyun			interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
687*4882a593Smuzhiyun			clocks = <&clock CLK_PDMA1>;
688*4882a593Smuzhiyun			clock-names = "apb_pclk";
689*4882a593Smuzhiyun			#dma-cells = <1>;
690*4882a593Smuzhiyun			#dma-channels = <8>;
691*4882a593Smuzhiyun			#dma-requests = <32>;
692*4882a593Smuzhiyun		};
693*4882a593Smuzhiyun
694*4882a593Smuzhiyun		mdma1: mdma@12850000 {
695*4882a593Smuzhiyun			compatible = "arm,pl330", "arm,primecell";
696*4882a593Smuzhiyun			reg = <0x12850000 0x1000>;
697*4882a593Smuzhiyun			interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
698*4882a593Smuzhiyun			clocks = <&clock CLK_MDMA>;
699*4882a593Smuzhiyun			clock-names = "apb_pclk";
700*4882a593Smuzhiyun			#dma-cells = <1>;
701*4882a593Smuzhiyun			#dma-channels = <8>;
702*4882a593Smuzhiyun			#dma-requests = <1>;
703*4882a593Smuzhiyun		};
704*4882a593Smuzhiyun
705*4882a593Smuzhiyun		fimd: fimd@11c00000 {
706*4882a593Smuzhiyun			compatible = "samsung,exynos4210-fimd";
707*4882a593Smuzhiyun			interrupt-parent = <&combiner>;
708*4882a593Smuzhiyun			reg = <0x11c00000 0x20000>;
709*4882a593Smuzhiyun			interrupt-names = "fifo", "vsync", "lcd_sys";
710*4882a593Smuzhiyun			interrupts = <11 0>, <11 1>, <11 2>;
711*4882a593Smuzhiyun			clocks = <&clock CLK_SCLK_FIMD0>, <&clock CLK_FIMD0>;
712*4882a593Smuzhiyun			clock-names = "sclk_fimd", "fimd";
713*4882a593Smuzhiyun			power-domains = <&pd_lcd0>;
714*4882a593Smuzhiyun			iommus = <&sysmmu_fimd0>;
715*4882a593Smuzhiyun			samsung,sysreg = <&sys_reg>;
716*4882a593Smuzhiyun			status = "disabled";
717*4882a593Smuzhiyun		};
718*4882a593Smuzhiyun
719*4882a593Smuzhiyun		tmu: tmu@100c0000 {
720*4882a593Smuzhiyun			interrupt-parent = <&combiner>;
721*4882a593Smuzhiyun			reg = <0x100C0000 0x100>;
722*4882a593Smuzhiyun			interrupts = <2 4>;
723*4882a593Smuzhiyun			status = "disabled";
724*4882a593Smuzhiyun			#thermal-sensor-cells = <0>;
725*4882a593Smuzhiyun		};
726*4882a593Smuzhiyun
727*4882a593Smuzhiyun		jpeg_codec: jpeg-codec@11840000 {
728*4882a593Smuzhiyun			compatible = "samsung,exynos4210-jpeg";
729*4882a593Smuzhiyun			reg = <0x11840000 0x1000>;
730*4882a593Smuzhiyun			interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>;
731*4882a593Smuzhiyun			clocks = <&clock CLK_JPEG>;
732*4882a593Smuzhiyun			clock-names = "jpeg";
733*4882a593Smuzhiyun			power-domains = <&pd_cam>;
734*4882a593Smuzhiyun			iommus = <&sysmmu_jpeg>;
735*4882a593Smuzhiyun		};
736*4882a593Smuzhiyun
737*4882a593Smuzhiyun		rotator: rotator@12810000 {
738*4882a593Smuzhiyun			compatible = "samsung,exynos4210-rotator";
739*4882a593Smuzhiyun			reg = <0x12810000 0x64>;
740*4882a593Smuzhiyun			interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
741*4882a593Smuzhiyun			clocks = <&clock CLK_ROTATOR>;
742*4882a593Smuzhiyun			clock-names = "rotator";
743*4882a593Smuzhiyun			iommus = <&sysmmu_rotator>;
744*4882a593Smuzhiyun		};
745*4882a593Smuzhiyun
746*4882a593Smuzhiyun		hdmi: hdmi@12d00000 {
747*4882a593Smuzhiyun			compatible = "samsung,exynos4210-hdmi";
748*4882a593Smuzhiyun			reg = <0x12D00000 0x70000>;
749*4882a593Smuzhiyun			interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>;
750*4882a593Smuzhiyun			clock-names = "hdmi", "sclk_hdmi", "sclk_pixel",
751*4882a593Smuzhiyun				      "sclk_hdmiphy", "mout_hdmi";
752*4882a593Smuzhiyun			clocks = <&clock CLK_HDMI>, <&clock CLK_SCLK_HDMI>,
753*4882a593Smuzhiyun				 <&clock CLK_SCLK_PIXEL>,
754*4882a593Smuzhiyun				 <&clock CLK_SCLK_HDMIPHY>,
755*4882a593Smuzhiyun				 <&clock CLK_MOUT_HDMI>;
756*4882a593Smuzhiyun			phy = <&hdmi_i2c_phy>;
757*4882a593Smuzhiyun			power-domains = <&pd_tv>;
758*4882a593Smuzhiyun			samsung,syscon-phandle = <&pmu_system_controller>;
759*4882a593Smuzhiyun			#sound-dai-cells = <0>;
760*4882a593Smuzhiyun			status = "disabled";
761*4882a593Smuzhiyun		};
762*4882a593Smuzhiyun
763*4882a593Smuzhiyun		hdmicec: cec@100b0000 {
764*4882a593Smuzhiyun			compatible = "samsung,s5p-cec";
765*4882a593Smuzhiyun			reg = <0x100B0000 0x200>;
766*4882a593Smuzhiyun			interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>;
767*4882a593Smuzhiyun			clocks = <&clock CLK_HDMI_CEC>;
768*4882a593Smuzhiyun			clock-names = "hdmicec";
769*4882a593Smuzhiyun			samsung,syscon-phandle = <&pmu_system_controller>;
770*4882a593Smuzhiyun			hdmi-phandle = <&hdmi>;
771*4882a593Smuzhiyun			pinctrl-names = "default";
772*4882a593Smuzhiyun			pinctrl-0 = <&hdmi_cec>;
773*4882a593Smuzhiyun			status = "disabled";
774*4882a593Smuzhiyun		};
775*4882a593Smuzhiyun
776*4882a593Smuzhiyun		mixer: mixer@12c10000 {
777*4882a593Smuzhiyun			compatible = "samsung,exynos4210-mixer";
778*4882a593Smuzhiyun			interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>;
779*4882a593Smuzhiyun			reg = <0x12C10000 0x2100>, <0x12c00000 0x300>;
780*4882a593Smuzhiyun			power-domains = <&pd_tv>;
781*4882a593Smuzhiyun			iommus = <&sysmmu_tv>;
782*4882a593Smuzhiyun			status = "disabled";
783*4882a593Smuzhiyun		};
784*4882a593Smuzhiyun
785*4882a593Smuzhiyun		ppmu_dmc0: ppmu_dmc0@106a0000 {
786*4882a593Smuzhiyun			compatible = "samsung,exynos-ppmu";
787*4882a593Smuzhiyun			reg = <0x106a0000 0x2000>;
788*4882a593Smuzhiyun			clocks = <&clock CLK_PPMUDMC0>;
789*4882a593Smuzhiyun			clock-names = "ppmu";
790*4882a593Smuzhiyun			status = "disabled";
791*4882a593Smuzhiyun		};
792*4882a593Smuzhiyun
793*4882a593Smuzhiyun		ppmu_dmc1: ppmu_dmc1@106b0000 {
794*4882a593Smuzhiyun			compatible = "samsung,exynos-ppmu";
795*4882a593Smuzhiyun			reg = <0x106b0000 0x2000>;
796*4882a593Smuzhiyun			clocks = <&clock CLK_PPMUDMC1>;
797*4882a593Smuzhiyun			clock-names = "ppmu";
798*4882a593Smuzhiyun			status = "disabled";
799*4882a593Smuzhiyun		};
800*4882a593Smuzhiyun
801*4882a593Smuzhiyun		ppmu_cpu: ppmu_cpu@106c0000 {
802*4882a593Smuzhiyun			compatible = "samsung,exynos-ppmu";
803*4882a593Smuzhiyun			reg = <0x106c0000 0x2000>;
804*4882a593Smuzhiyun			clocks = <&clock CLK_PPMUCPU>;
805*4882a593Smuzhiyun			clock-names = "ppmu";
806*4882a593Smuzhiyun			status = "disabled";
807*4882a593Smuzhiyun		};
808*4882a593Smuzhiyun
809*4882a593Smuzhiyun		ppmu_rightbus: ppmu_rightbus@112a0000 {
810*4882a593Smuzhiyun			compatible = "samsung,exynos-ppmu";
811*4882a593Smuzhiyun			reg = <0x112a0000 0x2000>;
812*4882a593Smuzhiyun			clocks = <&clock CLK_PPMURIGHT>;
813*4882a593Smuzhiyun			clock-names = "ppmu";
814*4882a593Smuzhiyun			status = "disabled";
815*4882a593Smuzhiyun		};
816*4882a593Smuzhiyun
817*4882a593Smuzhiyun		ppmu_leftbus: ppmu_leftbus0@116a0000 {
818*4882a593Smuzhiyun			compatible = "samsung,exynos-ppmu";
819*4882a593Smuzhiyun			reg = <0x116a0000 0x2000>;
820*4882a593Smuzhiyun			clocks = <&clock CLK_PPMULEFT>;
821*4882a593Smuzhiyun			clock-names = "ppmu";
822*4882a593Smuzhiyun			status = "disabled";
823*4882a593Smuzhiyun		};
824*4882a593Smuzhiyun
825*4882a593Smuzhiyun		ppmu_camif: ppmu_camif@11ac0000 {
826*4882a593Smuzhiyun			compatible = "samsung,exynos-ppmu";
827*4882a593Smuzhiyun			reg = <0x11ac0000 0x2000>;
828*4882a593Smuzhiyun			clocks = <&clock CLK_PPMUCAMIF>;
829*4882a593Smuzhiyun			clock-names = "ppmu";
830*4882a593Smuzhiyun			status = "disabled";
831*4882a593Smuzhiyun		};
832*4882a593Smuzhiyun
833*4882a593Smuzhiyun		ppmu_lcd0: ppmu_lcd0@11e40000 {
834*4882a593Smuzhiyun			compatible = "samsung,exynos-ppmu";
835*4882a593Smuzhiyun			reg = <0x11e40000 0x2000>;
836*4882a593Smuzhiyun			clocks = <&clock CLK_PPMULCD0>;
837*4882a593Smuzhiyun			clock-names = "ppmu";
838*4882a593Smuzhiyun			status = "disabled";
839*4882a593Smuzhiyun		};
840*4882a593Smuzhiyun
841*4882a593Smuzhiyun		ppmu_fsys: ppmu_g3d@12630000 {
842*4882a593Smuzhiyun			compatible = "samsung,exynos-ppmu";
843*4882a593Smuzhiyun			reg = <0x12630000 0x2000>;
844*4882a593Smuzhiyun			status = "disabled";
845*4882a593Smuzhiyun		};
846*4882a593Smuzhiyun
847*4882a593Smuzhiyun		ppmu_image: ppmu_image@12aa0000 {
848*4882a593Smuzhiyun			compatible = "samsung,exynos-ppmu";
849*4882a593Smuzhiyun			reg = <0x12aa0000 0x2000>;
850*4882a593Smuzhiyun			clocks = <&clock CLK_PPMUIMAGE>;
851*4882a593Smuzhiyun			clock-names = "ppmu";
852*4882a593Smuzhiyun			status = "disabled";
853*4882a593Smuzhiyun		};
854*4882a593Smuzhiyun
855*4882a593Smuzhiyun		ppmu_tv: ppmu_tv@12e40000 {
856*4882a593Smuzhiyun			compatible = "samsung,exynos-ppmu";
857*4882a593Smuzhiyun			reg = <0x12e40000 0x2000>;
858*4882a593Smuzhiyun			clocks = <&clock CLK_PPMUTV>;
859*4882a593Smuzhiyun			clock-names = "ppmu";
860*4882a593Smuzhiyun			status = "disabled";
861*4882a593Smuzhiyun		};
862*4882a593Smuzhiyun
863*4882a593Smuzhiyun		ppmu_g3d: ppmu_g3d@13220000 {
864*4882a593Smuzhiyun			compatible = "samsung,exynos-ppmu";
865*4882a593Smuzhiyun			reg = <0x13220000 0x2000>;
866*4882a593Smuzhiyun			clocks = <&clock CLK_PPMUG3D>;
867*4882a593Smuzhiyun			clock-names = "ppmu";
868*4882a593Smuzhiyun			status = "disabled";
869*4882a593Smuzhiyun		};
870*4882a593Smuzhiyun
871*4882a593Smuzhiyun		ppmu_mfc_left: ppmu_mfc_left@13660000 {
872*4882a593Smuzhiyun			compatible = "samsung,exynos-ppmu";
873*4882a593Smuzhiyun			reg = <0x13660000 0x2000>;
874*4882a593Smuzhiyun			clocks = <&clock CLK_PPMUMFC_L>;
875*4882a593Smuzhiyun			clock-names = "ppmu";
876*4882a593Smuzhiyun			status = "disabled";
877*4882a593Smuzhiyun		};
878*4882a593Smuzhiyun
879*4882a593Smuzhiyun		ppmu_mfc_right: ppmu_mfc_right@13670000 {
880*4882a593Smuzhiyun			compatible = "samsung,exynos-ppmu";
881*4882a593Smuzhiyun			reg = <0x13670000 0x2000>;
882*4882a593Smuzhiyun			clocks = <&clock CLK_PPMUMFC_R>;
883*4882a593Smuzhiyun			clock-names = "ppmu";
884*4882a593Smuzhiyun			status = "disabled";
885*4882a593Smuzhiyun		};
886*4882a593Smuzhiyun
887*4882a593Smuzhiyun		sysmmu_mfc_l: sysmmu@13620000 {
888*4882a593Smuzhiyun			compatible = "samsung,exynos-sysmmu";
889*4882a593Smuzhiyun			reg = <0x13620000 0x1000>;
890*4882a593Smuzhiyun			interrupt-parent = <&combiner>;
891*4882a593Smuzhiyun			interrupts = <5 5>;
892*4882a593Smuzhiyun			clock-names = "sysmmu", "master";
893*4882a593Smuzhiyun			clocks = <&clock CLK_SMMU_MFCL>, <&clock CLK_MFC>;
894*4882a593Smuzhiyun			power-domains = <&pd_mfc>;
895*4882a593Smuzhiyun			#iommu-cells = <0>;
896*4882a593Smuzhiyun		};
897*4882a593Smuzhiyun
898*4882a593Smuzhiyun		sysmmu_mfc_r: sysmmu@13630000 {
899*4882a593Smuzhiyun			compatible = "samsung,exynos-sysmmu";
900*4882a593Smuzhiyun			reg = <0x13630000 0x1000>;
901*4882a593Smuzhiyun			interrupt-parent = <&combiner>;
902*4882a593Smuzhiyun			interrupts = <5 6>;
903*4882a593Smuzhiyun			clock-names = "sysmmu", "master";
904*4882a593Smuzhiyun			clocks = <&clock CLK_SMMU_MFCR>, <&clock CLK_MFC>;
905*4882a593Smuzhiyun			power-domains = <&pd_mfc>;
906*4882a593Smuzhiyun			#iommu-cells = <0>;
907*4882a593Smuzhiyun		};
908*4882a593Smuzhiyun
909*4882a593Smuzhiyun		sysmmu_tv: sysmmu@12e20000 {
910*4882a593Smuzhiyun			compatible = "samsung,exynos-sysmmu";
911*4882a593Smuzhiyun			reg = <0x12E20000 0x1000>;
912*4882a593Smuzhiyun			interrupt-parent = <&combiner>;
913*4882a593Smuzhiyun			interrupts = <5 4>;
914*4882a593Smuzhiyun			clock-names = "sysmmu", "master";
915*4882a593Smuzhiyun			clocks = <&clock CLK_SMMU_TV>, <&clock CLK_MIXER>;
916*4882a593Smuzhiyun			power-domains = <&pd_tv>;
917*4882a593Smuzhiyun			#iommu-cells = <0>;
918*4882a593Smuzhiyun		};
919*4882a593Smuzhiyun
920*4882a593Smuzhiyun		sysmmu_fimc0: sysmmu@11a20000 {
921*4882a593Smuzhiyun			compatible = "samsung,exynos-sysmmu";
922*4882a593Smuzhiyun			reg = <0x11A20000 0x1000>;
923*4882a593Smuzhiyun			interrupt-parent = <&combiner>;
924*4882a593Smuzhiyun			interrupts = <4 2>;
925*4882a593Smuzhiyun			clock-names = "sysmmu", "master";
926*4882a593Smuzhiyun			clocks = <&clock CLK_SMMU_FIMC0>, <&clock CLK_FIMC0>;
927*4882a593Smuzhiyun			power-domains = <&pd_cam>;
928*4882a593Smuzhiyun			#iommu-cells = <0>;
929*4882a593Smuzhiyun		};
930*4882a593Smuzhiyun
931*4882a593Smuzhiyun		sysmmu_fimc1: sysmmu@11a30000 {
932*4882a593Smuzhiyun			compatible = "samsung,exynos-sysmmu";
933*4882a593Smuzhiyun			reg = <0x11A30000 0x1000>;
934*4882a593Smuzhiyun			interrupt-parent = <&combiner>;
935*4882a593Smuzhiyun			interrupts = <4 3>;
936*4882a593Smuzhiyun			clock-names = "sysmmu", "master";
937*4882a593Smuzhiyun			clocks = <&clock CLK_SMMU_FIMC1>, <&clock CLK_FIMC1>;
938*4882a593Smuzhiyun			power-domains = <&pd_cam>;
939*4882a593Smuzhiyun			#iommu-cells = <0>;
940*4882a593Smuzhiyun		};
941*4882a593Smuzhiyun
942*4882a593Smuzhiyun		sysmmu_fimc2: sysmmu@11a40000 {
943*4882a593Smuzhiyun			compatible = "samsung,exynos-sysmmu";
944*4882a593Smuzhiyun			reg = <0x11A40000 0x1000>;
945*4882a593Smuzhiyun			interrupt-parent = <&combiner>;
946*4882a593Smuzhiyun			interrupts = <4 4>;
947*4882a593Smuzhiyun			clock-names = "sysmmu", "master";
948*4882a593Smuzhiyun			clocks = <&clock CLK_SMMU_FIMC2>, <&clock CLK_FIMC2>;
949*4882a593Smuzhiyun			power-domains = <&pd_cam>;
950*4882a593Smuzhiyun			#iommu-cells = <0>;
951*4882a593Smuzhiyun		};
952*4882a593Smuzhiyun
953*4882a593Smuzhiyun		sysmmu_fimc3: sysmmu@11a50000 {
954*4882a593Smuzhiyun			compatible = "samsung,exynos-sysmmu";
955*4882a593Smuzhiyun			reg = <0x11A50000 0x1000>;
956*4882a593Smuzhiyun			interrupt-parent = <&combiner>;
957*4882a593Smuzhiyun			interrupts = <4 5>;
958*4882a593Smuzhiyun			clock-names = "sysmmu", "master";
959*4882a593Smuzhiyun			clocks = <&clock CLK_SMMU_FIMC3>, <&clock CLK_FIMC3>;
960*4882a593Smuzhiyun			power-domains = <&pd_cam>;
961*4882a593Smuzhiyun			#iommu-cells = <0>;
962*4882a593Smuzhiyun		};
963*4882a593Smuzhiyun
964*4882a593Smuzhiyun		sysmmu_jpeg: sysmmu@11a60000 {
965*4882a593Smuzhiyun			compatible = "samsung,exynos-sysmmu";
966*4882a593Smuzhiyun			reg = <0x11A60000 0x1000>;
967*4882a593Smuzhiyun			interrupt-parent = <&combiner>;
968*4882a593Smuzhiyun			interrupts = <4 6>;
969*4882a593Smuzhiyun			clock-names = "sysmmu", "master";
970*4882a593Smuzhiyun			clocks = <&clock CLK_SMMU_JPEG>, <&clock CLK_JPEG>;
971*4882a593Smuzhiyun			power-domains = <&pd_cam>;
972*4882a593Smuzhiyun			#iommu-cells = <0>;
973*4882a593Smuzhiyun		};
974*4882a593Smuzhiyun
975*4882a593Smuzhiyun		sysmmu_rotator: sysmmu@12a30000 {
976*4882a593Smuzhiyun			compatible = "samsung,exynos-sysmmu";
977*4882a593Smuzhiyun			reg = <0x12A30000 0x1000>;
978*4882a593Smuzhiyun			interrupt-parent = <&combiner>;
979*4882a593Smuzhiyun			interrupts = <5 0>;
980*4882a593Smuzhiyun			clock-names = "sysmmu", "master";
981*4882a593Smuzhiyun			clocks = <&clock CLK_SMMU_ROTATOR>,
982*4882a593Smuzhiyun				 <&clock CLK_ROTATOR>;
983*4882a593Smuzhiyun			#iommu-cells = <0>;
984*4882a593Smuzhiyun		};
985*4882a593Smuzhiyun
986*4882a593Smuzhiyun		sysmmu_fimd0: sysmmu@11e20000 {
987*4882a593Smuzhiyun			compatible = "samsung,exynos-sysmmu";
988*4882a593Smuzhiyun			reg = <0x11E20000 0x1000>;
989*4882a593Smuzhiyun			interrupt-parent = <&combiner>;
990*4882a593Smuzhiyun			interrupts = <5 2>;
991*4882a593Smuzhiyun			clock-names = "sysmmu", "master";
992*4882a593Smuzhiyun			clocks = <&clock CLK_SMMU_FIMD0>, <&clock CLK_FIMD0>;
993*4882a593Smuzhiyun			power-domains = <&pd_lcd0>;
994*4882a593Smuzhiyun			#iommu-cells = <0>;
995*4882a593Smuzhiyun		};
996*4882a593Smuzhiyun
997*4882a593Smuzhiyun		sss: sss@10830000 {
998*4882a593Smuzhiyun			compatible = "samsung,exynos4210-secss";
999*4882a593Smuzhiyun			reg = <0x10830000 0x300>;
1000*4882a593Smuzhiyun			interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>;
1001*4882a593Smuzhiyun			clocks = <&clock CLK_SSS>;
1002*4882a593Smuzhiyun			clock-names = "secss";
1003*4882a593Smuzhiyun		};
1004*4882a593Smuzhiyun
1005*4882a593Smuzhiyun		prng: rng@10830400 {
1006*4882a593Smuzhiyun			compatible = "samsung,exynos4-rng";
1007*4882a593Smuzhiyun			reg = <0x10830400 0x200>;
1008*4882a593Smuzhiyun			clocks = <&clock CLK_SSS>;
1009*4882a593Smuzhiyun			clock-names = "secss";
1010*4882a593Smuzhiyun		};
1011*4882a593Smuzhiyun	};
1012*4882a593Smuzhiyun};
1013*4882a593Smuzhiyun
1014*4882a593Smuzhiyun#include "exynos-syscon-restart.dtsi"
1015