Linux Audio

Check our new training course

Loading...
v4.17
 
  1/*
  2 *  Copyright (C) 2012 Marvell Technology Group Ltd.
  3 *  Author: Haojian Zhuang <haojian.zhuang@marvell.com>
  4 *
  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.
  8 */
  9
 10#include "skeleton.dtsi"
 11#include <dt-bindings/clock/marvell,mmp2.h>
 
 12
 13/ {
 
 
 
 14	aliases {
 15		serial0 = &uart1;
 16		serial1 = &uart2;
 17		serial2 = &uart3;
 18		serial3 = &uart4;
 19		i2c0 = &twsi1;
 20		i2c1 = &twsi2;
 21	};
 22
 23	soc {
 24		#address-cells = <1>;
 25		#size-cells = <1>;
 26		compatible = "simple-bus";
 27		interrupt-parent = <&intc>;
 28		ranges;
 29
 30		L2: l2-cache {
 31			compatible = "marvell,tauros2-cache";
 32			marvell,tauros2-cache-features = <0x3>;
 33		};
 34
 35		axi@d4200000 {	/* AXI */
 36			compatible = "mrvl,axi-bus", "simple-bus";
 37			#address-cells = <1>;
 38			#size-cells = <1>;
 39			reg = <0xd4200000 0x00200000>;
 40			ranges;
 41
 
 
 
 
 
 
 
 
 
 
 
 42			intc: interrupt-controller@d4282000 {
 43				compatible = "mrvl,mmp2-intc";
 44				interrupt-controller;
 45				#interrupt-cells = <1>;
 46				reg = <0xd4282000 0x1000>;
 47				mrvl,intc-nr-irqs = <64>;
 48			};
 49
 50			intcmux4: interrupt-controller@d4282150 {
 51				compatible = "mrvl,mmp2-mux-intc";
 52				interrupts = <4>;
 53				interrupt-controller;
 54				#interrupt-cells = <1>;
 55				reg = <0x150 0x4>, <0x168 0x4>;
 56				reg-names = "mux status", "mux mask";
 57				mrvl,intc-nr-irqs = <2>;
 58			};
 59
 60			intcmux5: interrupt-controller@d4282154 {
 61				compatible = "mrvl,mmp2-mux-intc";
 62				interrupts = <5>;
 63				interrupt-controller;
 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>;
 69			};
 70
 71			intcmux9: interrupt-controller@d4282180 {
 72				compatible = "mrvl,mmp2-mux-intc";
 73				interrupts = <9>;
 74				interrupt-controller;
 75				#interrupt-cells = <1>;
 76				reg = <0x180 0x4>, <0x17c 0x4>;
 77				reg-names = "mux status", "mux mask";
 78				mrvl,intc-nr-irqs = <3>;
 79			};
 80
 81			intcmux17: interrupt-controller@d4282158 {
 82				compatible = "mrvl,mmp2-mux-intc";
 83				interrupts = <17>;
 84				interrupt-controller;
 85				#interrupt-cells = <1>;
 86				reg = <0x158 0x4>, <0x170 0x4>;
 87				reg-names = "mux status", "mux mask";
 88				mrvl,intc-nr-irqs = <5>;
 89			};
 90
 91			intcmux35: interrupt-controller@d428215c {
 92				compatible = "mrvl,mmp2-mux-intc";
 93				interrupts = <35>;
 94				interrupt-controller;
 95				#interrupt-cells = <1>;
 96				reg = <0x15c 0x4>, <0x174 0x4>;
 97				reg-names = "mux status", "mux mask";
 98				mrvl,intc-nr-irqs = <15>;
 99			};
100
101			intcmux51: interrupt-controller@d4282160 {
102				compatible = "mrvl,mmp2-mux-intc";
103				interrupts = <51>;
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>;
109			};
110
111			intcmux55: interrupt-controller@d4282188 {
112				compatible = "mrvl,mmp2-mux-intc";
113				interrupts = <55>;
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>;
119			};
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
120		};
121
122		apb@d4000000 {	/* APB */
123			compatible = "mrvl,apb-bus", "simple-bus";
124			#address-cells = <1>;
125			#size-cells = <1>;
126			reg = <0xd4000000 0x00200000>;
127			ranges;
128
 
 
 
 
 
 
 
 
129			timer0: timer@d4014000 {
130				compatible = "mrvl,mmp-timer";
131				reg = <0xd4014000 0x100>;
132				interrupts = <13>;
 
133			};
134
135			uart1: uart@d4030000 {
136				compatible = "mrvl,mmp-uart";
137				reg = <0xd4030000 0x1000>;
138				interrupts = <27>;
139				clocks = <&soc_clocks MMP2_CLK_UART0>;
140				resets = <&soc_clocks MMP2_CLK_UART0>;
 
141				status = "disabled";
142			};
143
144			uart2: uart@d4017000 {
145				compatible = "mrvl,mmp-uart";
146				reg = <0xd4017000 0x1000>;
147				interrupts = <28>;
148				clocks = <&soc_clocks MMP2_CLK_UART1>;
149				resets = <&soc_clocks MMP2_CLK_UART1>;
 
150				status = "disabled";
151			};
152
153			uart3: uart@d4018000 {
154				compatible = "mrvl,mmp-uart";
155				reg = <0xd4018000 0x1000>;
156				interrupts = <24>;
157				clocks = <&soc_clocks MMP2_CLK_UART2>;
158				resets = <&soc_clocks MMP2_CLK_UART2>;
 
159				status = "disabled";
160			};
161
162			uart4: uart@d4016000 {
163				compatible = "mrvl,mmp-uart";
164				reg = <0xd4016000 0x1000>;
165				interrupts = <46>;
166				clocks = <&soc_clocks MMP2_CLK_UART3>;
167				resets = <&soc_clocks MMP2_CLK_UART3>;
 
168				status = "disabled";
169			};
170
171			gpio@d4019000 {
172				compatible = "marvell,mmp2-gpio";
173				#address-cells = <1>;
174				#size-cells = <1>;
175				reg = <0xd4019000 0x1000>;
176				gpio-controller;
177				#gpio-cells = <2>;
178				interrupts = <49>;
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 = <1>;
184				ranges;
185
186				gcb0: gpio@d4019000 {
187					reg = <0xd4019000 0x4>;
188				};
189
190				gcb1: gpio@d4019004 {
191					reg = <0xd4019004 0x4>;
192				};
193
194				gcb2: gpio@d4019008 {
195					reg = <0xd4019008 0x4>;
196				};
197
198				gcb3: gpio@d4019100 {
199					reg = <0xd4019100 0x4>;
200				};
201
202				gcb4: gpio@d4019104 {
203					reg = <0xd4019104 0x4>;
204				};
205
206				gcb5: gpio@d4019108 {
207					reg = <0xd4019108 0x4>;
208				};
209			};
210
211			twsi1: i2c@d4011000 {
212				compatible = "mrvl,mmp-twsi";
213				reg = <0xd4011000 0x1000>;
214				interrupts = <7>;
215				clocks = <&soc_clocks MMP2_CLK_TWSI0>;
216				resets = <&soc_clocks MMP2_CLK_TWSI0>;
217				#address-cells = <1>;
218				#size-cells = <0>;
219				mrvl,i2c-fast-mode;
220				status = "disabled";
221			};
222
223			twsi2: i2c@d4025000 {
224				compatible = "mrvl,mmp-twsi";
225				reg = <0xd4025000 0x1000>;
226				interrupts = <58>;
 
227				clocks = <&soc_clocks MMP2_CLK_TWSI1>;
228				resets = <&soc_clocks MMP2_CLK_TWSI1>;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
229				status = "disabled";
230			};
231
232			rtc: rtc@d4010000 {
233				compatible = "mrvl,mmp-rtc";
234				reg = <0xd4010000 0x1000>;
235				interrupts = <1 0>;
236				interrupt-names = "rtc 1Hz", "rtc alarm";
237				interrupt-parent = <&intcmux5>;
238				clocks = <&soc_clocks MMP2_CLK_RTC>;
239				resets = <&soc_clocks MMP2_CLK_RTC>;
240				status = "disabled";
241			};
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
242		};
243
244		soc_clocks: clocks{
245			compatible = "marvell,mmp2-clock";
246			reg = <0xd4050000 0x1000>,
247			      <0xd4282800 0x400>,
248			      <0xd4015000 0x1000>;
249			reg-names = "mpmu", "apmu", "apbc";
250			#clock-cells = <1>;
251			#reset-cells = <1>;
 
252		};
253	};
254};
v5.9
  1// SPDX-License-Identifier: GPL-2.0-only
  2/*
  3 *  Copyright (C) 2012 Marvell Technology Group Ltd.
  4 *  Author: Haojian Zhuang <haojian.zhuang@marvell.com>
 
 
 
 
  5 */
  6
 
  7#include <dt-bindings/clock/marvell,mmp2.h>
  8#include <dt-bindings/power/marvell,mmp2.h>
  9
 10/ {
 11	#address-cells = <1>;
 12	#size-cells = <1>;
 13
 14	aliases {
 15		serial0 = &uart1;
 16		serial1 = &uart2;
 17		serial2 = &uart3;
 18		serial3 = &uart4;
 19		i2c0 = &twsi1;
 20		i2c1 = &twsi2;
 21	};
 22
 23	soc {
 24		#address-cells = <1>;
 25		#size-cells = <1>;
 26		compatible = "simple-bus";
 27		interrupt-parent = <&intc>;
 28		ranges;
 29
 30		L2: l2-cache {
 31			compatible = "marvell,tauros2-cache";
 32			marvell,tauros2-cache-features = <0x3>;
 33		};
 34
 35		axi@d4200000 {	/* AXI */
 36			compatible = "mrvl,axi-bus", "simple-bus";
 37			#address-cells = <1>;
 38			#size-cells = <1>;
 39			reg = <0xd4200000 0x00200000>;
 40			ranges;
 41
 42			gpu: gpu@d420d000 {
 43				compatible = "vivante,gc";
 44				reg = <0xd420d000 0x4000>;
 45				interrupts = <8>;
 46				status = "disabled";
 47				clocks = <&soc_clocks MMP2_CLK_GPU_3D>,
 48					 <&soc_clocks MMP2_CLK_GPU_BUS>;
 49				clock-names = "core", "bus";
 50				power-domains = <&soc_clocks MMP2_POWER_DOMAIN_GPU>;
 51			};
 52
 53			intc: interrupt-controller@d4282000 {
 54				compatible = "mrvl,mmp2-intc";
 55				interrupt-controller;
 56				#interrupt-cells = <1>;
 57				reg = <0xd4282000 0x1000>;
 58				mrvl,intc-nr-irqs = <64>;
 59			};
 60
 61			intcmux4: interrupt-controller@d4282150 {
 62				compatible = "mrvl,mmp2-mux-intc";
 63				interrupts = <4>;
 64				interrupt-controller;
 65				#interrupt-cells = <1>;
 66				reg = <0x150 0x4>, <0x168 0x4>;
 67				reg-names = "mux status", "mux mask";
 68				mrvl,intc-nr-irqs = <2>;
 69			};
 70
 71			intcmux5: interrupt-controller@d4282154 {
 72				compatible = "mrvl,mmp2-mux-intc";
 73				interrupts = <5>;
 74				interrupt-controller;
 75				#interrupt-cells = <1>;
 76				reg = <0x154 0x4>, <0x16c 0x4>;
 77				reg-names = "mux status", "mux mask";
 78				mrvl,intc-nr-irqs = <2>;
 79				mrvl,clr-mfp-irq = <1>;
 80			};
 81
 82			intcmux9: interrupt-controller@d4282180 {
 83				compatible = "mrvl,mmp2-mux-intc";
 84				interrupts = <9>;
 85				interrupt-controller;
 86				#interrupt-cells = <1>;
 87				reg = <0x180 0x4>, <0x17c 0x4>;
 88				reg-names = "mux status", "mux mask";
 89				mrvl,intc-nr-irqs = <3>;
 90			};
 91
 92			intcmux17: interrupt-controller@d4282158 {
 93				compatible = "mrvl,mmp2-mux-intc";
 94				interrupts = <17>;
 95				interrupt-controller;
 96				#interrupt-cells = <1>;
 97				reg = <0x158 0x4>, <0x170 0x4>;
 98				reg-names = "mux status", "mux mask";
 99				mrvl,intc-nr-irqs = <5>;
100			};
101
102			intcmux35: interrupt-controller@d428215c {
103				compatible = "mrvl,mmp2-mux-intc";
104				interrupts = <35>;
105				interrupt-controller;
106				#interrupt-cells = <1>;
107				reg = <0x15c 0x4>, <0x174 0x4>;
108				reg-names = "mux status", "mux mask";
109				mrvl,intc-nr-irqs = <15>;
110			};
111
112			intcmux51: interrupt-controller@d4282160 {
113				compatible = "mrvl,mmp2-mux-intc";
114				interrupts = <51>;
115				interrupt-controller;
116				#interrupt-cells = <1>;
117				reg = <0x160 0x4>, <0x178 0x4>;
118				reg-names = "mux status", "mux mask";
119				mrvl,intc-nr-irqs = <2>;
120			};
121
122			intcmux55: interrupt-controller@d4282188 {
123				compatible = "mrvl,mmp2-mux-intc";
124				interrupts = <55>;
125				interrupt-controller;
126				#interrupt-cells = <1>;
127				reg = <0x188 0x4>, <0x184 0x4>;
128				reg-names = "mux status", "mux mask";
129				mrvl,intc-nr-irqs = <2>;
130			};
131
132			usb_phy0: usb-phy@d4207000 {
133				compatible = "marvell,mmp2-usb-phy";
134				reg = <0xd4207000 0x40>;
135				#phy-cells = <0>;
136				status = "disabled";
137			};
138
139			usb_otg0: usb-otg@d4208000 {
140				compatible = "marvell,pxau2o-ehci";
141				reg = <0xd4208000 0x200>;
142				interrupts = <44>;
143				clocks = <&soc_clocks MMP2_CLK_USB>;
144				clock-names = "USBCLK";
145				phys = <&usb_phy0>;
146				phy-names = "usb";
147				status = "disabled";
148			};
149
150			mmc1: mmc@d4280000 {
151				compatible = "mrvl,pxav3-mmc";
152				reg = <0xd4280000 0x120>;
153				clocks = <&soc_clocks MMP2_CLK_SDH0>;
154				clock-names = "io";
155				interrupts = <39>;
156				status = "disabled";
157			};
158
159			mmc2: mmc@d4280800 {
160				compatible = "mrvl,pxav3-mmc";
161				reg = <0xd4280800 0x120>;
162				clocks = <&soc_clocks MMP2_CLK_SDH1>;
163				clock-names = "io";
164				interrupts = <52>;
165				status = "disabled";
166			};
167
168			mmc3: mmc@d4281000 {
169				compatible = "mrvl,pxav3-mmc";
170				reg = <0xd4281000 0x120>;
171				clocks = <&soc_clocks MMP2_CLK_SDH2>;
172				clock-names = "io";
173				interrupts = <53>;
174				status = "disabled";
175			};
176
177			mmc4: mmc@d4281800 {
178				compatible = "mrvl,pxav3-mmc";
179				reg = <0xd4281800 0x120>;
180				clocks = <&soc_clocks MMP2_CLK_SDH3>;
181				clock-names = "io";
182				interrupts = <54>;
183				status = "disabled";
184			};
185
186			camera0: camera@d420a000 {
187				compatible = "marvell,mmp2-ccic";
188				reg = <0xd420a000 0x800>;
189				interrupts = <42>;
190				clocks = <&soc_clocks MMP2_CLK_CCIC0>;
191				clock-names = "axi";
192				#clock-cells = <0>;
193				clock-output-names = "mclk";
194				status = "disabled";
195			};
196
197			camera1: camera@d420a800 {
198				compatible = "marvell,mmp2-ccic";
199				reg = <0xd420a800 0x800>;
200				interrupts = <30>;
201				clocks = <&soc_clocks MMP2_CLK_CCIC1>;
202				clock-names = "axi";
203				#clock-cells = <0>;
204				clock-output-names = "mclk";
205				status = "disabled";
206			};
207
208			adma0: dma-controller@d42a0800 {
209				compatible = "marvell,adma-1.0";
210				reg = <0xd42a0800 0x100>;
211				interrupts = <48>;
212				#dma-cells = <1>;
213				asram = <&asram>;
214				iram = <&asram>;
215				status = "disabled";
216			};
217
218			adma1: dma-controller@d42a0900 {
219				compatible = "marvell,adma-1.0";
220				reg = <0xd42a0900 0x100>;
221				interrupts = <48>;
222				#dma-cells = <1>;
223				status = "disabled";
224			};
225
226			audio_clk: clocks@d42a0c30 {
227				compatible = "marvell,mmp2-audio-clock";
228				reg = <0xd42a0c30 0x10>;
229				clock-names = "audio", "vctcxo", "i2s0", "i2s1";
230				clocks = <&soc_clocks MMP2_CLK_AUDIO>,
231					 <&soc_clocks MMP2_CLK_VCTCXO>,
232					 <&soc_clocks MMP2_CLK_I2S0>,
233					 <&soc_clocks MMP2_CLK_I2S1>;
234				power-domains = <&soc_clocks MMP2_POWER_DOMAIN_AUDIO>;
235				#clock-cells = <1>;
236				status = "disabled";
237			};
238
239			sspa0: audio-controller@d42a0c00 {
240				compatible = "marvell,mmp-sspa";
241				reg = <0xd42a0c00 0x30>,
242				      <0xd42a0c80 0x30>;
243				interrupts = <2>;
244				clock-names = "audio", "bitclk";
245				clocks = <&soc_clocks MMP2_CLK_AUDIO>,
246					 <&audio_clk 1>;
247				power-domains = <&soc_clocks MMP2_POWER_DOMAIN_AUDIO>;
248				#sound-dai-cells = <0>;
249				status = "disabled";
250			};
251
252			sspa1: audio-controller@d42a0d00 {
253				compatible = "marvell,mmp-sspa";
254				reg = <0xd42a0d00 0x30>,
255				      <0xd42a0d80 0x30>;
256				interrupts = <3>;
257				clock-names = "audio", "bitclk";
258				clocks = <&soc_clocks MMP2_CLK_AUDIO>,
259					 <&audio_clk 2>;
260				power-domains = <&soc_clocks MMP2_POWER_DOMAIN_AUDIO>;
261				#sound-dai-cells = <0>;
262				status = "disabled";
263			};
264		};
265
266		apb@d4000000 {	/* APB */
267			compatible = "mrvl,apb-bus", "simple-bus";
268			#address-cells = <1>;
269			#size-cells = <1>;
270			reg = <0xd4000000 0x00200000>;
271			ranges;
272
273			dma-controller@d4000000 {
274				compatible = "marvell,pdma-1.0";
275				reg = <0xd4000000 0x10000>;
276				interrupts = <48>;
277				#dma-channels = <16>;
278				status = "disabled";
279			};
280
281			timer0: timer@d4014000 {
282				compatible = "mrvl,mmp-timer";
283				reg = <0xd4014000 0x100>;
284				interrupts = <13>;
285				clocks = <&soc_clocks MMP2_CLK_TIMER>;
286			};
287
288			uart1: serial@d4030000 {
289				compatible = "mrvl,mmp-uart", "intel,xscale-uart";
290				reg = <0xd4030000 0x1000>;
291				interrupts = <27>;
292				clocks = <&soc_clocks MMP2_CLK_UART0>;
293				resets = <&soc_clocks MMP2_CLK_UART0>;
294				reg-shift = <2>;
295				status = "disabled";
296			};
297
298			uart2: serial@d4017000 {
299				compatible = "mrvl,mmp-uart", "intel,xscale-uart";
300				reg = <0xd4017000 0x1000>;
301				interrupts = <28>;
302				clocks = <&soc_clocks MMP2_CLK_UART1>;
303				resets = <&soc_clocks MMP2_CLK_UART1>;
304				reg-shift = <2>;
305				status = "disabled";
306			};
307
308			uart3: serial@d4018000 {
309				compatible = "mrvl,mmp-uart", "intel,xscale-uart";
310				reg = <0xd4018000 0x1000>;
311				interrupts = <24>;
312				clocks = <&soc_clocks MMP2_CLK_UART2>;
313				resets = <&soc_clocks MMP2_CLK_UART2>;
314				reg-shift = <2>;
315				status = "disabled";
316			};
317
318			uart4: serial@d4016000 {
319				compatible = "mrvl,mmp-uart", "intel,xscale-uart";
320				reg = <0xd4016000 0x1000>;
321				interrupts = <46>;
322				clocks = <&soc_clocks MMP2_CLK_UART3>;
323				resets = <&soc_clocks MMP2_CLK_UART3>;
324				reg-shift = <2>;
325				status = "disabled";
326			};
327
328			gpio: gpio@d4019000 {
329				compatible = "marvell,mmp2-gpio";
330				#address-cells = <1>;
331				#size-cells = <1>;
332				reg = <0xd4019000 0x1000>;
333				gpio-controller;
334				#gpio-cells = <2>;
335				interrupts = <49>;
336				interrupt-names = "gpio_mux";
337				clocks = <&soc_clocks MMP2_CLK_GPIO>;
338				resets = <&soc_clocks MMP2_CLK_GPIO>;
339				interrupt-controller;
340				#interrupt-cells = <2>;
341				ranges;
342
343				gcb0: gpio@d4019000 {
344					reg = <0xd4019000 0x4>;
345				};
346
347				gcb1: gpio@d4019004 {
348					reg = <0xd4019004 0x4>;
349				};
350
351				gcb2: gpio@d4019008 {
352					reg = <0xd4019008 0x4>;
353				};
354
355				gcb3: gpio@d4019100 {
356					reg = <0xd4019100 0x4>;
357				};
358
359				gcb4: gpio@d4019104 {
360					reg = <0xd4019104 0x4>;
361				};
362
363				gcb5: gpio@d4019108 {
364					reg = <0xd4019108 0x4>;
365				};
366			};
367
368			twsi1: i2c@d4011000 {
369				compatible = "mrvl,mmp-twsi";
370				reg = <0xd4011000 0x1000>;
371				interrupts = <7>;
372				clocks = <&soc_clocks MMP2_CLK_TWSI0>;
373				resets = <&soc_clocks MMP2_CLK_TWSI0>;
374				#address-cells = <1>;
375				#size-cells = <0>;
376				mrvl,i2c-fast-mode;
377				status = "disabled";
378			};
379
380			twsi2: i2c@d4031000 {
381				compatible = "mrvl,mmp-twsi";
382				reg = <0xd4031000 0x1000>;
383				interrupt-parent = <&intcmux17>;
384				interrupts = <0>;
385				clocks = <&soc_clocks MMP2_CLK_TWSI1>;
386				resets = <&soc_clocks MMP2_CLK_TWSI1>;
387				#address-cells = <1>;
388				#size-cells = <0>;
389				status = "disabled";
390			};
391
392			twsi3: i2c@d4032000 {
393				compatible = "mrvl,mmp-twsi";
394				reg = <0xd4032000 0x1000>;
395				interrupt-parent = <&intcmux17>;
396				interrupts = <1>;
397				clocks = <&soc_clocks MMP2_CLK_TWSI2>;
398				resets = <&soc_clocks MMP2_CLK_TWSI2>;
399				#address-cells = <1>;
400				#size-cells = <0>;
401				status = "disabled";
402			};
403
404			twsi4: i2c@d4033000 {
405				compatible = "mrvl,mmp-twsi";
406				reg = <0xd4033000 0x1000>;
407				interrupt-parent = <&intcmux17>;
408				interrupts = <2>;
409				clocks = <&soc_clocks MMP2_CLK_TWSI3>;
410				resets = <&soc_clocks MMP2_CLK_TWSI3>;
411				#address-cells = <1>;
412				#size-cells = <0>;
413				status = "disabled";
414			};
415
416
417			twsi5: i2c@d4033800 {
418				compatible = "mrvl,mmp-twsi";
419				reg = <0xd4033800 0x1000>;
420				interrupt-parent = <&intcmux17>;
421				interrupts = <3>;
422				clocks = <&soc_clocks MMP2_CLK_TWSI4>;
423				resets = <&soc_clocks MMP2_CLK_TWSI4>;
424				#address-cells = <1>;
425				#size-cells = <0>;
426				status = "disabled";
427			};
428
429			twsi6: i2c@d4034000 {
430				compatible = "mrvl,mmp-twsi";
431				reg = <0xd4034000 0x1000>;
432				interrupt-parent = <&intcmux17>;
433				interrupts = <4>;
434				clocks = <&soc_clocks MMP2_CLK_TWSI5>;
435				resets = <&soc_clocks MMP2_CLK_TWSI5>;
436				#address-cells = <1>;
437				#size-cells = <0>;
438				status = "disabled";
439			};
440
441			rtc: rtc@d4010000 {
442				compatible = "mrvl,mmp-rtc";
443				reg = <0xd4010000 0x1000>;
444				interrupts = <1>, <0>;
445				interrupt-names = "rtc 1Hz", "rtc alarm";
446				interrupt-parent = <&intcmux5>;
447				clocks = <&soc_clocks MMP2_CLK_RTC>;
448				resets = <&soc_clocks MMP2_CLK_RTC>;
449				status = "disabled";
450			};
451
452			ssp1: spi@d4035000 {
453				compatible = "marvell,mmp2-ssp";
454				reg = <0xd4035000 0x1000>;
455				clocks = <&soc_clocks MMP2_CLK_SSP0>;
456				interrupts = <0>;
457				#address-cells = <1>;
458				#size-cells = <0>;
459				status = "disabled";
460			};
461
462			ssp2: spi@d4036000 {
463				compatible = "marvell,mmp2-ssp";
464				reg = <0xd4036000 0x1000>;
465				clocks = <&soc_clocks MMP2_CLK_SSP1>;
466				interrupts = <1>;
467				#address-cells = <1>;
468				#size-cells = <0>;
469				status = "disabled";
470			};
471
472			ssp3: spi@d4037000 {
473				compatible = "marvell,mmp2-ssp";
474				reg = <0xd4037000 0x1000>;
475				clocks = <&soc_clocks MMP2_CLK_SSP2>;
476				interrupts = <20>;
477				#address-cells = <1>;
478				#size-cells = <0>;
479				status = "disabled";
480			};
481
482			ssp4: spi@d4039000 {
483				compatible = "marvell,mmp2-ssp";
484				reg = <0xd4039000 0x1000>;
485				clocks = <&soc_clocks MMP2_CLK_SSP3>;
486				interrupts = <21>;
487				#address-cells = <1>;
488				#size-cells = <0>;
489				status = "disabled";
490			};
491		};
492
493		asram: sram@e0000000 {
494			compatible = "mmio-sram";
495			reg = <0xe0000000 0x10000>;
496			ranges = <0 0xe0000000 0x10000>;
497			#address-cells = <1>;
498			#size-cells = <1>;
499			status = "disabled";
500		};
501
502		soc_clocks: clocks {
503			compatible = "marvell,mmp2-clock";
504			reg = <0xd4050000 0x2000>,
505			      <0xd4282800 0x400>,
506			      <0xd4015000 0x1000>;
507			reg-names = "mpmu", "apmu", "apbc";
508			#clock-cells = <1>;
509			#reset-cells = <1>;
510			#power-domain-cells = <1>;
511		};
512	};
513};