1*2e36db14SWarner Losh/* 2*2e36db14SWarner Losh * Copyright (c) 2012 The FreeBSD Foundation 3*2e36db14SWarner Losh * Copyright (c) 2013 Rui Paulo 4*2e36db14SWarner Losh * All rights reserved. 5*2e36db14SWarner Losh * 6*2e36db14SWarner Losh * This software was developed by Semihalf under sponsorship from 7*2e36db14SWarner Losh * the FreeBSD Foundation. 8*2e36db14SWarner Losh * 9*2e36db14SWarner Losh * Redistribution and use in source and binary forms, with or without 10*2e36db14SWarner Losh * modification, are permitted provided that the following conditions 11*2e36db14SWarner Losh * are met: 12*2e36db14SWarner Losh * 1. Redistributions of source code must retain the above copyright 13*2e36db14SWarner Losh * notice, this list of conditions and the following disclaimer. 14*2e36db14SWarner Losh * 2. Redistributions in binary form must reproduce the above copyright 15*2e36db14SWarner Losh * notice, this list of conditions and the following disclaimer in the 16*2e36db14SWarner Losh * documentation and/or other materials provided with the distribution. 17*2e36db14SWarner Losh * 18*2e36db14SWarner Losh * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 19*2e36db14SWarner Losh * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 20*2e36db14SWarner Losh * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 21*2e36db14SWarner Losh * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 22*2e36db14SWarner Losh * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 23*2e36db14SWarner Losh * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 24*2e36db14SWarner Losh * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 25*2e36db14SWarner Losh * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 26*2e36db14SWarner Losh * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 27*2e36db14SWarner Losh * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 28*2e36db14SWarner Losh * SUCH DAMAGE. 29*2e36db14SWarner Losh * 30*2e36db14SWarner Losh * Freescale i.MX535 Device Tree Source. 31*2e36db14SWarner Losh */ 32*2e36db14SWarner Losh 33*2e36db14SWarner Losh/ { 34*2e36db14SWarner Losh #address-cells = <1>; 35*2e36db14SWarner Losh #size-cells = <1>; 36*2e36db14SWarner Losh 37*2e36db14SWarner Losh aliases { 38*2e36db14SWarner Losh soc = &SOC; 39*2e36db14SWarner Losh }; 40*2e36db14SWarner Losh 41*2e36db14SWarner Losh 42*2e36db14SWarner Losh cpus { 43*2e36db14SWarner Losh #address-cells = <1>; 44*2e36db14SWarner Losh #size-cells = <0>; 45*2e36db14SWarner Losh 46*2e36db14SWarner Losh cpu@0 { 47*2e36db14SWarner Losh device_type = "cpu"; 48*2e36db14SWarner Losh compatible = "ARM,MCIMX535"; 49*2e36db14SWarner Losh reg = <0x0>; 50*2e36db14SWarner Losh d-cache-line-size = <32>; 51*2e36db14SWarner Losh i-cache-line-size = <32>; 52*2e36db14SWarner Losh d-cache-size = <0x8000>; 53*2e36db14SWarner Losh i-cache-size = <0x8000>; 54*2e36db14SWarner Losh l2-cache-line-size = <32>; 55*2e36db14SWarner Losh l2-cache-line = <0x40000>; 56*2e36db14SWarner Losh timebase-frequency = <0>; 57*2e36db14SWarner Losh bus-frequency = <0>; 58*2e36db14SWarner Losh clock-frequency = <0>; 59*2e36db14SWarner Losh }; 60*2e36db14SWarner Losh }; 61*2e36db14SWarner Losh 62*2e36db14SWarner Losh localbus@0fffc000 { 63*2e36db14SWarner Losh compatible = "simple-bus"; 64*2e36db14SWarner Losh #address-cells = <1>; 65*2e36db14SWarner Losh #size-cells = <1>; 66*2e36db14SWarner Losh 67*2e36db14SWarner Losh /* This reflects CPU decode windows setup. */ 68*2e36db14SWarner Losh ranges; 69*2e36db14SWarner Losh 70*2e36db14SWarner Losh tzic: tz-interrupt-controller@0fffc000 { 71*2e36db14SWarner Losh compatible = "fsl,imx53-tzic", "fsl,tzic"; 72*2e36db14SWarner Losh interrupt-controller; 73*2e36db14SWarner Losh #interrupt-cells = <1>; 74*2e36db14SWarner Losh reg = <0x0fffc000 0x00004000>; 75*2e36db14SWarner Losh }; 76*2e36db14SWarner Losh /* 77*2e36db14SWarner Losh * 40000000 40000FFF 4K Debug ROM 78*2e36db14SWarner Losh * 40001000 40001FFF 4K ETB 79*2e36db14SWarner Losh * 40002000 40002FFF 4K ETM 80*2e36db14SWarner Losh * 40003000 40003FFF 4K TPIU 81*2e36db14SWarner Losh * 40004000 40004FFF 4K CTI0 82*2e36db14SWarner Losh * 40005000 40005FFF 4K CTI1 83*2e36db14SWarner Losh * 40006000 40006FFF 4K CTI2 84*2e36db14SWarner Losh * 40007000 40007FFF 4K CTI3 85*2e36db14SWarner Losh * 40008000 40008FFF 4K ARM Debug Unit 86*2e36db14SWarner Losh * 87*2e36db14SWarner Losh * 0FFFC000 0FFFCFFF 0x4000 TZIC 88*2e36db14SWarner Losh */ 89*2e36db14SWarner Losh }; 90*2e36db14SWarner Losh 91*2e36db14SWarner Losh SOC: soc@50000000 { 92*2e36db14SWarner Losh compatible = "simple-bus"; 93*2e36db14SWarner Losh #address-cells = <1>; 94*2e36db14SWarner Losh #size-cells = <1>; 95*2e36db14SWarner Losh interrupt-parent = <&tzic>; 96*2e36db14SWarner Losh ranges; 97*2e36db14SWarner Losh 98*2e36db14SWarner Losh aips@50000000 { /* AIPS1 */ 99*2e36db14SWarner Losh compatible = "fsl,aips-bus", "simple-bus"; 100*2e36db14SWarner Losh #address-cells = <1>; 101*2e36db14SWarner Losh #size-cells = <1>; 102*2e36db14SWarner Losh interrupt-parent = <&tzic>; 103*2e36db14SWarner Losh ranges; 104*2e36db14SWarner Losh 105*2e36db14SWarner Losh /* Required by many devices, so better to stay first */ 106*2e36db14SWarner Losh /* 53FD4000 0x4000 CCM */ 107*2e36db14SWarner Losh clock@53fd4000 { 108*2e36db14SWarner Losh compatible = "fsl,imx53-ccm"; 109*2e36db14SWarner Losh /* 63F80000 0x4000 DPLLIP1 */ 110*2e36db14SWarner Losh /* 63F84000 0x4000 DPLLIP2 */ 111*2e36db14SWarner Losh /* 63F88000 0x4000 DPLLIP3 */ 112*2e36db14SWarner Losh reg = <0x53fd4000 0x4000 113*2e36db14SWarner Losh 0x63F80000 0x4000 114*2e36db14SWarner Losh 0x63F84000 0x4000 115*2e36db14SWarner Losh 0x63F88000 0x4000>; 116*2e36db14SWarner Losh interrupt-parent = <&tzic>; 117*2e36db14SWarner Losh interrupts = <71 72>; 118*2e36db14SWarner Losh status = "disabled"; 119*2e36db14SWarner Losh }; 120*2e36db14SWarner Losh 121*2e36db14SWarner Losh /* 122*2e36db14SWarner Losh * GPIO modules moved up - to have it attached for 123*2e36db14SWarner Losh * drivers which rely on GPIO 124*2e36db14SWarner Losh */ 125*2e36db14SWarner Losh /* 53F84000 0x4000 GPIO1 */ 126*2e36db14SWarner Losh gpio1: gpio@53f84000 { 127*2e36db14SWarner Losh compatible = "fsl,imx53-gpio"; 128*2e36db14SWarner Losh reg = <0x53f84000 0x4000>; 129*2e36db14SWarner Losh interrupt-parent = <&tzic>; 130*2e36db14SWarner Losh interrupts = <50 51 42 43 44 45 46 47 48 49>; 131*2e36db14SWarner Losh /* TODO: use <> also */ 132*2e36db14SWarner Losh gpio-controller; 133*2e36db14SWarner Losh #gpio-cells = <2>; 134*2e36db14SWarner Losh interrupt-controller; 135*2e36db14SWarner Losh #interrupt-cells = <1>; 136*2e36db14SWarner Losh }; 137*2e36db14SWarner Losh 138*2e36db14SWarner Losh /* 53F88000 0x4000 GPIO2 */ 139*2e36db14SWarner Losh gpio2: gpio@53f88000 { 140*2e36db14SWarner Losh compatible = "fsl,imx53-gpio"; 141*2e36db14SWarner Losh reg = <0x53f88000 0x4000>; 142*2e36db14SWarner Losh interrupt-parent = <&tzic>; 143*2e36db14SWarner Losh interrupts = <52 53>; 144*2e36db14SWarner Losh gpio-controller; 145*2e36db14SWarner Losh #gpio-cells = <2>; 146*2e36db14SWarner Losh interrupt-controller; 147*2e36db14SWarner Losh #interrupt-cells = <1>; 148*2e36db14SWarner Losh }; 149*2e36db14SWarner Losh 150*2e36db14SWarner Losh /* 53F8C000 0x4000 GPIO3 */ 151*2e36db14SWarner Losh gpio3: gpio@53f8c000 { 152*2e36db14SWarner Losh compatible = "fsl,imx53-gpio"; 153*2e36db14SWarner Losh reg = <0x53f8c000 0x4000>; 154*2e36db14SWarner Losh interrupt-parent = <&tzic>; 155*2e36db14SWarner Losh interrupts = <54 55>; 156*2e36db14SWarner Losh gpio-controller; 157*2e36db14SWarner Losh #gpio-cells = <2>; 158*2e36db14SWarner Losh interrupt-controller; 159*2e36db14SWarner Losh #interrupt-cells = <1>; 160*2e36db14SWarner Losh }; 161*2e36db14SWarner Losh 162*2e36db14SWarner Losh /* 53F90000 0x4000 GPIO4 */ 163*2e36db14SWarner Losh gpio4: gpio@53f90000 { 164*2e36db14SWarner Losh compatible = "fsl,imx53-gpio"; 165*2e36db14SWarner Losh reg = <0x53f90000 0x4000>; 166*2e36db14SWarner Losh interrupt-parent = <&tzic>; 167*2e36db14SWarner Losh interrupts = <56 57>; 168*2e36db14SWarner Losh gpio-controller; 169*2e36db14SWarner Losh #gpio-cells = <2>; 170*2e36db14SWarner Losh interrupt-controller; 171*2e36db14SWarner Losh #interrupt-cells = <1>; 172*2e36db14SWarner Losh }; 173*2e36db14SWarner Losh 174*2e36db14SWarner Losh /* 53FDC000 0x4000 GPIO5 */ 175*2e36db14SWarner Losh gpio5: gpio@53fdc000 { 176*2e36db14SWarner Losh compatible = "fsl,imx53-gpio"; 177*2e36db14SWarner Losh reg = <0x53fdc000 0x4000>; 178*2e36db14SWarner Losh interrupt-parent = <&tzic>; 179*2e36db14SWarner Losh interrupts = <103 104>; 180*2e36db14SWarner Losh gpio-controller; 181*2e36db14SWarner Losh #gpio-cells = <2>; 182*2e36db14SWarner Losh interrupt-controller; 183*2e36db14SWarner Losh #interrupt-cells = <1>; 184*2e36db14SWarner Losh }; 185*2e36db14SWarner Losh 186*2e36db14SWarner Losh /* 53FE0000 0x4000 GPIO6 */ 187*2e36db14SWarner Losh gpio6: gpio@53fe0000 { 188*2e36db14SWarner Losh compatible = "fsl,imx53-gpio"; 189*2e36db14SWarner Losh reg = <0x53fe0000 0x4000>; 190*2e36db14SWarner Losh interrupt-parent = <&tzic>; 191*2e36db14SWarner Losh interrupts = <105 106>; 192*2e36db14SWarner Losh gpio-controller; 193*2e36db14SWarner Losh #gpio-cells = <2>; 194*2e36db14SWarner Losh interrupt-controller; 195*2e36db14SWarner Losh #interrupt-cells = <1>; 196*2e36db14SWarner Losh }; 197*2e36db14SWarner Losh 198*2e36db14SWarner Losh /* 53FE4000 0x4000 GPIO5 */ 199*2e36db14SWarner Losh gpio7: gpio@53fe4000 { 200*2e36db14SWarner Losh compatible = "fsl,imx53-gpio"; 201*2e36db14SWarner Losh reg = <0x53fe4000 0x4000>; 202*2e36db14SWarner Losh interrupt-parent = <&tzic>; 203*2e36db14SWarner Losh interrupts = <107 108>; 204*2e36db14SWarner Losh gpio-controller; 205*2e36db14SWarner Losh #gpio-cells = <2>; 206*2e36db14SWarner Losh interrupt-controller; 207*2e36db14SWarner Losh #interrupt-cells = <1>; 208*2e36db14SWarner Losh }; 209*2e36db14SWarner Losh 210*2e36db14SWarner Losh spba@50000000 { 211*2e36db14SWarner Losh compatible = "fsl,spba-bus", "simple-bus"; 212*2e36db14SWarner Losh #address-cells = <1>; 213*2e36db14SWarner Losh #size-cells = <1>; 214*2e36db14SWarner Losh interrupt-parent = <&tzic>; 215*2e36db14SWarner Losh ranges; 216*2e36db14SWarner Losh 217*2e36db14SWarner Losh /* 50004000 0x4000 ESDHC 1 */ 218*2e36db14SWarner Losh esdhc@50004000 { 219*2e36db14SWarner Losh compatible = "fsl,imx53-esdhc"; 220*2e36db14SWarner Losh reg = <0x50004000 0x4000>; 221*2e36db14SWarner Losh interrupt-parent = <&tzic>; interrupts = <1>; 222*2e36db14SWarner Losh status = "disabled"; 223*2e36db14SWarner Losh }; 224*2e36db14SWarner Losh 225*2e36db14SWarner Losh /* 50008000 0x4000 ESDHC 2 */ 226*2e36db14SWarner Losh esdhc@50008000 { 227*2e36db14SWarner Losh compatible = "fsl,imx53-esdhc"; 228*2e36db14SWarner Losh reg = <0x50008000 0x4000>; 229*2e36db14SWarner Losh interrupt-parent = <&tzic>; interrupts = <2>; 230*2e36db14SWarner Losh status = "disabled"; 231*2e36db14SWarner Losh }; 232*2e36db14SWarner Losh 233*2e36db14SWarner Losh /* 5000C000 0x4000 UART 3 */ 234*2e36db14SWarner Losh uart3: serial@5000c000 { 235*2e36db14SWarner Losh compatible = "fsl,imx53-uart", "fsl,imx-uart"; 236*2e36db14SWarner Losh reg = <0x5000c000 0x4000>; 237*2e36db14SWarner Losh interrupt-parent = <&tzic>; 238*2e36db14SWarner Losh interrupts = <33>; 239*2e36db14SWarner Losh status = "disabled"; 240*2e36db14SWarner Losh }; 241*2e36db14SWarner Losh 242*2e36db14SWarner Losh /* 50010000 0x4000 eCSPI1 */ 243*2e36db14SWarner Losh ecspi@50010000 { 244*2e36db14SWarner Losh #address-cells = <1>; 245*2e36db14SWarner Losh #size-cells = <0>; 246*2e36db14SWarner Losh compatible = "fsl,imx53-ecspi"; 247*2e36db14SWarner Losh reg = <0x50010000 0x4000>; 248*2e36db14SWarner Losh interrupt-parent = <&tzic>; 249*2e36db14SWarner Losh interrupts = <36>; 250*2e36db14SWarner Losh status = "disabled"; 251*2e36db14SWarner Losh }; 252*2e36db14SWarner Losh 253*2e36db14SWarner Losh /* 50014000 0x4000 SSI2 irq30 */ 254*2e36db14SWarner Losh SSI2: ssi@50014000 { 255*2e36db14SWarner Losh compatible = "fsl,imx53-ssi"; 256*2e36db14SWarner Losh reg = <0x50014000 0x4000>; 257*2e36db14SWarner Losh interrupt-parent = <&tzic>; 258*2e36db14SWarner Losh interrupts = <30>; 259*2e36db14SWarner Losh status = "disabled"; 260*2e36db14SWarner Losh }; 261*2e36db14SWarner Losh 262*2e36db14SWarner Losh /* 50020000 0x4000 ESDHC 3 */ 263*2e36db14SWarner Losh esdhc@50020000 { 264*2e36db14SWarner Losh compatible = "fsl,imx53-esdhc"; 265*2e36db14SWarner Losh reg = <0x50020000 0x4000>; 266*2e36db14SWarner Losh interrupt-parent = <&tzic>; 267*2e36db14SWarner Losh interrupts = <3>; 268*2e36db14SWarner Losh status = "disabled"; 269*2e36db14SWarner Losh }; 270*2e36db14SWarner Losh 271*2e36db14SWarner Losh /* 50024000 0x4000 ESDHC 4 */ 272*2e36db14SWarner Losh esdhc@50024000 { 273*2e36db14SWarner Losh compatible = "fsl,imx53-esdhc"; 274*2e36db14SWarner Losh reg = <0x50024000 0x4000>; 275*2e36db14SWarner Losh interrupt-parent = <&tzic>; 276*2e36db14SWarner Losh interrupts = <4>; 277*2e36db14SWarner Losh status = "disabled"; 278*2e36db14SWarner Losh }; 279*2e36db14SWarner Losh 280*2e36db14SWarner Losh /* 50028000 0x4000 SPDIF */ 281*2e36db14SWarner Losh /* 91 SPDIF */ 282*2e36db14SWarner Losh 283*2e36db14SWarner Losh pata@50030000 { 284*2e36db14SWarner Losh compatible = "fsl,imx53-ata"; 285*2e36db14SWarner Losh reg = <0x50030000 0x4000>; 286*2e36db14SWarner Losh interrupt-parent = <&tzic>; 287*2e36db14SWarner Losh interrupts = <70>; 288*2e36db14SWarner Losh status = "disabled"; 289*2e36db14SWarner Losh }; 290*2e36db14SWarner Losh 291*2e36db14SWarner Losh /* 50034000 0x4000 SLM */ 292*2e36db14SWarner Losh /* 50038000 0x4000 HSI2C */ 293*2e36db14SWarner Losh /* 64 HS-I2C */ 294*2e36db14SWarner Losh /* 5003C000 0x4000 SPBA */ 295*2e36db14SWarner Losh }; 296*2e36db14SWarner Losh 297*2e36db14SWarner Losh usbphy0: usbphy@0 { 298*2e36db14SWarner Losh compatible = "usb-nop-xceiv"; 299*2e36db14SWarner Losh status = "okay"; 300*2e36db14SWarner Losh }; 301*2e36db14SWarner Losh 302*2e36db14SWarner Losh usbphy1: usbphy@1 { 303*2e36db14SWarner Losh compatible = "usb-nop-xceiv"; 304*2e36db14SWarner Losh status = "okay"; 305*2e36db14SWarner Losh }; 306*2e36db14SWarner Losh 307*2e36db14SWarner Losh usbotg: usb@53f80000 { 308*2e36db14SWarner Losh compatible = "fsl,imx53-usb", "fsl,imx27-usb"; 309*2e36db14SWarner Losh reg = <0x53f80000 0x0200>; 310*2e36db14SWarner Losh interrupts = <18>; 311*2e36db14SWarner Losh fsl,usbphy = <&usbphy0>; 312*2e36db14SWarner Losh status = "disabled"; 313*2e36db14SWarner Losh }; 314*2e36db14SWarner Losh 315*2e36db14SWarner Losh usbh1: usb@53f80200 { 316*2e36db14SWarner Losh compatible = "fsl,imx53-usb", "fsl,imx27-usb"; 317*2e36db14SWarner Losh reg = <0x53f80200 0x0200>; 318*2e36db14SWarner Losh interrupts = <14>; 319*2e36db14SWarner Losh fsl,usbphy = <&usbphy1>; 320*2e36db14SWarner Losh status = "disabled"; 321*2e36db14SWarner Losh }; 322*2e36db14SWarner Losh 323*2e36db14SWarner Losh usbh2: usb@53f80400 { 324*2e36db14SWarner Losh compatible = "fsl,imx53-usb", "fsl,imx27-usb"; 325*2e36db14SWarner Losh reg = <0x53f80400 0x0200>; 326*2e36db14SWarner Losh interrupts = <16>; 327*2e36db14SWarner Losh status = "disabled"; 328*2e36db14SWarner Losh }; 329*2e36db14SWarner Losh 330*2e36db14SWarner Losh usbh3: usb@53f80600 { 331*2e36db14SWarner Losh compatible = "fsl,imx53-usb", "fsl,imx27-usb"; 332*2e36db14SWarner Losh reg = <0x53f80600 0x0200>; 333*2e36db14SWarner Losh interrupts = <17>; 334*2e36db14SWarner Losh status = "disabled"; 335*2e36db14SWarner Losh }; 336*2e36db14SWarner Losh 337*2e36db14SWarner Losh usbmisc: usbmisc@53f80800 { 338*2e36db14SWarner Losh #index-cells = <1>; 339*2e36db14SWarner Losh compatible = "fsl,imx53-usbmisc"; 340*2e36db14SWarner Losh reg = <0x53f80800 0x200>; 341*2e36db14SWarner Losh }; 342*2e36db14SWarner Losh 343*2e36db14SWarner Losh /* 53F98000 0x4000 WDOG1 */ 344*2e36db14SWarner Losh wdog@53f98000 { 345*2e36db14SWarner Losh compatible = "fsl,imx53-wdt"; 346*2e36db14SWarner Losh reg = <0x53f98000 0x4000>; 347*2e36db14SWarner Losh interrupt-parent = <&tzic>; 348*2e36db14SWarner Losh interrupts = <58>; 349*2e36db14SWarner Losh status = "disabled"; 350*2e36db14SWarner Losh }; 351*2e36db14SWarner Losh 352*2e36db14SWarner Losh /* 53F9C000 0x4000 WDOG2 (TZ) */ 353*2e36db14SWarner Losh wdog@53f9c000 { 354*2e36db14SWarner Losh compatible = "fsl,imx53-wdt"; 355*2e36db14SWarner Losh reg = <0x53f9c000 0x4000>; 356*2e36db14SWarner Losh interrupt-parent = <&tzic>; 357*2e36db14SWarner Losh interrupts = <59>; 358*2e36db14SWarner Losh status = "disabled"; 359*2e36db14SWarner Losh }; 360*2e36db14SWarner Losh 361*2e36db14SWarner Losh /* 53F94000 0x4000 KPP */ 362*2e36db14SWarner Losh keyboard@53f94000 { 363*2e36db14SWarner Losh compatible = "fsl,imx53-kpp"; 364*2e36db14SWarner Losh reg = <0x53f94000 0x4000>; 365*2e36db14SWarner Losh interrupt-parent = <&tzic>; 366*2e36db14SWarner Losh interrupts = <60>; 367*2e36db14SWarner Losh status = "disabled"; 368*2e36db14SWarner Losh }; 369*2e36db14SWarner Losh 370*2e36db14SWarner Losh /* 53FA0000 0x4000 GPT */ 371*2e36db14SWarner Losh timer@53fa0000 { 372*2e36db14SWarner Losh compatible = "fsl,imx53-gpt"; 373*2e36db14SWarner Losh reg = <0x53fa0000 0x4000>; 374*2e36db14SWarner Losh interrupt-parent = <&tzic>; 375*2e36db14SWarner Losh interrupts = <39>; 376*2e36db14SWarner Losh status = "disabled"; 377*2e36db14SWarner Losh }; 378*2e36db14SWarner Losh 379*2e36db14SWarner Losh /* 53FA4000 0x4000 SRTC */ 380*2e36db14SWarner Losh 381*2e36db14SWarner Losh rtc@53fa4000 { 382*2e36db14SWarner Losh compatible = "fsl,imx53-srtc"; 383*2e36db14SWarner Losh reg = <0x53fa4000 0x4000>; 384*2e36db14SWarner Losh interrupt-parent = <&tzic>; 385*2e36db14SWarner Losh interrupts = <24 25>; 386*2e36db14SWarner Losh status = "disabled"; 387*2e36db14SWarner Losh }; 388*2e36db14SWarner Losh 389*2e36db14SWarner Losh /* 53FA8000 0x4000 IOMUXC */ 390*2e36db14SWarner Losh iomux@53fa8000 { 391*2e36db14SWarner Losh compatible = "fsl,imx53-iomux"; 392*2e36db14SWarner Losh reg = <0x53fa8000 0x4000>; 393*2e36db14SWarner Losh interrupt-parent = <&tzic>; 394*2e36db14SWarner Losh interrupts = <7>; 395*2e36db14SWarner Losh }; 396*2e36db14SWarner Losh 397*2e36db14SWarner Losh /* 53FAC000 0x4000 EPIT1 */ 398*2e36db14SWarner Losh epit1: timer@53fac000 { 399*2e36db14SWarner Losh compatible = "fsl,imx53-epit"; 400*2e36db14SWarner Losh reg = <0x53fac000 0x4000>; 401*2e36db14SWarner Losh interrupt-parent = <&tzic>; 402*2e36db14SWarner Losh interrupts = <40>; 403*2e36db14SWarner Losh status = "disabled"; 404*2e36db14SWarner Losh }; 405*2e36db14SWarner Losh 406*2e36db14SWarner Losh /* 53FB0000 0x4000 EPIT2 */ 407*2e36db14SWarner Losh epit2: timer@53fb0000 { 408*2e36db14SWarner Losh compatible = "fsl,imx53-epit"; 409*2e36db14SWarner Losh reg = <0x53fb0000 0x4000>; 410*2e36db14SWarner Losh interrupt-parent = <&tzic>; 411*2e36db14SWarner Losh interrupts = <41>; 412*2e36db14SWarner Losh status = "disabled"; 413*2e36db14SWarner Losh }; 414*2e36db14SWarner Losh 415*2e36db14SWarner Losh /* 53FB4000 0x4000 PWM1 */ 416*2e36db14SWarner Losh pwm@53fb4000 { 417*2e36db14SWarner Losh compatible = "fsl,imx53-pwm"; 418*2e36db14SWarner Losh reg = <0x53fb4000 0x4000>; 419*2e36db14SWarner Losh interrupt-parent = <&tzic>; 420*2e36db14SWarner Losh interrupts = <61>; 421*2e36db14SWarner Losh status = "disabled"; 422*2e36db14SWarner Losh }; 423*2e36db14SWarner Losh 424*2e36db14SWarner Losh /* 53FB8000 0x4000 PWM2 */ 425*2e36db14SWarner Losh pwm@53fb8000 { 426*2e36db14SWarner Losh compatible = "fsl,imx53-pwm"; 427*2e36db14SWarner Losh reg = <0x53fb8000 0x4000>; 428*2e36db14SWarner Losh interrupt-parent = <&tzic>; 429*2e36db14SWarner Losh interrupts = <94>; 430*2e36db14SWarner Losh status = "disabled"; 431*2e36db14SWarner Losh }; 432*2e36db14SWarner Losh 433*2e36db14SWarner Losh /* 53FBC000 0x4000 UART 1 */ 434*2e36db14SWarner Losh uart1: serial@53fbc000 { 435*2e36db14SWarner Losh compatible = "fsl,imx53-uart", "fsl,imx-uart"; 436*2e36db14SWarner Losh reg = <0x53fbc000 0x4000>; 437*2e36db14SWarner Losh interrupt-parent = <&tzic>; 438*2e36db14SWarner Losh interrupts = <31>; 439*2e36db14SWarner Losh status = "disabled"; 440*2e36db14SWarner Losh }; 441*2e36db14SWarner Losh 442*2e36db14SWarner Losh /* 53FC0000 0x4000 UART 2 */ 443*2e36db14SWarner Losh uart2: serial@53fc0000 { 444*2e36db14SWarner Losh compatible = "fsl,imx53-uart", "fsl,imx-uart"; 445*2e36db14SWarner Losh reg = <0x53fc0000 0x4000>; 446*2e36db14SWarner Losh interrupt-parent = <&tzic>; 447*2e36db14SWarner Losh interrupts = <32>; 448*2e36db14SWarner Losh status = "disabled"; 449*2e36db14SWarner Losh }; 450*2e36db14SWarner Losh 451*2e36db14SWarner Losh /* 53FF0000 0x4000 UART 4 */ 452*2e36db14SWarner Losh uart4: serial@53ff0000 { 453*2e36db14SWarner Losh compatible = "fsl,imx53-uart", "fsl,imx-uart"; 454*2e36db14SWarner Losh reg = <0x53ff0000 0x4000>; 455*2e36db14SWarner Losh interrupt-parent = <&tzic>; 456*2e36db14SWarner Losh interrupts = <13>; 457*2e36db14SWarner Losh status = "disabled"; 458*2e36db14SWarner Losh }; 459*2e36db14SWarner Losh 460*2e36db14SWarner Losh /* 53FD0000 0x4000 SRC */ 461*2e36db14SWarner Losh reset@53fd0000 { 462*2e36db14SWarner Losh compatible = "fsl,imx53-src"; 463*2e36db14SWarner Losh reg = <0x53fd0000 0x4000>; 464*2e36db14SWarner Losh interrupt-parent = <&tzic>; 465*2e36db14SWarner Losh interrupts = <75>; 466*2e36db14SWarner Losh status = "disabled"; 467*2e36db14SWarner Losh }; 468*2e36db14SWarner Losh /* 53FD8000 0x4000 GPC */ 469*2e36db14SWarner Losh power@53fd8000 { 470*2e36db14SWarner Losh compatible = "fsl,imx53-gpc"; 471*2e36db14SWarner Losh reg = <0x53fd8000 0x4000>; 472*2e36db14SWarner Losh interrupt-parent = <&tzic>; 473*2e36db14SWarner Losh interrupts = <73 74>; 474*2e36db14SWarner Losh status = "disabled"; 475*2e36db14SWarner Losh }; 476*2e36db14SWarner Losh i2c@53fec000 { 477*2e36db14SWarner Losh #address-cells = <1>; 478*2e36db14SWarner Losh #size-cells = <0>; 479*2e36db14SWarner Losh compatible = "fsl,imx53-i2c", "fsl,imx1-i2c", 480*2e36db14SWarner Losh "fsl,imx-i2c"; 481*2e36db14SWarner Losh reg = <0x53fec000 0x4000>; 482*2e36db14SWarner Losh interrupt-parent = <&tzic>; 483*2e36db14SWarner Losh interrupts = <64>; 484*2e36db14SWarner Losh status = "disabled"; 485*2e36db14SWarner Losh }; 486*2e36db14SWarner Losh }; 487*2e36db14SWarner Losh 488*2e36db14SWarner Losh aips@60000000 { /* AIPS2 */ 489*2e36db14SWarner Losh compatible = "fsl,aips-bus", "simple-bus"; 490*2e36db14SWarner Losh #address-cells = <1>; 491*2e36db14SWarner Losh #size-cells = <1>; 492*2e36db14SWarner Losh interrupt-parent = <&tzic>; 493*2e36db14SWarner Losh ranges; 494*2e36db14SWarner Losh 495*2e36db14SWarner Losh /* 63F90000 0x4000 UART 5 */ 496*2e36db14SWarner Losh uart5: serial@63f90000 { 497*2e36db14SWarner Losh compatible = "fsl,imx53-uart", "fsl,imx-uart"; 498*2e36db14SWarner Losh reg = <0x63f90000 0x4000>; 499*2e36db14SWarner Losh interrupt-parent = <&tzic>; 500*2e36db14SWarner Losh interrupts = <32>; 501*2e36db14SWarner Losh status = "disabled"; 502*2e36db14SWarner Losh }; 503*2e36db14SWarner Losh 504*2e36db14SWarner Losh /* 63F94000 0x4000 AHBMAX */ 505*2e36db14SWarner Losh /* 63F98000 0x4000 IIM */ 506*2e36db14SWarner Losh /* 507*2e36db14SWarner Losh * 69 IIM Interrupt request to the processor. 508*2e36db14SWarner Losh * Indicates to the processor that program or 509*2e36db14SWarner Losh * explicit. 510*2e36db14SWarner Losh */ 511*2e36db14SWarner Losh /* 63F9C000 0x4000 CSU */ 512*2e36db14SWarner Losh /* 513*2e36db14SWarner Losh * 27 CSU Interrupt Request 1. Indicates to the 514*2e36db14SWarner Losh * processor that one or more alarm inputs were. 515*2e36db14SWarner Losh */ 516*2e36db14SWarner Losh 517*2e36db14SWarner Losh /* 63FA0000 0x4000 TIGERP_PLATFORM_NE_32K_256K */ 518*2e36db14SWarner Losh /* irq76 Neon Monitor Interrupt */ 519*2e36db14SWarner Losh /* irq77 Performance Unit Interrupt */ 520*2e36db14SWarner Losh /* irq78 CTI IRQ */ 521*2e36db14SWarner Losh /* irq79 Debug Interrupt, Cross-Trigger Interface 1 */ 522*2e36db14SWarner Losh /* irq80 Debug Interrupt, Cross-Trigger Interface 1 */ 523*2e36db14SWarner Losh /* irq89 Debug Interrupt, Cross-Trigger Interface 2 */ 524*2e36db14SWarner Losh /* irq98 Debug Interrupt, Cross-Trigger Interface 3 */ 525*2e36db14SWarner Losh 526*2e36db14SWarner Losh /* 63FA4000 0x4000 OWIRE irq88 */ 527*2e36db14SWarner Losh /* 63FA8000 0x4000 FIRI irq93 */ 528*2e36db14SWarner Losh /* 63FAC000 0x4000 eCSPI2 */ 529*2e36db14SWarner Losh ecspi@63fac000 { 530*2e36db14SWarner Losh #address-cells = <1>; 531*2e36db14SWarner Losh #size-cells = <0>; 532*2e36db14SWarner Losh compatible = "fsl,imx53-ecspi"; 533*2e36db14SWarner Losh reg = <0x63fac000 0x4000>; 534*2e36db14SWarner Losh interrupt-parent = <&tzic>; 535*2e36db14SWarner Losh interrupts = <37>; 536*2e36db14SWarner Losh status = "disabled"; 537*2e36db14SWarner Losh }; 538*2e36db14SWarner Losh 539*2e36db14SWarner Losh /* 63FB0000 0x4000 SDMA */ 540*2e36db14SWarner Losh sdma@63fb0000 { 541*2e36db14SWarner Losh compatible = "fsl,imx53-sdma"; 542*2e36db14SWarner Losh reg = <0x63fb0000 0x4000>; 543*2e36db14SWarner Losh interrupt-parent = <&tzic>; 544*2e36db14SWarner Losh interrupts = <6>; 545*2e36db14SWarner Losh }; 546*2e36db14SWarner Losh 547*2e36db14SWarner Losh /* 63FB4000 0x4000 SCC */ 548*2e36db14SWarner Losh /* 21 SCC Security Monitor High Priority Interrupt. */ 549*2e36db14SWarner Losh /* 22 SCC Secure (TrustZone) Interrupt. */ 550*2e36db14SWarner Losh /* 23 SCC Regular (Non-Secure) Interrupt. */ 551*2e36db14SWarner Losh 552*2e36db14SWarner Losh /* 63FB8000 0x4000 ROMCP */ 553*2e36db14SWarner Losh /* 63FBC000 0x4000 RTIC */ 554*2e36db14SWarner Losh /* 555*2e36db14SWarner Losh * 26 RTIC RTIC (Trust Zone) Interrupt Request. 556*2e36db14SWarner Losh * Indicates that the RTIC has completed hashing the 557*2e36db14SWarner Losh */ 558*2e36db14SWarner Losh 559*2e36db14SWarner Losh /* 63FC0000 0x4000 CSPI */ 560*2e36db14SWarner Losh cspi@63fc0000 { 561*2e36db14SWarner Losh #address-cells = <1>; 562*2e36db14SWarner Losh #size-cells = <0>; 563*2e36db14SWarner Losh compatible = "fsl,imx53-cspi"; 564*2e36db14SWarner Losh reg = <0x63fc0000 0x4000>; 565*2e36db14SWarner Losh interrupt-parent = <&tzic>; 566*2e36db14SWarner Losh interrupts = <38>; 567*2e36db14SWarner Losh status = "disabled"; 568*2e36db14SWarner Losh }; 569*2e36db14SWarner Losh 570*2e36db14SWarner Losh /* 63FC4000 0x4000 I2C2 */ 571*2e36db14SWarner Losh i2c@63fc4000 { 572*2e36db14SWarner Losh #address-cells = <1>; 573*2e36db14SWarner Losh #size-cells = <0>; 574*2e36db14SWarner Losh compatible = "fsl,imx53-i2c", "fsl,imx1-i2c", "fsl,imx-i2c"; 575*2e36db14SWarner Losh reg = <0x63fc4000 0x4000>; 576*2e36db14SWarner Losh interrupt-parent = <&tzic>; 577*2e36db14SWarner Losh interrupts = <63>; 578*2e36db14SWarner Losh status = "disabled"; 579*2e36db14SWarner Losh }; 580*2e36db14SWarner Losh 581*2e36db14SWarner Losh /* 63FC8000 0x4000 I2C1 */ 582*2e36db14SWarner Losh i2c@63fc8000 { 583*2e36db14SWarner Losh #address-cells = <1>; 584*2e36db14SWarner Losh #size-cells = <0>; 585*2e36db14SWarner Losh compatible = "fsl,imx53-i2c", "fsl,imx1-i2c", "fsl,imx-i2c"; 586*2e36db14SWarner Losh reg = <0x63fc8000 0x4000>; 587*2e36db14SWarner Losh interrupt-parent = <&tzic>; 588*2e36db14SWarner Losh interrupts = <62>; 589*2e36db14SWarner Losh status = "disabled"; 590*2e36db14SWarner Losh }; 591*2e36db14SWarner Losh 592*2e36db14SWarner Losh /* 63FCC000 0x4000 SSI1 */ 593*2e36db14SWarner Losh /* 29 SSI1 SSI-1 Interrupt Request */ 594*2e36db14SWarner Losh SSI1: ssi@63fcc000 { 595*2e36db14SWarner Losh compatible = "fsl,imx53-ssi"; 596*2e36db14SWarner Losh reg = <0x63fcc000 0x4000>; 597*2e36db14SWarner Losh interrupt-parent = <&tzic>; 598*2e36db14SWarner Losh interrupts = <29>; 599*2e36db14SWarner Losh status = "disabled"; 600*2e36db14SWarner Losh }; 601*2e36db14SWarner Losh 602*2e36db14SWarner Losh /* 63FD0000 0x4000 AUDMUX */ 603*2e36db14SWarner Losh audmux@63fd4000 { 604*2e36db14SWarner Losh compatible = "fsl,imx53-audmux"; 605*2e36db14SWarner Losh reg = <0x63fd4000 0x4000>; 606*2e36db14SWarner Losh status = "disabled"; 607*2e36db14SWarner Losh }; 608*2e36db14SWarner Losh 609*2e36db14SWarner Losh /* 63FD8000 0x4000 EXTMC */ 610*2e36db14SWarner Losh /* 8 EXTMC (NFC) */ 611*2e36db14SWarner Losh /* 15 EXTMC */ 612*2e36db14SWarner Losh /* 97 EXTMC Boot sequence completed interrupt */ 613*2e36db14SWarner Losh /* 614*2e36db14SWarner Losh * 101 EMI Indicates all pages have been transferred 615*2e36db14SWarner Losh * to NFC during an auto program operation. 616*2e36db14SWarner Losh */ 617*2e36db14SWarner Losh 618*2e36db14SWarner Losh /* 83FE4000 0x4000 SIM */ 619*2e36db14SWarner Losh /* 67 SIM intr composed of oef, xte, sdi1, and sdi0 */ 620*2e36db14SWarner Losh /* 68 SIM intr composed of tc, etc, tfe, and rdrf */ 621*2e36db14SWarner Losh 622*2e36db14SWarner Losh /* 63FD_C000 0x4000 apb2ip_pl301_2x2 */ 623*2e36db14SWarner Losh /* 63FE_0000 0x4000 apb2ip_pl301_4x1 */ 624*2e36db14SWarner Losh /* 63FE4000 0x4000 MLB */ 625*2e36db14SWarner Losh /* 63FE8000 0x4000 SSI3 */ 626*2e36db14SWarner Losh /* 96 SSI3 SSI-3 Interrupt Request */ 627*2e36db14SWarner Losh SSI3: ssi@63fe8000 { 628*2e36db14SWarner Losh compatible = "fsl,imx51-ssi"; 629*2e36db14SWarner Losh reg = <0x63fe8000 0x4000>; 630*2e36db14SWarner Losh interrupt-parent = <&tzic>; 631*2e36db14SWarner Losh interrupts = <96>; 632*2e36db14SWarner Losh status = "disabled"; 633*2e36db14SWarner Losh }; 634*2e36db14SWarner Losh 635*2e36db14SWarner Losh /* 63FEC000 0x4000 FEC */ 636*2e36db14SWarner Losh ethernet@63fec000 { 637*2e36db14SWarner Losh compatible = "fsl,imx53-fec"; 638*2e36db14SWarner Losh reg = <0x63fec000 0x4000>; 639*2e36db14SWarner Losh interrupt-parent = <&tzic>; 640*2e36db14SWarner Losh interrupts = <87>; 641*2e36db14SWarner Losh status = "disabled"; 642*2e36db14SWarner Losh }; 643*2e36db14SWarner Losh 644*2e36db14SWarner Losh /* 63FF0000 0x4000 TVE */ 645*2e36db14SWarner Losh /* 92 TVE */ 646*2e36db14SWarner Losh /* 63FF4000 0x4000 VPU */ 647*2e36db14SWarner Losh /* 9 VPU */ 648*2e36db14SWarner Losh /* 100 VPU Idle interrupt from VPU */ 649*2e36db14SWarner Losh 650*2e36db14SWarner Losh /* 63FF8000 0x4000 SAHARA */ 651*2e36db14SWarner Losh /* 19 SAHARA SAHARA host 0 (TrustZone) Intr */ 652*2e36db14SWarner Losh /* 20 SAHARA SAHARA host 1 (non-TrustZone) Intr */ 653*2e36db14SWarner Losh }; 654*2e36db14SWarner Losh }; 655*2e36db14SWarner Losh 656*2e36db14SWarner Losh localbus@10000000 { 657*2e36db14SWarner Losh compatible = "simple-bus"; 658*2e36db14SWarner Losh #address-cells = <1>; 659*2e36db14SWarner Losh #size-cells = <1>; 660*2e36db14SWarner Losh ranges; 661*2e36db14SWarner Losh 662*2e36db14SWarner Losh sata@10000000 { 663*2e36db14SWarner Losh compatible = "fsl,imx53-ata"; 664*2e36db14SWarner Losh reg = <0x10000000 0x4000>; 665*2e36db14SWarner Losh interrupt-parent = <&tzic>; 666*2e36db14SWarner Losh interrupts = <28>; 667*2e36db14SWarner Losh status = "disabled"; 668*2e36db14SWarner Losh }; 669*2e36db14SWarner Losh 670*2e36db14SWarner Losh vga: ipu3@1E000000 { 671*2e36db14SWarner Losh compatible = "fsl,ipu3"; 672*2e36db14SWarner Losh reg = < 673*2e36db14SWarner Losh 0x1E000000 0x08000 /* CM */ 674*2e36db14SWarner Losh 0x1E008000 0x08000 /* IDMAC */ 675*2e36db14SWarner Losh 0x1E018000 0x08000 /* DP */ 676*2e36db14SWarner Losh 0x1E020000 0x08000 /* IC */ 677*2e36db14SWarner Losh 0x1E028000 0x08000 /* IRT */ 678*2e36db14SWarner Losh 0x1E030000 0x08000 /* CSI0 */ 679*2e36db14SWarner Losh 0x1E038000 0x08000 /* CSI1 */ 680*2e36db14SWarner Losh 0x1E040000 0x08000 /* DI0 */ 681*2e36db14SWarner Losh 0x1E048000 0x08000 /* DI1 */ 682*2e36db14SWarner Losh 0x1E050000 0x08000 /* SMFC */ 683*2e36db14SWarner Losh 0x1E058000 0x08000 /* DC */ 684*2e36db14SWarner Losh 0x1E060000 0x08000 /* DMFC */ 685*2e36db14SWarner Losh 0x1E068000 0x08000 /* VDI */ 686*2e36db14SWarner Losh 0x1F000000 0x20000 /* CPMEM */ 687*2e36db14SWarner Losh 0x1F020000 0x20000 /* LUT */ 688*2e36db14SWarner Losh 0x1F040000 0x20000 /* SRM */ 689*2e36db14SWarner Losh 0x1F060000 0x20000 /* TPM */ 690*2e36db14SWarner Losh 0x1F080000 0x20000 /* DCTMPL */ 691*2e36db14SWarner Losh >; 692*2e36db14SWarner Losh interrupt-parent = <&tzic>; 693*2e36db14SWarner Losh interrupts = < 694*2e36db14SWarner Losh 10 /* IPUEX Error */ 695*2e36db14SWarner Losh 11 /* IPUEX Sync */ 696*2e36db14SWarner Losh >; 697*2e36db14SWarner Losh status = "disabled"; 698*2e36db14SWarner Losh }; 699*2e36db14SWarner Losh }; 700*2e36db14SWarner Losh}; 701*2e36db14SWarner Losh 702*2e36db14SWarner Losh/* 703*2e36db14SWarner Losh 704*2e36db14SWarner LoshTODO: Not mapped interrupts 705*2e36db14SWarner Losh 706*2e36db14SWarner Losh5 DAP 707*2e36db14SWarner Losh84 GPU2D (OpenVG) general interrupt 708*2e36db14SWarner Losh85 GPU2D (OpenVG) busy signal (for S/W power gating feasibility) 709*2e36db14SWarner Losh12 GPU3D 710*2e36db14SWarner Losh102 GPU3D Idle interrupt from GPU3D (for S/W power gating) 711*2e36db14SWarner Losh90 SJC 712*2e36db14SWarner Losh*/ 713