xref: /linux/arch/arm/boot/dts/samsung/exynos4210.dtsi (revision a23e1966932464e1c5226cb9ac4ce1d5fc10ba22)
1cc4637f7SKrzysztof Kozlowski// SPDX-License-Identifier: GPL-2.0
20561ceabSThomas Abraham/*
30561ceabSThomas Abraham * Samsung's Exynos4210 SoC device tree source
40561ceabSThomas Abraham *
50561ceabSThomas Abraham * Copyright (c) 2010-2011 Samsung Electronics Co., Ltd.
60561ceabSThomas Abraham *		http://www.samsung.com
70561ceabSThomas Abraham * Copyright (c) 2010-2011 Linaro Ltd.
80561ceabSThomas Abraham *		www.linaro.org
90561ceabSThomas Abraham *
100561ceabSThomas Abraham * Samsung's Exynos4210 SoC device nodes are listed in this file. Exynos4210
11c31b11c3SKrzysztof Kozlowski * based board files can include this file and provide values for board specific
120561ceabSThomas Abraham * bindings.
130561ceabSThomas Abraham *
140561ceabSThomas Abraham * Note: This file does not include device nodes for all the controllers in
150561ceabSThomas Abraham * Exynos4210 SoC. As device tree coverage for Exynos4210 increases, additional
160561ceabSThomas Abraham * nodes can be added to this file.
170561ceabSThomas Abraham */
180561ceabSThomas Abraham
193799279fSPadmavathi Venna#include "exynos4.dtsi"
209843a223SLukasz Majewski#include "exynos4-cpu-thermal.dtsi"
210561ceabSThomas Abraham
220561ceabSThomas Abraham/ {
238bdb31b4SSachin Kamat	compatible = "samsung,exynos4210", "samsung,exynos4";
240561ceabSThomas Abraham
254980c39bSThomas Abraham	aliases {
2687711d8cSThomas Abraham		pinctrl0 = &pinctrl_0;
2787711d8cSThomas Abraham		pinctrl1 = &pinctrl_1;
2887711d8cSThomas Abraham		pinctrl2 = &pinctrl_2;
294980c39bSThomas Abraham	};
304980c39bSThomas Abraham
3109dd3739SKrzysztof Kozlowski	bus_acp: bus-acp {
3209dd3739SKrzysztof Kozlowski		compatible = "samsung,exynos-bus";
3309dd3739SKrzysztof Kozlowski		clocks = <&clock CLK_DIV_ACP>;
3409dd3739SKrzysztof Kozlowski		clock-names = "bus";
3509dd3739SKrzysztof Kozlowski		operating-points-v2 = <&bus_acp_opp_table>;
3609dd3739SKrzysztof Kozlowski		status = "disabled";
3709dd3739SKrzysztof Kozlowski
3809dd3739SKrzysztof Kozlowski		bus_acp_opp_table: opp-table {
3909dd3739SKrzysztof Kozlowski			compatible = "operating-points-v2";
4009dd3739SKrzysztof Kozlowski			opp-shared;
4109dd3739SKrzysztof Kozlowski
4209dd3739SKrzysztof Kozlowski			opp-134000000 {
4309dd3739SKrzysztof Kozlowski				opp-hz = /bits/ 64 <134000000>;
4409dd3739SKrzysztof Kozlowski			};
4509dd3739SKrzysztof Kozlowski			opp-160000000 {
4609dd3739SKrzysztof Kozlowski				opp-hz = /bits/ 64 <160000000>;
4709dd3739SKrzysztof Kozlowski			};
4809dd3739SKrzysztof Kozlowski			opp-200000000 {
4909dd3739SKrzysztof Kozlowski				opp-hz = /bits/ 64 <200000000>;
5009dd3739SKrzysztof Kozlowski			};
5109dd3739SKrzysztof Kozlowski		};
5209dd3739SKrzysztof Kozlowski	};
5309dd3739SKrzysztof Kozlowski
5409dd3739SKrzysztof Kozlowski	bus_display: bus-display {
5509dd3739SKrzysztof Kozlowski		compatible = "samsung,exynos-bus";
5609dd3739SKrzysztof Kozlowski		clocks = <&clock CLK_ACLK160>;
5709dd3739SKrzysztof Kozlowski		clock-names = "bus";
5809dd3739SKrzysztof Kozlowski		operating-points-v2 = <&bus_display_opp_table>;
5909dd3739SKrzysztof Kozlowski		status = "disabled";
6009dd3739SKrzysztof Kozlowski
6109dd3739SKrzysztof Kozlowski		bus_display_opp_table: opp-table {
6209dd3739SKrzysztof Kozlowski			compatible = "operating-points-v2";
6309dd3739SKrzysztof Kozlowski			opp-shared;
6409dd3739SKrzysztof Kozlowski
6509dd3739SKrzysztof Kozlowski			opp-100000000 {
6609dd3739SKrzysztof Kozlowski				opp-hz = /bits/ 64 <100000000>;
6709dd3739SKrzysztof Kozlowski			};
6809dd3739SKrzysztof Kozlowski			opp-134000000 {
6909dd3739SKrzysztof Kozlowski				opp-hz = /bits/ 64 <134000000>;
7009dd3739SKrzysztof Kozlowski			};
7109dd3739SKrzysztof Kozlowski			opp-160000000 {
7209dd3739SKrzysztof Kozlowski				opp-hz = /bits/ 64 <160000000>;
7309dd3739SKrzysztof Kozlowski			};
7409dd3739SKrzysztof Kozlowski		};
7509dd3739SKrzysztof Kozlowski	};
7609dd3739SKrzysztof Kozlowski
7709dd3739SKrzysztof Kozlowski	bus_dmc: bus-dmc {
7809dd3739SKrzysztof Kozlowski		compatible = "samsung,exynos-bus";
7909dd3739SKrzysztof Kozlowski		clocks = <&clock CLK_DIV_DMC>;
8009dd3739SKrzysztof Kozlowski		clock-names = "bus";
8109dd3739SKrzysztof Kozlowski		operating-points-v2 = <&bus_dmc_opp_table>;
8209dd3739SKrzysztof Kozlowski		status = "disabled";
8309dd3739SKrzysztof Kozlowski
8409dd3739SKrzysztof Kozlowski		bus_dmc_opp_table: opp-table {
8509dd3739SKrzysztof Kozlowski			compatible = "operating-points-v2";
8609dd3739SKrzysztof Kozlowski			opp-shared;
8709dd3739SKrzysztof Kozlowski
8809dd3739SKrzysztof Kozlowski			opp-134000000 {
8909dd3739SKrzysztof Kozlowski				opp-hz = /bits/ 64 <134000000>;
9009dd3739SKrzysztof Kozlowski				opp-microvolt = <1025000>;
9109dd3739SKrzysztof Kozlowski			};
9209dd3739SKrzysztof Kozlowski			opp-267000000 {
9309dd3739SKrzysztof Kozlowski				opp-hz = /bits/ 64 <267000000>;
9409dd3739SKrzysztof Kozlowski				opp-microvolt = <1050000>;
9509dd3739SKrzysztof Kozlowski			};
9609dd3739SKrzysztof Kozlowski			opp-400000000 {
9709dd3739SKrzysztof Kozlowski				opp-hz = /bits/ 64 <400000000>;
9809dd3739SKrzysztof Kozlowski				opp-microvolt = <1150000>;
9909dd3739SKrzysztof Kozlowski				opp-suspend;
10009dd3739SKrzysztof Kozlowski			};
10109dd3739SKrzysztof Kozlowski		};
10209dd3739SKrzysztof Kozlowski	};
10309dd3739SKrzysztof Kozlowski
10409dd3739SKrzysztof Kozlowski	bus_fsys: bus-fsys {
10509dd3739SKrzysztof Kozlowski		compatible = "samsung,exynos-bus";
10609dd3739SKrzysztof Kozlowski		clocks = <&clock CLK_ACLK133>;
10709dd3739SKrzysztof Kozlowski		clock-names = "bus";
10809dd3739SKrzysztof Kozlowski		operating-points-v2 = <&bus_fsys_opp_table>;
10909dd3739SKrzysztof Kozlowski		status = "disabled";
11009dd3739SKrzysztof Kozlowski
11109dd3739SKrzysztof Kozlowski		bus_fsys_opp_table: opp-table {
11209dd3739SKrzysztof Kozlowski			compatible = "operating-points-v2";
11309dd3739SKrzysztof Kozlowski			opp-shared;
11409dd3739SKrzysztof Kozlowski
11509dd3739SKrzysztof Kozlowski			opp-10000000 {
11609dd3739SKrzysztof Kozlowski				opp-hz = /bits/ 64 <10000000>;
11709dd3739SKrzysztof Kozlowski			};
11809dd3739SKrzysztof Kozlowski			opp-134000000 {
11909dd3739SKrzysztof Kozlowski				opp-hz = /bits/ 64 <134000000>;
12009dd3739SKrzysztof Kozlowski			};
12109dd3739SKrzysztof Kozlowski		};
12209dd3739SKrzysztof Kozlowski	};
12309dd3739SKrzysztof Kozlowski
12409dd3739SKrzysztof Kozlowski	bus_lcd0: bus-lcd0 {
12509dd3739SKrzysztof Kozlowski		compatible = "samsung,exynos-bus";
12609dd3739SKrzysztof Kozlowski		clocks = <&clock CLK_ACLK200>;
12709dd3739SKrzysztof Kozlowski		clock-names = "bus";
12809dd3739SKrzysztof Kozlowski		operating-points-v2 = <&bus_leftbus_opp_table>;
12909dd3739SKrzysztof Kozlowski		status = "disabled";
13009dd3739SKrzysztof Kozlowski	};
13109dd3739SKrzysztof Kozlowski
13209dd3739SKrzysztof Kozlowski	bus_leftbus: bus-leftbus {
13309dd3739SKrzysztof Kozlowski		compatible = "samsung,exynos-bus";
13409dd3739SKrzysztof Kozlowski		clocks = <&clock CLK_DIV_GDL>;
13509dd3739SKrzysztof Kozlowski		clock-names = "bus";
13609dd3739SKrzysztof Kozlowski		operating-points-v2 = <&bus_leftbus_opp_table>;
13709dd3739SKrzysztof Kozlowski		status = "disabled";
13809dd3739SKrzysztof Kozlowski	};
13909dd3739SKrzysztof Kozlowski
14009dd3739SKrzysztof Kozlowski	bus_mfc: bus-mfc {
14109dd3739SKrzysztof Kozlowski		compatible = "samsung,exynos-bus";
14209dd3739SKrzysztof Kozlowski		clocks = <&clock CLK_SCLK_MFC>;
14309dd3739SKrzysztof Kozlowski		clock-names = "bus";
14409dd3739SKrzysztof Kozlowski		operating-points-v2 = <&bus_leftbus_opp_table>;
14509dd3739SKrzysztof Kozlowski		status = "disabled";
14609dd3739SKrzysztof Kozlowski	};
14709dd3739SKrzysztof Kozlowski
14809dd3739SKrzysztof Kozlowski	bus_peri: bus-peri {
14909dd3739SKrzysztof Kozlowski		compatible = "samsung,exynos-bus";
15009dd3739SKrzysztof Kozlowski		clocks = <&clock CLK_ACLK100>;
15109dd3739SKrzysztof Kozlowski		clock-names = "bus";
15209dd3739SKrzysztof Kozlowski		operating-points-v2 = <&bus_peri_opp_table>;
15309dd3739SKrzysztof Kozlowski		status = "disabled";
15409dd3739SKrzysztof Kozlowski
15509dd3739SKrzysztof Kozlowski		bus_peri_opp_table: opp-table {
15609dd3739SKrzysztof Kozlowski			compatible = "operating-points-v2";
15709dd3739SKrzysztof Kozlowski			opp-shared;
15809dd3739SKrzysztof Kozlowski
15909dd3739SKrzysztof Kozlowski			opp-5000000 {
16009dd3739SKrzysztof Kozlowski				opp-hz = /bits/ 64 <5000000>;
16109dd3739SKrzysztof Kozlowski			};
16209dd3739SKrzysztof Kozlowski			opp-100000000 {
16309dd3739SKrzysztof Kozlowski				opp-hz = /bits/ 64 <100000000>;
16409dd3739SKrzysztof Kozlowski			};
16509dd3739SKrzysztof Kozlowski		};
16609dd3739SKrzysztof Kozlowski	};
16709dd3739SKrzysztof Kozlowski
16809dd3739SKrzysztof Kozlowski	bus_rightbus: bus-rightbus {
16909dd3739SKrzysztof Kozlowski		compatible = "samsung,exynos-bus";
17009dd3739SKrzysztof Kozlowski		clocks = <&clock CLK_DIV_GDR>;
17109dd3739SKrzysztof Kozlowski		clock-names = "bus";
17209dd3739SKrzysztof Kozlowski		operating-points-v2 = <&bus_leftbus_opp_table>;
17309dd3739SKrzysztof Kozlowski		status = "disabled";
17409dd3739SKrzysztof Kozlowski	};
17509dd3739SKrzysztof Kozlowski
176e540920cSBartlomiej Zolnierkiewicz	cpus {
177e540920cSBartlomiej Zolnierkiewicz		#address-cells = <1>;
178e540920cSBartlomiej Zolnierkiewicz		#size-cells = <0>;
179e540920cSBartlomiej Zolnierkiewicz
180900dd07dSKrzysztof Kozlowski		cpu-map {
181900dd07dSKrzysztof Kozlowski			cluster0 {
182900dd07dSKrzysztof Kozlowski				core0 {
183900dd07dSKrzysztof Kozlowski					cpu = <&cpu0>;
184900dd07dSKrzysztof Kozlowski				};
185900dd07dSKrzysztof Kozlowski				core1 {
186900dd07dSKrzysztof Kozlowski					cpu = <&cpu1>;
187900dd07dSKrzysztof Kozlowski				};
188900dd07dSKrzysztof Kozlowski			};
189900dd07dSKrzysztof Kozlowski		};
190900dd07dSKrzysztof Kozlowski
191bf4a0bedSLukasz Majewski		cpu0: cpu@900 {
192e540920cSBartlomiej Zolnierkiewicz			device_type = "cpu";
193e540920cSBartlomiej Zolnierkiewicz			compatible = "arm,cortex-a9";
194e540920cSBartlomiej Zolnierkiewicz			reg = <0x900>;
195300bde79SThomas Abraham			clocks = <&clock CLK_ARM_CLK>;
196300bde79SThomas Abraham			clock-names = "cpu";
197300bde79SThomas Abraham			clock-latency = <160000>;
198300bde79SThomas Abraham
199300bde79SThomas Abraham			operating-points = <
200300bde79SThomas Abraham				1200000 1250000
201300bde79SThomas Abraham				1000000 1150000
202300bde79SThomas Abraham				800000	1075000
203300bde79SThomas Abraham				500000	975000
204300bde79SThomas Abraham				400000	975000
205300bde79SThomas Abraham				200000	950000
206300bde79SThomas Abraham			>;
207bf4a0bedSLukasz Majewski			#cooling-cells = <2>; /* min followed by max */
208e540920cSBartlomiej Zolnierkiewicz		};
209e540920cSBartlomiej Zolnierkiewicz
210670734f5SViresh Kumar		cpu1: cpu@901 {
211e540920cSBartlomiej Zolnierkiewicz			device_type = "cpu";
212e540920cSBartlomiej Zolnierkiewicz			compatible = "arm,cortex-a9";
213e540920cSBartlomiej Zolnierkiewicz			reg = <0x901>;
214672f3319SViresh Kumar			clocks = <&clock CLK_ARM_CLK>;
215672f3319SViresh Kumar			clock-names = "cpu";
216672f3319SViresh Kumar			clock-latency = <160000>;
217672f3319SViresh Kumar
218672f3319SViresh Kumar			operating-points = <
219672f3319SViresh Kumar				1200000 1250000
220672f3319SViresh Kumar				1000000 1150000
221672f3319SViresh Kumar				800000	1075000
222672f3319SViresh Kumar				500000	975000
223672f3319SViresh Kumar				400000	975000
224672f3319SViresh Kumar				200000	950000
225672f3319SViresh Kumar			>;
226672f3319SViresh Kumar			#cooling-cells = <2>; /* min followed by max */
227e540920cSBartlomiej Zolnierkiewicz		};
228e540920cSBartlomiej Zolnierkiewicz	};
229e540920cSBartlomiej Zolnierkiewicz
23009dd3739SKrzysztof Kozlowski	bus_leftbus_opp_table: opp-table-0 {
23109dd3739SKrzysztof Kozlowski		compatible = "operating-points-v2";
23209dd3739SKrzysztof Kozlowski		opp-shared;
23309dd3739SKrzysztof Kozlowski
23409dd3739SKrzysztof Kozlowski		opp-100000000 {
23509dd3739SKrzysztof Kozlowski			opp-hz = /bits/ 64 <100000000>;
23609dd3739SKrzysztof Kozlowski		};
23709dd3739SKrzysztof Kozlowski		opp-160000000 {
23809dd3739SKrzysztof Kozlowski			opp-hz = /bits/ 64 <160000000>;
23909dd3739SKrzysztof Kozlowski		};
24009dd3739SKrzysztof Kozlowski		opp-200000000 {
24109dd3739SKrzysztof Kozlowski			opp-hz = /bits/ 64 <200000000>;
24209dd3739SKrzysztof Kozlowski			opp-suspend;
24309dd3739SKrzysztof Kozlowski		};
24409dd3739SKrzysztof Kozlowski	};
24509dd3739SKrzysztof Kozlowski
2469a8665abSMaciej Purski	soc: soc {
24756c126e8SKrzysztof Kozlowski		sysram: sram@2020000 {
248b3205deaSSachin Kamat			compatible = "mmio-sram";
249b3205deaSSachin Kamat			reg = <0x02020000 0x20000>;
250b3205deaSSachin Kamat			#address-cells = <1>;
251b3205deaSSachin Kamat			#size-cells = <1>;
252b3205deaSSachin Kamat			ranges = <0 0x02020000 0x20000>;
253b3205deaSSachin Kamat
254b6df5e2bSKrzysztof Kozlowski			smp-sram@0 {
255b3205deaSSachin Kamat				compatible = "samsung,exynos4210-sysram";
256b3205deaSSachin Kamat				reg = <0x0 0x1000>;
257b3205deaSSachin Kamat			};
258b3205deaSSachin Kamat
259b6df5e2bSKrzysztof Kozlowski			smp-sram@1f000 {
260b3205deaSSachin Kamat				compatible = "samsung,exynos4210-sysram-ns";
261b3205deaSSachin Kamat				reg = <0x1f000 0x1000>;
262b3205deaSSachin Kamat			};
263b3205deaSSachin Kamat		};
264b3205deaSSachin Kamat
265e39fc20fSKrzysztof Kozlowski		pd_lcd1: power-domain@10023ca0 {
26691d88f03STomasz Figa			compatible = "samsung,exynos4210-pd";
2679ca5a7ceSKrzysztof Kozlowski			reg = <0x10023ca0 0x20>;
2680da65870SMarek Szyprowski			#power-domain-cells = <0>;
26955d74adfSMarek Szyprowski			label = "LCD1";
27091d88f03STomasz Figa		};
27191d88f03STomasz Figa
272a184ea9fSAnand Moon		l2c: cache-controller@10502000 {
27356b60b8bSTomasz Figa			compatible = "arm,pl310-cache";
27456b60b8bSTomasz Figa			reg = <0x10502000 0x1000>;
27556b60b8bSTomasz Figa			cache-unified;
27656b60b8bSTomasz Figa			cache-level = <2>;
27791b440edSGuillaume Tucker			prefetch-data = <1>;
27891b440edSGuillaume Tucker			prefetch-instr = <1>;
27956b60b8bSTomasz Figa			arm,tag-latency = <2 2 1>;
28056b60b8bSTomasz Figa			arm,data-latency = <2 2 1>;
28156b60b8bSTomasz Figa		};
28256b60b8bSTomasz Figa
283f859a039SKrzysztof Kozlowski		mct: timer@10050000 {
284bbd9700aSThomas Abraham			compatible = "samsung,exynos4210-mct";
285bbd9700aSThomas Abraham			reg = <0x10050000 0x800>;
2861c75a78aSAndrzej Hajda			clocks = <&clock CLK_FIN_PLL>, <&clock CLK_MCT>;
2877ad34337SThomas Abraham			clock-names = "fin_pll", "mct";
28864cc3ea9SKrzysztof Kozlowski			interrupts-extended = <&gic GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>,
28964cc3ea9SKrzysztof Kozlowski					      <&gic GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>,
290d8304aa2SKrzysztof Kozlowski					      <&combiner 12 6>,
291d8304aa2SKrzysztof Kozlowski					      <&combiner 12 7>,
29264cc3ea9SKrzysztof Kozlowski					      <&gic GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>,
29364cc3ea9SKrzysztof Kozlowski					      <&gic GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
294bbd9700aSThomas Abraham		};
295bbd9700aSThomas Abraham
296bdc42353SKrzysztof Kozlowski		watchdog: watchdog@10060000 {
2977e93df35SKrzysztof Kozlowski			compatible = "samsung,s3c6410-wdt";
298bdc42353SKrzysztof Kozlowski			reg = <0x10060000 0x100>;
299bdc42353SKrzysztof Kozlowski			interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>;
300bdc42353SKrzysztof Kozlowski			clocks = <&clock CLK_WDT>;
301bdc42353SKrzysztof Kozlowski			clock-names = "watchdog";
302bdc42353SKrzysztof Kozlowski		};
303bdc42353SKrzysztof Kozlowski
304e7787aedSLee Jones		clock: clock-controller@10030000 {
305d8bafc87SThomas Abraham			compatible = "samsung,exynos4210-clock";
306d8bafc87SThomas Abraham			reg = <0x10030000 0x20000>;
307d8bafc87SThomas Abraham			#clock-cells = <1>;
308d8bafc87SThomas Abraham		};
309d8bafc87SThomas Abraham
31087711d8cSThomas Abraham		pinctrl_0: pinctrl@11400000 {
311b533c868SKukjin Kim			compatible = "samsung,exynos4210-pinctrl";
31287711d8cSThomas Abraham			reg = <0x11400000 0x1000>;
31374e2c958SKrzysztof Kozlowski			interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
31487711d8cSThomas Abraham		};
31587711d8cSThomas Abraham
31687711d8cSThomas Abraham		pinctrl_1: pinctrl@11000000 {
317b533c868SKukjin Kim			compatible = "samsung,exynos4210-pinctrl";
31887711d8cSThomas Abraham			reg = <0x11000000 0x1000>;
31974e2c958SKrzysztof Kozlowski			interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
32087711d8cSThomas Abraham
32187711d8cSThomas Abraham			wakup_eint: wakeup-interrupt-controller {
32287711d8cSThomas Abraham				compatible = "samsung,exynos4210-wakeup-eint";
32387711d8cSThomas Abraham				interrupt-parent = <&gic>;
32474e2c958SKrzysztof Kozlowski				interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
32587711d8cSThomas Abraham			};
32687711d8cSThomas Abraham		};
32787711d8cSThomas Abraham
3288dccafaaSRob Herring		pinctrl_2: pinctrl@3860000 {
329b533c868SKukjin Kim			compatible = "samsung,exynos4210-pinctrl";
33087711d8cSThomas Abraham			reg = <0x03860000 0x1000>;
33187711d8cSThomas Abraham		};
33287711d8cSThomas Abraham
3339c41221eSKrzysztof Kozlowski		g2d: g2d@12800000 {
33466d302acSSachin Kamat			compatible = "samsung,s5pv210-g2d";
33566d302acSSachin Kamat			reg = <0x12800000 0x1000>;
33674e2c958SKrzysztof Kozlowski			interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>;
3371c75a78aSAndrzej Hajda			clocks = <&clock CLK_SCLK_FIMG2D>, <&clock CLK_G2D>;
33837bf5796SSachin Kamat			clock-names = "sclk_fimg2d", "fimg2d";
33925cd01b2SMarek Szyprowski			power-domains = <&pd_lcd0>;
34071d3a9fbSMarek Szyprowski			iommus = <&sysmmu_g2d>;
34166d302acSSachin Kamat		};
34254a8896aSSylwester Nawrocki
3431c6831b4SKrzysztof Kozlowski		ppmu_acp: ppmu@10ae0000 {
34412ec7b34SKrzysztof Kozlowski			compatible = "samsung,exynos-ppmu";
34512ec7b34SKrzysztof Kozlowski			reg = <0x10ae0000 0x2000>;
34612ec7b34SKrzysztof Kozlowski			status = "disabled";
34712ec7b34SKrzysztof Kozlowski		};
34812ec7b34SKrzysztof Kozlowski
3491c6831b4SKrzysztof Kozlowski		ppmu_lcd1: ppmu@12240000 {
35030e0e476SChanwoo Choi			compatible = "samsung,exynos-ppmu";
35130e0e476SChanwoo Choi			reg = <0x12240000 0x2000>;
35230e0e476SChanwoo Choi			clocks = <&clock CLK_PPMULCD1>;
35330e0e476SChanwoo Choi			clock-names = "ppmu";
35430e0e476SChanwoo Choi			status = "disabled";
35530e0e476SChanwoo Choi		};
35671d3a9fbSMarek Szyprowski
3573be1ecf2SKrzysztof Kozlowski		sysmmu_g2d: sysmmu@12a20000 {
35871d3a9fbSMarek Szyprowski			compatible = "samsung,exynos-sysmmu";
3599ca5a7ceSKrzysztof Kozlowski			reg = <0x12a20000 0x1000>;
36071d3a9fbSMarek Szyprowski			interrupt-parent = <&combiner>;
36171d3a9fbSMarek Szyprowski			interrupts = <4 7>;
36271d3a9fbSMarek Szyprowski			clock-names = "sysmmu", "master";
36371d3a9fbSMarek Szyprowski			clocks = <&clock CLK_SMMU_G2D>, <&clock CLK_G2D>;
36471d3a9fbSMarek Szyprowski			power-domains = <&pd_lcd0>;
36571d3a9fbSMarek Szyprowski			#iommu-cells = <0>;
36671d3a9fbSMarek Szyprowski		};
36771d3a9fbSMarek Szyprowski
36871d3a9fbSMarek Szyprowski		sysmmu_fimd1: sysmmu@12220000 {
36971d3a9fbSMarek Szyprowski			compatible = "samsung,exynos-sysmmu";
37071d3a9fbSMarek Szyprowski			interrupt-parent = <&combiner>;
37171d3a9fbSMarek Szyprowski			reg = <0x12220000 0x1000>;
37271d3a9fbSMarek Szyprowski			interrupts = <5 3>;
37371d3a9fbSMarek Szyprowski			clock-names = "sysmmu", "master";
37471d3a9fbSMarek Szyprowski			clocks = <&clock CLK_SMMU_FIMD1>, <&clock CLK_FIMD1>;
37571d3a9fbSMarek Szyprowski			power-domains = <&pd_lcd1>;
37671d3a9fbSMarek Szyprowski			#iommu-cells = <0>;
37771d3a9fbSMarek Szyprowski		};
3780561ceabSThomas Abraham	};
3791708f560SKrzysztof Kozlowski};
380070bb0f0SKrzysztof Kozlowski
3811708f560SKrzysztof Kozlowski&cpu_alert0 {
3821708f560SKrzysztof Kozlowski	temperature = <85000>; /* millicelsius */
3831708f560SKrzysztof Kozlowski};
3841708f560SKrzysztof Kozlowski
3851708f560SKrzysztof Kozlowski&cpu_alert1 {
3861708f560SKrzysztof Kozlowski	temperature = <100000>; /* millicelsius */
3871708f560SKrzysztof Kozlowski};
3881708f560SKrzysztof Kozlowski
3891708f560SKrzysztof Kozlowski&cpu_alert2 {
3901708f560SKrzysztof Kozlowski	temperature = <110000>; /* millicelsius */
3911708f560SKrzysztof Kozlowski};
3921708f560SKrzysztof Kozlowski
3931708f560SKrzysztof Kozlowski&cpu_thermal {
394*ef399736SMateusz Majewski	/*
395*ef399736SMateusz Majewski	 * Exynos 4210 supports thermal interrupts, but only for the rising
396*ef399736SMateusz Majewski	 * threshold.  This means that polling is not needed for preventing
397*ef399736SMateusz Majewski	 * overheating, but only for decreasing cooling when possible. Hence we
398*ef399736SMateusz Majewski	 * poll with a high delay.  Ideally, we would disable polling for the
399*ef399736SMateusz Majewski	 * first trip point, but this isn't really possible without outrageous
400*ef399736SMateusz Majewski	 * hacks.
401*ef399736SMateusz Majewski	 */
402*ef399736SMateusz Majewski	polling-delay-passive = <5000>;
403*ef399736SMateusz Majewski	polling-delay = <5000>;
4049a8665abSMaciej Purski};
4059a8665abSMaciej Purski
406070bb0f0SKrzysztof Kozlowski&gic {
407070bb0f0SKrzysztof Kozlowski	cpu-offset = <0x8000>;
408070bb0f0SKrzysztof Kozlowski};
409070bb0f0SKrzysztof Kozlowski
410e030be47SMaciej Purski&camera {
411e030be47SMaciej Purski	clocks = <&clock CLK_SCLK_CAM0>, <&clock CLK_SCLK_CAM1>,
412e030be47SMaciej Purski		 <&clock CLK_PIXELASYNCM0>, <&clock CLK_PIXELASYNCM1>;
413e030be47SMaciej Purski	clock-names = "sclk_cam0", "sclk_cam1", "pxl_async0", "pxl_async1";
414e030be47SMaciej Purski};
415e030be47SMaciej Purski
416070bb0f0SKrzysztof Kozlowski&combiner {
417070bb0f0SKrzysztof Kozlowski	samsung,combiner-nr = <16>;
41874e2c958SKrzysztof Kozlowski	interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
41974e2c958SKrzysztof Kozlowski		     <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>,
42074e2c958SKrzysztof Kozlowski		     <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>,
42174e2c958SKrzysztof Kozlowski		     <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>,
42274e2c958SKrzysztof Kozlowski		     <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
42374e2c958SKrzysztof Kozlowski		     <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>,
42474e2c958SKrzysztof Kozlowski		     <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
42574e2c958SKrzysztof Kozlowski		     <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>,
42674e2c958SKrzysztof Kozlowski		     <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
42774e2c958SKrzysztof Kozlowski		     <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
42874e2c958SKrzysztof Kozlowski		     <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>,
42974e2c958SKrzysztof Kozlowski		     <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>,
43074e2c958SKrzysztof Kozlowski		     <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
43174e2c958SKrzysztof Kozlowski		     <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>,
43274e2c958SKrzysztof Kozlowski		     <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>,
43374e2c958SKrzysztof Kozlowski		     <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
434070bb0f0SKrzysztof Kozlowski};
435070bb0f0SKrzysztof Kozlowski
436e030be47SMaciej Purski&fimc_0 {
437e030be47SMaciej Purski	samsung,pix-limits = <4224 8192 1920 4224>;
438e030be47SMaciej Purski	samsung,mainscaler-ext;
439e030be47SMaciej Purski	samsung,cam-if;
440e030be47SMaciej Purski};
441e030be47SMaciej Purski
442e030be47SMaciej Purski&fimc_1 {
443e030be47SMaciej Purski	samsung,pix-limits = <4224 8192 1920 4224>;
444e030be47SMaciej Purski	samsung,mainscaler-ext;
445e030be47SMaciej Purski	samsung,cam-if;
446e030be47SMaciej Purski};
447e030be47SMaciej Purski
448e030be47SMaciej Purski&fimc_2 {
449e030be47SMaciej Purski	samsung,pix-limits = <4224 8192 1920 4224>;
450e030be47SMaciej Purski	samsung,mainscaler-ext;
451e030be47SMaciej Purski	samsung,lcd-wb;
452e030be47SMaciej Purski};
453e030be47SMaciej Purski
454e030be47SMaciej Purski&fimc_3 {
455e030be47SMaciej Purski	samsung,pix-limits = <1920 8192 1366 1920>;
456e030be47SMaciej Purski	samsung,rotators = <0>;
457e030be47SMaciej Purski	samsung,mainscaler-ext;
458e030be47SMaciej Purski	samsung,lcd-wb;
459e030be47SMaciej Purski};
460e030be47SMaciej Purski
46113efd80aSKrzysztof Kozlowski&gpu {
46247f28b41SMarek Szyprowski	interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>,
46347f28b41SMarek Szyprowski		     <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>,
46447f28b41SMarek Szyprowski		     <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>,
46547f28b41SMarek Szyprowski		     <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>,
46647f28b41SMarek Szyprowski		     <GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>,
46747f28b41SMarek Szyprowski		     <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>,
46847f28b41SMarek Szyprowski		     <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>,
46947f28b41SMarek Szyprowski		     <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>,
47047f28b41SMarek Szyprowski		     <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>,
47147f28b41SMarek Szyprowski		     <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>;
47247f28b41SMarek Szyprowski	interrupt-names = "gp",
47347f28b41SMarek Szyprowski			  "gpmmu",
47447f28b41SMarek Szyprowski			  "pp0",
47547f28b41SMarek Szyprowski			  "ppmmu0",
47647f28b41SMarek Szyprowski			  "pp1",
47747f28b41SMarek Szyprowski			  "ppmmu1",
47847f28b41SMarek Szyprowski			  "pp2",
47947f28b41SMarek Szyprowski			  "ppmmu2",
48047f28b41SMarek Szyprowski			  "pp3",
48147f28b41SMarek Szyprowski			  "ppmmu3";
48213efd80aSKrzysztof Kozlowski	operating-points-v2 = <&gpu_opp_table>;
48313efd80aSKrzysztof Kozlowski
4841c6831b4SKrzysztof Kozlowski	gpu_opp_table: opp-table {
48513efd80aSKrzysztof Kozlowski		compatible = "operating-points-v2";
48613efd80aSKrzysztof Kozlowski
48713efd80aSKrzysztof Kozlowski		opp-160000000 {
48813efd80aSKrzysztof Kozlowski			opp-hz = /bits/ 64 <160000000>;
48913efd80aSKrzysztof Kozlowski			opp-microvolt = <950000>;
49013efd80aSKrzysztof Kozlowski		};
49113efd80aSKrzysztof Kozlowski		opp-267000000 {
49213efd80aSKrzysztof Kozlowski			opp-hz = /bits/ 64 <267000000>;
49313efd80aSKrzysztof Kozlowski			opp-microvolt = <1050000>;
49413efd80aSKrzysztof Kozlowski		};
49513efd80aSKrzysztof Kozlowski	};
49613efd80aSKrzysztof Kozlowski};
49713efd80aSKrzysztof Kozlowski
498f99e9a77SMarek Szyprowski&mdma1 {
499f99e9a77SMarek Szyprowski	power-domains = <&pd_lcd0>;
500f99e9a77SMarek Szyprowski};
501f99e9a77SMarek Szyprowski
502e030be47SMaciej Purski&mixer {
503e030be47SMaciej Purski	clock-names = "mixer", "hdmi", "sclk_hdmi", "vp", "mout_mixer",
504e030be47SMaciej Purski		      "sclk_mixer";
505e030be47SMaciej Purski	clocks = <&clock CLK_MIXER>, <&clock CLK_HDMI>,
506e030be47SMaciej Purski		 <&clock CLK_SCLK_HDMI>, <&clock CLK_VP>,
507e030be47SMaciej Purski		 <&clock CLK_MOUT_MIXER>, <&clock CLK_SCLK_MIXER>;
508e030be47SMaciej Purski};
509e030be47SMaciej Purski
5106da4e11cSKrzysztof Kozlowski&pmu {
5116da4e11cSKrzysztof Kozlowski	interrupts = <2 2>, <3 2>;
5126da4e11cSKrzysztof Kozlowski	interrupt-affinity = <&cpu0>, <&cpu1>;
5136da4e11cSKrzysztof Kozlowski	status = "okay";
5146da4e11cSKrzysztof Kozlowski};
5156da4e11cSKrzysztof Kozlowski
516070bb0f0SKrzysztof Kozlowski&pmu_system_controller {
517070bb0f0SKrzysztof Kozlowski	clock-names = "clkout0", "clkout1", "clkout2", "clkout3",
518070bb0f0SKrzysztof Kozlowski			"clkout4", "clkout8", "clkout9";
519070bb0f0SKrzysztof Kozlowski	clocks = <&clock CLK_OUT_DMC>, <&clock CLK_OUT_TOP>,
520070bb0f0SKrzysztof Kozlowski		<&clock CLK_OUT_LEFTBUS>, <&clock CLK_OUT_RIGHTBUS>,
521070bb0f0SKrzysztof Kozlowski		<&clock CLK_OUT_CPU>, <&clock CLK_XXTI>, <&clock CLK_XUSBXTI>;
522070bb0f0SKrzysztof Kozlowski	#clock-cells = <1>;
523070bb0f0SKrzysztof Kozlowski};
5240c7e90b5SMarek Szyprowski
5250c7e90b5SMarek Szyprowski&rotator {
5260c7e90b5SMarek Szyprowski	power-domains = <&pd_lcd0>;
5270c7e90b5SMarek Szyprowski};
5283398a187SMarek Szyprowski
5293398a187SMarek Szyprowski&sysmmu_rotator {
5303398a187SMarek Szyprowski	power-domains = <&pd_lcd0>;
5313398a187SMarek Szyprowski};
53288c166ceSMaciej Purski
533e030be47SMaciej Purski&tmu {
534e030be47SMaciej Purski	compatible = "samsung,exynos4210-tmu";
535e030be47SMaciej Purski	clocks = <&clock CLK_TMU_APBIF>;
536e030be47SMaciej Purski	clock-names = "tmu_apbif";
537e030be47SMaciej Purski};
538e030be47SMaciej Purski
53988c166ceSMaciej Purski#include "exynos4210-pinctrl.dtsi"
540