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