Skip to content

Commit c9cf996

Browse files
committed
ARM: dts: exynos: Move common Exynos5410/542x/5800 nodes to new DTSI
The Exynos5410/542x/5800 are very similar designs. Create a new DTSI with common nodes to remove DTS duplication. Although currently only MCT and SysRAM are shared but in future more nodes will be added to the common file. The patch should not have functional impact. Signed-off-by: Krzysztof Kozlowski <[email protected]> Reviewed-by: Javier Martinez Canillas <[email protected]> Tested-by: Javier Martinez Canillas <[email protected]>
1 parent 3f2f95f commit c9cf996

File tree

3 files changed

+80
-97
lines changed

3 files changed

+80
-97
lines changed

arch/arm/boot/dts/exynos5410.dtsi

Lines changed: 6 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,7 @@
1313
* published by the Free Software Foundation.
1414
*/
1515

16-
#include "skeleton.dtsi"
17-
#include "exynos5.dtsi"
16+
#include "exynos54xx.dtsi"
1817
#include "exynos-syscon-restart.dtsi"
1918
#include <dt-bindings/clock/exynos5410.h>
2019

@@ -76,53 +75,6 @@
7675
#clock-cells = <1>;
7776
};
7877

79-
mct: mct@101C0000 {
80-
compatible = "samsung,exynos4210-mct";
81-
reg = <0x101C0000 0xB00>;
82-
interrupt-parent = <&interrupt_map>;
83-
interrupts = <0>, <1>, <2>, <3>,
84-
<4>, <5>, <6>, <7>,
85-
<8>, <9>, <10>, <11>;
86-
clocks = <&fin_pll>, <&clock CLK_MCT>;
87-
clock-names = "fin_pll", "mct";
88-
89-
interrupt_map: interrupt-map {
90-
#interrupt-cells = <1>;
91-
#address-cells = <0>;
92-
#size-cells = <0>;
93-
interrupt-map = <0 &combiner 23 3>,
94-
<1 &combiner 23 4>,
95-
<2 &combiner 25 2>,
96-
<3 &combiner 25 3>,
97-
<4 &gic 0 120 0>,
98-
<5 &gic 0 121 0>,
99-
<6 &gic 0 122 0>,
100-
<7 &gic 0 123 0>,
101-
<8 &gic 0 128 0>,
102-
<9 &gic 0 129 0>,
103-
<10 &gic 0 130 0>,
104-
<11 &gic 0 131 0>;
105-
};
106-
};
107-
108-
sysram@02020000 {
109-
compatible = "mmio-sram";
110-
reg = <0x02020000 0x54000>;
111-
#address-cells = <1>;
112-
#size-cells = <1>;
113-
ranges = <0 0x02020000 0x54000>;
114-
115-
smp-sysram@0 {
116-
compatible = "samsung,exynos4210-sysram";
117-
reg = <0x0 0x1000>;
118-
};
119-
120-
smp-sysram@53000 {
121-
compatible = "samsung,exynos4210-sysram-ns";
122-
reg = <0x53000 0x1000>;
123-
};
124-
};
125-
12678
clock: clock-controller@10010000 {
12779
compatible = "samsung,exynos5410-clock";
12880
reg = <0x10010000 0x30000>;
@@ -197,6 +149,11 @@
197149
};
198150
};
199151

152+
&mct {
153+
clocks = <&fin_pll>, <&clock CLK_MCT>;
154+
clock-names = "fin_pll", "mct";
155+
};
156+
200157
&pwm {
201158
clocks = <&clock CLK_PWM>;
202159
clock-names = "timers";

arch/arm/boot/dts/exynos5420.dtsi

Lines changed: 6 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,8 @@
1313
* published by the Free Software Foundation.
1414
*/
1515

16+
#include "exynos54xx.dtsi"
1617
#include <dt-bindings/clock/exynos5420.h>
17-
#include "exynos5.dtsi"
18-
1918
#include <dt-bindings/clock/exynos-audss-clk.h>
2019

2120
/ {
@@ -181,24 +180,6 @@
181180
};
182181
};
183182

184-
sysram@02020000 {
185-
compatible = "mmio-sram";
186-
reg = <0x02020000 0x54000>;
187-
#address-cells = <1>;
188-
#size-cells = <1>;
189-
ranges = <0 0x02020000 0x54000>;
190-
191-
smp-sysram@0 {
192-
compatible = "samsung,exynos4210-sysram";
193-
reg = <0x0 0x1000>;
194-
};
195-
196-
smp-sysram@53000 {
197-
compatible = "samsung,exynos4210-sysram-ns";
198-
reg = <0x53000 0x1000>;
199-
};
200-
};
201-
202183
clock: clock-controller@10010000 {
203184
compatible = "samsung,exynos5420-clock";
204185
reg = <0x10010000 0x30000>;
@@ -261,34 +242,6 @@
261242
status = "disabled";
262243
};
263244

264-
mct: mct@101C0000 {
265-
compatible = "samsung,exynos4210-mct";
266-
reg = <0x101C0000 0xB00>;
267-
interrupt-parent = <&mct_map>;
268-
interrupts = <0>, <1>, <2>, <3>, <4>, <5>, <6>, <7>,
269-
<8>, <9>, <10>, <11>;
270-
clocks = <&clock CLK_FIN_PLL>, <&clock CLK_MCT>;
271-
clock-names = "fin_pll", "mct";
272-
273-
mct_map: mct-map {
274-
#interrupt-cells = <1>;
275-
#address-cells = <0>;
276-
#size-cells = <0>;
277-
interrupt-map = <0 &combiner 23 3>,
278-
<1 &combiner 23 4>,
279-
<2 &combiner 25 2>,
280-
<3 &combiner 25 3>,
281-
<4 &gic 0 120 0>,
282-
<5 &gic 0 121 0>,
283-
<6 &gic 0 122 0>,
284-
<7 &gic 0 123 0>,
285-
<8 &gic 0 128 0>,
286-
<9 &gic 0 129 0>,
287-
<10 &gic 0 130 0>,
288-
<11 &gic 0 131 0>;
289-
};
290-
};
291-
292245
nocp_mem0_0: nocp@10CA1000 {
293246
compatible = "samsung,exynos5420-nocp";
294247
reg = <0x10CA1000 0x200>;
@@ -1570,6 +1523,11 @@
15701523
pinctrl-0 = <&i2c3_bus>;
15711524
};
15721525

1526+
&mct {
1527+
clocks = <&clock CLK_FIN_PLL>, <&clock CLK_MCT>;
1528+
clock-names = "fin_pll", "mct";
1529+
};
1530+
15731531
&pwm {
15741532
clocks = <&clock CLK_PWM>;
15751533
clock-names = "timers";

arch/arm/boot/dts/exynos54xx.dtsi

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
/*
2+
* Samsung's Exynos54xx SoC series common device tree source
3+
*
4+
* Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
5+
* http://www.samsung.com
6+
* Copyright (c) 2016 Krzysztof Kozlowski
7+
*
8+
* Device nodes common for Samsung Exynos5410/5420/5422/5800. Specific
9+
* Exynos 54xx SoCs should include this file and customize it further
10+
* (e.g. with clocks).
11+
*
12+
* This program is free software; you can redistribute it and/or modify
13+
* it under the terms of the GNU General Public License version 2 as
14+
* published by the Free Software Foundation.
15+
*/
16+
17+
#include "skeleton.dtsi"
18+
#include "exynos5.dtsi"
19+
20+
/ {
21+
compatible = "samsung,exynos5";
22+
23+
soc: soc {
24+
sysram@02020000 {
25+
compatible = "mmio-sram";
26+
reg = <0x02020000 0x54000>;
27+
#address-cells = <1>;
28+
#size-cells = <1>;
29+
ranges = <0 0x02020000 0x54000>;
30+
31+
smp-sysram@0 {
32+
compatible = "samsung,exynos4210-sysram";
33+
reg = <0x0 0x1000>;
34+
};
35+
36+
smp-sysram@53000 {
37+
compatible = "samsung,exynos4210-sysram-ns";
38+
reg = <0x53000 0x1000>;
39+
};
40+
};
41+
42+
mct: mct@101c0000 {
43+
compatible = "samsung,exynos4210-mct";
44+
reg = <0x101c0000 0xb00>;
45+
interrupt-parent = <&mct_map>;
46+
interrupts = <0>, <1>, <2>, <3>, <4>, <5>, <6>, <7>,
47+
<8>, <9>, <10>, <11>;
48+
49+
mct_map: mct-map {
50+
#interrupt-cells = <1>;
51+
#address-cells = <0>;
52+
#size-cells = <0>;
53+
interrupt-map = <0 &combiner 23 3>,
54+
<1 &combiner 23 4>,
55+
<2 &combiner 25 2>,
56+
<3 &combiner 25 3>,
57+
<4 &gic 0 120 0>,
58+
<5 &gic 0 121 0>,
59+
<6 &gic 0 122 0>,
60+
<7 &gic 0 123 0>,
61+
<8 &gic 0 128 0>,
62+
<9 &gic 0 129 0>,
63+
<10 &gic 0 130 0>,
64+
<11 &gic 0 131 0>;
65+
};
66+
};
67+
};
68+
};

0 commit comments

Comments
 (0)