Loading...
1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Samsung Exynos5422 SoC cpu device tree source
4 *
5 * Copyright (c) 2015 Samsung Electronics Co., Ltd.
6 * http://www.samsung.com
7 *
8 * This file provides desired ordering for Exynos5422: CPU[0123] being the A7.
9 *
10 * The Exynos5420, 5422 and 5800 actually share the same CPU configuration
11 * but particular boards choose different booting order.
12 *
13 * Exynos5420 and Exynos5800 always boot from Cortex-A15. On Exynos5422
14 * booting cluster (big or LITTLE) is chosen by IROM code by reading
15 * the gpg2-1 GPIO. By default all Exynos5422 based boards choose booting
16 * from the LITTLE: Cortex-A7.
17 */
18
19/ {
20 cpus {
21 #address-cells = <1>;
22 #size-cells = <0>;
23
24 cpu-map {
25 cluster0 {
26 core0 {
27 cpu = <&cpu0>;
28 };
29 core1 {
30 cpu = <&cpu1>;
31 };
32 core2 {
33 cpu = <&cpu2>;
34 };
35 core3 {
36 cpu = <&cpu3>;
37 };
38 };
39
40 cluster1 {
41 core0 {
42 cpu = <&cpu4>;
43 };
44 core1 {
45 cpu = <&cpu5>;
46 };
47 core2 {
48 cpu = <&cpu6>;
49 };
50 core3 {
51 cpu = <&cpu7>;
52 };
53 };
54 };
55
56 cpu0: cpu@100 {
57 device_type = "cpu";
58 compatible = "arm,cortex-a7";
59 reg = <0x100>;
60 clocks = <&clock CLK_KFC_CLK>;
61 clock-frequency = <1000000000>;
62 cci-control-port = <&cci_control0>;
63 operating-points-v2 = <&cluster_a7_opp_table>;
64 #cooling-cells = <2>; /* min followed by max */
65 capacity-dmips-mhz = <539>;
66 dynamic-power-coefficient = <90>;
67 };
68
69 cpu1: cpu@101 {
70 device_type = "cpu";
71 compatible = "arm,cortex-a7";
72 reg = <0x101>;
73 clocks = <&clock CLK_KFC_CLK>;
74 clock-frequency = <1000000000>;
75 cci-control-port = <&cci_control0>;
76 operating-points-v2 = <&cluster_a7_opp_table>;
77 #cooling-cells = <2>; /* min followed by max */
78 capacity-dmips-mhz = <539>;
79 dynamic-power-coefficient = <90>;
80 };
81
82 cpu2: cpu@102 {
83 device_type = "cpu";
84 compatible = "arm,cortex-a7";
85 reg = <0x102>;
86 clocks = <&clock CLK_KFC_CLK>;
87 clock-frequency = <1000000000>;
88 cci-control-port = <&cci_control0>;
89 operating-points-v2 = <&cluster_a7_opp_table>;
90 #cooling-cells = <2>; /* min followed by max */
91 capacity-dmips-mhz = <539>;
92 dynamic-power-coefficient = <90>;
93 };
94
95 cpu3: cpu@103 {
96 device_type = "cpu";
97 compatible = "arm,cortex-a7";
98 reg = <0x103>;
99 clocks = <&clock CLK_KFC_CLK>;
100 clock-frequency = <1000000000>;
101 cci-control-port = <&cci_control0>;
102 operating-points-v2 = <&cluster_a7_opp_table>;
103 #cooling-cells = <2>; /* min followed by max */
104 capacity-dmips-mhz = <539>;
105 dynamic-power-coefficient = <90>;
106 };
107
108 cpu4: cpu@0 {
109 device_type = "cpu";
110 compatible = "arm,cortex-a15";
111 reg = <0x0>;
112 clocks = <&clock CLK_ARM_CLK>;
113 clock-frequency = <1800000000>;
114 cci-control-port = <&cci_control1>;
115 operating-points-v2 = <&cluster_a15_opp_table>;
116 #cooling-cells = <2>; /* min followed by max */
117 capacity-dmips-mhz = <1024>;
118 dynamic-power-coefficient = <310>;
119 };
120
121 cpu5: cpu@1 {
122 device_type = "cpu";
123 compatible = "arm,cortex-a15";
124 reg = <0x1>;
125 clocks = <&clock CLK_ARM_CLK>;
126 clock-frequency = <1800000000>;
127 cci-control-port = <&cci_control1>;
128 operating-points-v2 = <&cluster_a15_opp_table>;
129 #cooling-cells = <2>; /* min followed by max */
130 capacity-dmips-mhz = <1024>;
131 dynamic-power-coefficient = <310>;
132 };
133
134 cpu6: cpu@2 {
135 device_type = "cpu";
136 compatible = "arm,cortex-a15";
137 reg = <0x2>;
138 clocks = <&clock CLK_ARM_CLK>;
139 clock-frequency = <1800000000>;
140 cci-control-port = <&cci_control1>;
141 operating-points-v2 = <&cluster_a15_opp_table>;
142 #cooling-cells = <2>; /* min followed by max */
143 capacity-dmips-mhz = <1024>;
144 dynamic-power-coefficient = <310>;
145 };
146
147 cpu7: cpu@3 {
148 device_type = "cpu";
149 compatible = "arm,cortex-a15";
150 reg = <0x3>;
151 clocks = <&clock CLK_ARM_CLK>;
152 clock-frequency = <1800000000>;
153 cci-control-port = <&cci_control1>;
154 operating-points-v2 = <&cluster_a15_opp_table>;
155 #cooling-cells = <2>; /* min followed by max */
156 capacity-dmips-mhz = <1024>;
157 dynamic-power-coefficient = <310>;
158 };
159 };
160};
161
162&arm_a7_pmu {
163 interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>;
164 status = "okay";
165};
166
167&arm_a15_pmu {
168 interrupt-affinity = <&cpu4>, <&cpu5>, <&cpu6>, <&cpu7>;
169 status = "okay";
170};
1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Samsung Exynos5422 SoC cpu device tree source
4 *
5 * Copyright (c) 2015 Samsung Electronics Co., Ltd.
6 * http://www.samsung.com
7 *
8 * This file provides desired ordering for Exynos5422: CPU[0123] being the A7.
9 *
10 * The Exynos5420, 5422 and 5800 actually share the same CPU configuration
11 * but particular boards choose different booting order.
12 *
13 * Exynos5420 and Exynos5800 always boot from Cortex-A15. On Exynos5422
14 * booting cluster (big or LITTLE) is chosen by IROM code by reading
15 * the gpg2-1 GPIO. By default all Exynos5422 based boards choose booting
16 * from the LITTLE: Cortex-A7.
17 */
18
19/ {
20 cpus {
21 #address-cells = <1>;
22 #size-cells = <0>;
23
24 cpu0: cpu@100 {
25 device_type = "cpu";
26 compatible = "arm,cortex-a7";
27 reg = <0x100>;
28 clocks = <&clock CLK_KFC_CLK>;
29 clock-frequency = <1000000000>;
30 cci-control-port = <&cci_control0>;
31 operating-points-v2 = <&cluster_a7_opp_table>;
32 #cooling-cells = <2>; /* min followed by max */
33 capacity-dmips-mhz = <539>;
34 dynamic-power-coefficient = <90>;
35 };
36
37 cpu1: cpu@101 {
38 device_type = "cpu";
39 compatible = "arm,cortex-a7";
40 reg = <0x101>;
41 clocks = <&clock CLK_KFC_CLK>;
42 clock-frequency = <1000000000>;
43 cci-control-port = <&cci_control0>;
44 operating-points-v2 = <&cluster_a7_opp_table>;
45 #cooling-cells = <2>; /* min followed by max */
46 capacity-dmips-mhz = <539>;
47 dynamic-power-coefficient = <90>;
48 };
49
50 cpu2: cpu@102 {
51 device_type = "cpu";
52 compatible = "arm,cortex-a7";
53 reg = <0x102>;
54 clocks = <&clock CLK_KFC_CLK>;
55 clock-frequency = <1000000000>;
56 cci-control-port = <&cci_control0>;
57 operating-points-v2 = <&cluster_a7_opp_table>;
58 #cooling-cells = <2>; /* min followed by max */
59 capacity-dmips-mhz = <539>;
60 dynamic-power-coefficient = <90>;
61 };
62
63 cpu3: cpu@103 {
64 device_type = "cpu";
65 compatible = "arm,cortex-a7";
66 reg = <0x103>;
67 clocks = <&clock CLK_KFC_CLK>;
68 clock-frequency = <1000000000>;
69 cci-control-port = <&cci_control0>;
70 operating-points-v2 = <&cluster_a7_opp_table>;
71 #cooling-cells = <2>; /* min followed by max */
72 capacity-dmips-mhz = <539>;
73 dynamic-power-coefficient = <90>;
74 };
75
76 cpu4: cpu@0 {
77 device_type = "cpu";
78 compatible = "arm,cortex-a15";
79 reg = <0x0>;
80 clocks = <&clock CLK_ARM_CLK>;
81 clock-frequency = <1800000000>;
82 cci-control-port = <&cci_control1>;
83 operating-points-v2 = <&cluster_a15_opp_table>;
84 #cooling-cells = <2>; /* min followed by max */
85 capacity-dmips-mhz = <1024>;
86 dynamic-power-coefficient = <310>;
87 };
88
89 cpu5: cpu@1 {
90 device_type = "cpu";
91 compatible = "arm,cortex-a15";
92 reg = <0x1>;
93 clocks = <&clock CLK_ARM_CLK>;
94 clock-frequency = <1800000000>;
95 cci-control-port = <&cci_control1>;
96 operating-points-v2 = <&cluster_a15_opp_table>;
97 #cooling-cells = <2>; /* min followed by max */
98 capacity-dmips-mhz = <1024>;
99 dynamic-power-coefficient = <310>;
100 };
101
102 cpu6: cpu@2 {
103 device_type = "cpu";
104 compatible = "arm,cortex-a15";
105 reg = <0x2>;
106 clocks = <&clock CLK_ARM_CLK>;
107 clock-frequency = <1800000000>;
108 cci-control-port = <&cci_control1>;
109 operating-points-v2 = <&cluster_a15_opp_table>;
110 #cooling-cells = <2>; /* min followed by max */
111 capacity-dmips-mhz = <1024>;
112 dynamic-power-coefficient = <310>;
113 };
114
115 cpu7: cpu@3 {
116 device_type = "cpu";
117 compatible = "arm,cortex-a15";
118 reg = <0x3>;
119 clocks = <&clock CLK_ARM_CLK>;
120 clock-frequency = <1800000000>;
121 cci-control-port = <&cci_control1>;
122 operating-points-v2 = <&cluster_a15_opp_table>;
123 #cooling-cells = <2>; /* min followed by max */
124 capacity-dmips-mhz = <1024>;
125 dynamic-power-coefficient = <310>;
126 };
127 };
128};
129
130&arm_a7_pmu {
131 interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>;
132 status = "okay";
133};
134
135&arm_a15_pmu {
136 interrupt-affinity = <&cpu4>, <&cpu5>, <&cpu6>, <&cpu7>;
137 status = "okay";
138};