aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChen-Yu Tsai <wens@csie.org>2014-07-03 10:55:49 -0400
committerMaxime Ripard <maxime.ripard@free-electrons.com>2014-07-07 05:00:37 -0400
commitc571111ac1d6e99a4ad49ae105325704e3381ccc (patch)
tree1ffca0b1743337476a3eb22c01dd97fb0c631840
parent8e9842406c1889782613f31a81a579ba14ef9e0f (diff)
ARM: sun8i: Add reset controller nodes to the DTSI
The A23 has the same MMIO reset controllers matching the clocks gates, just like in the A31. This patch adds the reset controller nodes and the reset control phandles for the peripherals needing them to the DTSI. Unlike the sun6i DTSI, this patch uses sun6i-a31-clock-reset for ahb1_rst. sun6i-a31-ahb-reset is for early init, and requires some additions to the machine code. It is used to support the hstimer. However the hstimer on sun8i only has 1 timer, which is somewhat useless. Support for it will probably not be added. Hence the decision to use sun6i-a31-clock-reset here to avoid the changes to sun8i machine code. Signed-off-by: Chen-Yu Tsai <wens@csie.org> Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
-rw-r--r--arch/arm/boot/dts/sun8i-a23.dtsi23
1 files changed, 23 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/sun8i-a23.dtsi b/arch/arm/boot/dts/sun8i-a23.dtsi
index 79c40834bc0a..886776d09c06 100644
--- a/arch/arm/boot/dts/sun8i-a23.dtsi
+++ b/arch/arm/boot/dts/sun8i-a23.dtsi
@@ -187,6 +187,24 @@
187 #size-cells = <1>; 187 #size-cells = <1>;
188 ranges; 188 ranges;
189 189
190 ahb1_rst: reset@01c202c0 {
191 #reset-cells = <1>;
192 compatible = "allwinner,sun6i-a31-clock-reset";
193 reg = <0x01c202c0 0xc>;
194 };
195
196 apb1_rst: reset@01c202d0 {
197 #reset-cells = <1>;
198 compatible = "allwinner,sun6i-a31-clock-reset";
199 reg = <0x01c202d0 0x4>;
200 };
201
202 apb2_rst: reset@01c202d8 {
203 #reset-cells = <1>;
204 compatible = "allwinner,sun6i-a31-clock-reset";
205 reg = <0x01c202d8 0x4>;
206 };
207
190 timer@01c20c00 { 208 timer@01c20c00 {
191 compatible = "allwinner,sun4i-a10-timer"; 209 compatible = "allwinner,sun4i-a10-timer";
192 reg = <0x01c20c00 0xa0>; 210 reg = <0x01c20c00 0xa0>;
@@ -208,6 +226,7 @@
208 reg-shift = <2>; 226 reg-shift = <2>;
209 reg-io-width = <4>; 227 reg-io-width = <4>;
210 clocks = <&apb2_gates 16>; 228 clocks = <&apb2_gates 16>;
229 resets = <&apb2_rst 16>;
211 status = "disabled"; 230 status = "disabled";
212 }; 231 };
213 232
@@ -218,6 +237,7 @@
218 reg-shift = <2>; 237 reg-shift = <2>;
219 reg-io-width = <4>; 238 reg-io-width = <4>;
220 clocks = <&apb2_gates 17>; 239 clocks = <&apb2_gates 17>;
240 resets = <&apb2_rst 17>;
221 status = "disabled"; 241 status = "disabled";
222 }; 242 };
223 243
@@ -228,6 +248,7 @@
228 reg-shift = <2>; 248 reg-shift = <2>;
229 reg-io-width = <4>; 249 reg-io-width = <4>;
230 clocks = <&apb2_gates 18>; 250 clocks = <&apb2_gates 18>;
251 resets = <&apb2_rst 18>;
231 status = "disabled"; 252 status = "disabled";
232 }; 253 };
233 254
@@ -238,6 +259,7 @@
238 reg-shift = <2>; 259 reg-shift = <2>;
239 reg-io-width = <4>; 260 reg-io-width = <4>;
240 clocks = <&apb2_gates 19>; 261 clocks = <&apb2_gates 19>;
262 resets = <&apb2_rst 19>;
241 status = "disabled"; 263 status = "disabled";
242 }; 264 };
243 265
@@ -248,6 +270,7 @@
248 reg-shift = <2>; 270 reg-shift = <2>;
249 reg-io-width = <4>; 271 reg-io-width = <4>;
250 clocks = <&apb2_gates 20>; 272 clocks = <&apb2_gates 20>;
273 resets = <&apb2_rst 20>;
251 status = "disabled"; 274 status = "disabled";
252 }; 275 };
253 276