1 // SPDX-License-Identifier: GPL-2.0
3 * Samsung's Exynos4210 SoC device tree source
5 * Copyright (c) 2010-2011 Samsung Electronics Co., Ltd.
6 * http://www.samsung.com
7 * Copyright (c) 2010-2011 Linaro Ltd.
10 * Samsung's Exynos4210 SoC device nodes are listed in this file. Exynos4210
11 * based board files can include this file and provide values for board specific
14 * Note: This file does not include device nodes for all the controllers in
15 * Exynos4210 SoC. As device tree coverage for Exynos4210 increases, additional
16 * nodes can be added to this file.
19 #include "exynos4.dtsi"
20 #include "exynos4-cpu-thermal.dtsi"
23 compatible = "samsung,exynos4210", "samsung,exynos4";
26 pinctrl0 = &pinctrl_0;
27 pinctrl1 = &pinctrl_1;
28 pinctrl2 = &pinctrl_2;
37 compatible = "arm,cortex-a9";
39 clocks = <&clock CLK_ARM_CLK>;
41 clock-latency = <160000>;
51 #cooling-cells = <2>; /* min followed by max */
56 compatible = "arm,cortex-a9";
58 clocks = <&clock CLK_ARM_CLK>;
60 clock-latency = <160000>;
70 #cooling-cells = <2>; /* min followed by max */
75 sysram: sram@2020000 {
76 compatible = "mmio-sram";
77 reg = <0x02020000 0x20000>;
80 ranges = <0 0x02020000 0x20000>;
83 compatible = "samsung,exynos4210-sysram";
88 compatible = "samsung,exynos4210-sysram-ns";
89 reg = <0x1f000 0x1000>;
93 pd_lcd1: power-domain@10023ca0 {
94 compatible = "samsung,exynos4210-pd";
95 reg = <0x10023CA0 0x20>;
96 #power-domain-cells = <0>;
100 l2c: cache-controller@10502000 {
101 compatible = "arm,pl310-cache";
102 reg = <0x10502000 0x1000>;
106 prefetch-instr = <1>;
107 arm,tag-latency = <2 2 1>;
108 arm,data-latency = <2 2 1>;
111 mct: timer@10050000 {
112 compatible = "samsung,exynos4210-mct";
113 reg = <0x10050000 0x800>;
114 clocks = <&clock CLK_FIN_PLL>, <&clock CLK_MCT>;
115 clock-names = "fin_pll", "mct";
116 interrupts-extended = <&gic GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>,
117 <&gic GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>,
120 <&gic GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>,
121 <&gic GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
124 watchdog: watchdog@10060000 {
125 compatible = "samsung,s3c6410-wdt";
126 reg = <0x10060000 0x100>;
127 interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>;
128 clocks = <&clock CLK_WDT>;
129 clock-names = "watchdog";
132 clock: clock-controller@10030000 {
133 compatible = "samsung,exynos4210-clock";
134 reg = <0x10030000 0x20000>;
138 pinctrl_0: pinctrl@11400000 {
139 compatible = "samsung,exynos4210-pinctrl";
140 reg = <0x11400000 0x1000>;
141 interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
144 pinctrl_1: pinctrl@11000000 {
145 compatible = "samsung,exynos4210-pinctrl";
146 reg = <0x11000000 0x1000>;
147 interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
149 wakup_eint: wakeup-interrupt-controller {
150 compatible = "samsung,exynos4210-wakeup-eint";
151 interrupt-parent = <&gic>;
152 interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
156 pinctrl_2: pinctrl@3860000 {
157 compatible = "samsung,exynos4210-pinctrl";
158 reg = <0x03860000 0x1000>;
162 compatible = "samsung,s5pv210-g2d";
163 reg = <0x12800000 0x1000>;
164 interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>;
165 clocks = <&clock CLK_SCLK_FIMG2D>, <&clock CLK_G2D>;
166 clock-names = "sclk_fimg2d", "fimg2d";
167 power-domains = <&pd_lcd0>;
168 iommus = <&sysmmu_g2d>;
171 ppmu_acp: ppmu@10ae0000 {
172 compatible = "samsung,exynos-ppmu";
173 reg = <0x10ae0000 0x2000>;
177 ppmu_lcd1: ppmu@12240000 {
178 compatible = "samsung,exynos-ppmu";
179 reg = <0x12240000 0x2000>;
180 clocks = <&clock CLK_PPMULCD1>;
181 clock-names = "ppmu";
185 sysmmu_g2d: sysmmu@12a20000 {
186 compatible = "samsung,exynos-sysmmu";
187 reg = <0x12A20000 0x1000>;
188 interrupt-parent = <&combiner>;
190 clock-names = "sysmmu", "master";
191 clocks = <&clock CLK_SMMU_G2D>, <&clock CLK_G2D>;
192 power-domains = <&pd_lcd0>;
196 sysmmu_fimd1: sysmmu@12220000 {
197 compatible = "samsung,exynos-sysmmu";
198 interrupt-parent = <&combiner>;
199 reg = <0x12220000 0x1000>;
201 clock-names = "sysmmu", "master";
202 clocks = <&clock CLK_SMMU_FIMD1>, <&clock CLK_FIMD1>;
203 power-domains = <&pd_lcd1>;
208 compatible = "samsung,exynos-bus";
209 clocks = <&clock CLK_DIV_DMC>;
211 operating-points-v2 = <&bus_dmc_opp_table>;
216 compatible = "samsung,exynos-bus";
217 clocks = <&clock CLK_DIV_ACP>;
219 operating-points-v2 = <&bus_acp_opp_table>;
224 compatible = "samsung,exynos-bus";
225 clocks = <&clock CLK_ACLK100>;
227 operating-points-v2 = <&bus_peri_opp_table>;
232 compatible = "samsung,exynos-bus";
233 clocks = <&clock CLK_ACLK133>;
235 operating-points-v2 = <&bus_fsys_opp_table>;
239 bus_display: bus-display {
240 compatible = "samsung,exynos-bus";
241 clocks = <&clock CLK_ACLK160>;
243 operating-points-v2 = <&bus_display_opp_table>;
248 compatible = "samsung,exynos-bus";
249 clocks = <&clock CLK_ACLK200>;
251 operating-points-v2 = <&bus_leftbus_opp_table>;
255 bus_leftbus: bus-leftbus {
256 compatible = "samsung,exynos-bus";
257 clocks = <&clock CLK_DIV_GDL>;
259 operating-points-v2 = <&bus_leftbus_opp_table>;
263 bus_rightbus: bus-rightbus {
264 compatible = "samsung,exynos-bus";
265 clocks = <&clock CLK_DIV_GDR>;
267 operating-points-v2 = <&bus_leftbus_opp_table>;
272 compatible = "samsung,exynos-bus";
273 clocks = <&clock CLK_SCLK_MFC>;
275 operating-points-v2 = <&bus_leftbus_opp_table>;
279 bus_dmc_opp_table: opp-table1 {
280 compatible = "operating-points-v2";
284 opp-hz = /bits/ 64 <134000000>;
285 opp-microvolt = <1025000>;
288 opp-hz = /bits/ 64 <267000000>;
289 opp-microvolt = <1050000>;
292 opp-hz = /bits/ 64 <400000000>;
293 opp-microvolt = <1150000>;
298 bus_acp_opp_table: opp-table2 {
299 compatible = "operating-points-v2";
303 opp-hz = /bits/ 64 <134000000>;
306 opp-hz = /bits/ 64 <160000000>;
309 opp-hz = /bits/ 64 <200000000>;
313 bus_peri_opp_table: opp-table3 {
314 compatible = "operating-points-v2";
318 opp-hz = /bits/ 64 <5000000>;
321 opp-hz = /bits/ 64 <100000000>;
325 bus_fsys_opp_table: opp-table4 {
326 compatible = "operating-points-v2";
330 opp-hz = /bits/ 64 <10000000>;
333 opp-hz = /bits/ 64 <134000000>;
337 bus_display_opp_table: opp-table5 {
338 compatible = "operating-points-v2";
342 opp-hz = /bits/ 64 <100000000>;
345 opp-hz = /bits/ 64 <134000000>;
348 opp-hz = /bits/ 64 <160000000>;
352 bus_leftbus_opp_table: opp-table6 {
353 compatible = "operating-points-v2";
357 opp-hz = /bits/ 64 <100000000>;
360 opp-hz = /bits/ 64 <160000000>;
363 opp-hz = /bits/ 64 <200000000>;
371 temperature = <85000>; /* millicelsius */
375 temperature = <100000>; /* millicelsius */
379 temperature = <110000>; /* millicelsius */
383 polling-delay-passive = <0>;
385 thermal-sensors = <&tmu 0>;
389 cpu-offset = <0x8000>;
393 clocks = <&clock CLK_SCLK_CAM0>, <&clock CLK_SCLK_CAM1>,
394 <&clock CLK_PIXELASYNCM0>, <&clock CLK_PIXELASYNCM1>;
395 clock-names = "sclk_cam0", "sclk_cam1", "pxl_async0", "pxl_async1";
399 samsung,combiner-nr = <16>;
400 interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
401 <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>,
402 <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>,
403 <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>,
404 <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
405 <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>,
406 <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
407 <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>,
408 <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
409 <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
410 <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>,
411 <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>,
412 <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
413 <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>,
414 <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>,
415 <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
419 samsung,pix-limits = <4224 8192 1920 4224>;
420 samsung,mainscaler-ext;
425 samsung,pix-limits = <4224 8192 1920 4224>;
426 samsung,mainscaler-ext;
431 samsung,pix-limits = <4224 8192 1920 4224>;
432 samsung,mainscaler-ext;
437 samsung,pix-limits = <1920 8192 1366 1920>;
438 samsung,rotators = <0>;
439 samsung,mainscaler-ext;
444 interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>,
445 <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>,
446 <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>,
447 <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>,
448 <GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>,
449 <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>,
450 <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>,
451 <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>,
452 <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>,
453 <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>;
454 interrupt-names = "gp",
464 operating-points-v2 = <&gpu_opp_table>;
466 gpu_opp_table: opp-table {
467 compatible = "operating-points-v2";
470 opp-hz = /bits/ 64 <160000000>;
471 opp-microvolt = <950000>;
474 opp-hz = /bits/ 64 <267000000>;
475 opp-microvolt = <1050000>;
481 power-domains = <&pd_lcd0>;
485 clock-names = "mixer", "hdmi", "sclk_hdmi", "vp", "mout_mixer",
487 clocks = <&clock CLK_MIXER>, <&clock CLK_HDMI>,
488 <&clock CLK_SCLK_HDMI>, <&clock CLK_VP>,
489 <&clock CLK_MOUT_MIXER>, <&clock CLK_SCLK_MIXER>;
493 interrupts = <2 2>, <3 2>;
494 interrupt-affinity = <&cpu0>, <&cpu1>;
498 &pmu_system_controller {
499 clock-names = "clkout0", "clkout1", "clkout2", "clkout3",
500 "clkout4", "clkout8", "clkout9";
501 clocks = <&clock CLK_OUT_DMC>, <&clock CLK_OUT_TOP>,
502 <&clock CLK_OUT_LEFTBUS>, <&clock CLK_OUT_RIGHTBUS>,
503 <&clock CLK_OUT_CPU>, <&clock CLK_XXTI>, <&clock CLK_XUSBXTI>;
508 power-domains = <&pd_lcd0>;
512 power-domains = <&pd_lcd0>;
516 compatible = "samsung,exynos4210-tmu";
517 clocks = <&clock CLK_TMU_APBIF>;
518 clock-names = "tmu_apbif";
519 samsung,tmu_gain = <15>;
520 samsung,tmu_reference_voltage = <7>;
523 #include "exynos4210-pinctrl.dtsi"