2 * Copyright (C) 2012 Marvell Technology Group Ltd.
3 * Author: Haojian Zhuang <haojian.zhuang@marvell.com>
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License version 2 as
7 * publishhed by the Free Software Foundation.
10 #include "skeleton.dtsi"
11 #include <dt-bindings/clock/marvell,mmp2.h>
26 compatible = "simple-bus";
27 interrupt-parent = <&intc>;
31 compatible = "marvell,tauros2-cache";
32 marvell,tauros2-cache-features = <0x3>;
35 axi@d4200000 { /* AXI */
36 compatible = "mrvl,axi-bus", "simple-bus";
39 reg = <0xd4200000 0x00200000>;
42 intc: interrupt-controller@d4282000 {
43 compatible = "mrvl,mmp2-intc";
45 #interrupt-cells = <1>;
46 reg = <0xd4282000 0x1000>;
47 mrvl,intc-nr-irqs = <64>;
50 intcmux4: interrupt-controller@d4282150 {
51 compatible = "mrvl,mmp2-mux-intc";
54 #interrupt-cells = <1>;
55 reg = <0x150 0x4>, <0x168 0x4>;
56 reg-names = "mux status", "mux mask";
57 mrvl,intc-nr-irqs = <2>;
60 intcmux5: interrupt-controller@d4282154 {
61 compatible = "mrvl,mmp2-mux-intc";
64 #interrupt-cells = <1>;
65 reg = <0x154 0x4>, <0x16c 0x4>;
66 reg-names = "mux status", "mux mask";
67 mrvl,intc-nr-irqs = <2>;
68 mrvl,clr-mfp-irq = <1>;
71 intcmux9: interrupt-controller@d4282180 {
72 compatible = "mrvl,mmp2-mux-intc";
75 #interrupt-cells = <1>;
76 reg = <0x180 0x4>, <0x17c 0x4>;
77 reg-names = "mux status", "mux mask";
78 mrvl,intc-nr-irqs = <3>;
81 intcmux17: interrupt-controller@d4282158 {
82 compatible = "mrvl,mmp2-mux-intc";
85 #interrupt-cells = <1>;
86 reg = <0x158 0x4>, <0x170 0x4>;
87 reg-names = "mux status", "mux mask";
88 mrvl,intc-nr-irqs = <5>;
91 intcmux35: interrupt-controller@d428215c {
92 compatible = "mrvl,mmp2-mux-intc";
95 #interrupt-cells = <1>;
96 reg = <0x15c 0x4>, <0x174 0x4>;
97 reg-names = "mux status", "mux mask";
98 mrvl,intc-nr-irqs = <15>;
101 intcmux51: interrupt-controller@d4282160 {
102 compatible = "mrvl,mmp2-mux-intc";
104 interrupt-controller;
105 #interrupt-cells = <1>;
106 reg = <0x160 0x4>, <0x178 0x4>;
107 reg-names = "mux status", "mux mask";
108 mrvl,intc-nr-irqs = <2>;
111 intcmux55: interrupt-controller@d4282188 {
112 compatible = "mrvl,mmp2-mux-intc";
114 interrupt-controller;
115 #interrupt-cells = <1>;
116 reg = <0x188 0x4>, <0x184 0x4>;
117 reg-names = "mux status", "mux mask";
118 mrvl,intc-nr-irqs = <2>;
122 apb@d4000000 { /* APB */
123 compatible = "mrvl,apb-bus", "simple-bus";
124 #address-cells = <1>;
126 reg = <0xd4000000 0x00200000>;
129 timer0: timer@d4014000 {
130 compatible = "mrvl,mmp-timer";
131 reg = <0xd4014000 0x100>;
135 uart1: uart@d4030000 {
136 compatible = "mrvl,mmp-uart";
137 reg = <0xd4030000 0x1000>;
139 clocks = <&soc_clocks MMP2_CLK_UART0>;
140 resets = <&soc_clocks MMP2_CLK_UART0>;
144 uart2: uart@d4017000 {
145 compatible = "mrvl,mmp-uart";
146 reg = <0xd4017000 0x1000>;
148 clocks = <&soc_clocks MMP2_CLK_UART1>;
149 resets = <&soc_clocks MMP2_CLK_UART1>;
153 uart3: uart@d4018000 {
154 compatible = "mrvl,mmp-uart";
155 reg = <0xd4018000 0x1000>;
157 clocks = <&soc_clocks MMP2_CLK_UART2>;
158 resets = <&soc_clocks MMP2_CLK_UART2>;
162 uart4: uart@d4016000 {
163 compatible = "mrvl,mmp-uart";
164 reg = <0xd4016000 0x1000>;
166 clocks = <&soc_clocks MMP2_CLK_UART3>;
167 resets = <&soc_clocks MMP2_CLK_UART3>;
172 compatible = "marvell,mmp2-gpio";
173 #address-cells = <1>;
175 reg = <0xd4019000 0x1000>;
179 interrupt-names = "gpio_mux";
180 clocks = <&soc_clocks MMP2_CLK_GPIO>;
181 resets = <&soc_clocks MMP2_CLK_GPIO>;
182 interrupt-controller;
183 #interrupt-cells = <2>;
186 gcb0: gpio@d4019000 {
187 reg = <0xd4019000 0x4>;
190 gcb1: gpio@d4019004 {
191 reg = <0xd4019004 0x4>;
194 gcb2: gpio@d4019008 {
195 reg = <0xd4019008 0x4>;
198 gcb3: gpio@d4019100 {
199 reg = <0xd4019100 0x4>;
202 gcb4: gpio@d4019104 {
203 reg = <0xd4019104 0x4>;
206 gcb5: gpio@d4019108 {
207 reg = <0xd4019108 0x4>;
211 twsi1: i2c@d4011000 {
212 compatible = "mrvl,mmp-twsi";
213 reg = <0xd4011000 0x1000>;
215 clocks = <&soc_clocks MMP2_CLK_TWSI0>;
216 resets = <&soc_clocks MMP2_CLK_TWSI0>;
217 #address-cells = <1>;
223 twsi2: i2c@d4031000 {
224 compatible = "mrvl,mmp-twsi";
225 reg = <0xd4031000 0x1000>;
226 interrupt-parent = <&intcmux17>;
228 clocks = <&soc_clocks MMP2_CLK_TWSI1>;
229 resets = <&soc_clocks MMP2_CLK_TWSI1>;
230 #address-cells = <1>;
236 compatible = "mrvl,mmp-rtc";
237 reg = <0xd4010000 0x1000>;
239 interrupt-names = "rtc 1Hz", "rtc alarm";
240 interrupt-parent = <&intcmux5>;
241 clocks = <&soc_clocks MMP2_CLK_RTC>;
242 resets = <&soc_clocks MMP2_CLK_RTC>;
248 compatible = "marvell,mmp2-clock";
249 reg = <0xd4050000 0x1000>,
252 reg-names = "mpmu", "apmu", "apbc";