1*724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0+ 2*724ba675SRob Herring// 3*724ba675SRob Herring// Copyright 2011 Freescale Semiconductor, Inc. 4*724ba675SRob Herring// Copyright 2011 Linaro Ltd. 5*724ba675SRob Herring 6*724ba675SRob Herring#include "imx51-pinfunc.h" 7*724ba675SRob Herring#include <dt-bindings/clock/imx5-clock.h> 8*724ba675SRob Herring#include <dt-bindings/gpio/gpio.h> 9*724ba675SRob Herring#include <dt-bindings/input/input.h> 10*724ba675SRob Herring#include <dt-bindings/interrupt-controller/irq.h> 11*724ba675SRob Herring 12*724ba675SRob Herring/ { 13*724ba675SRob Herring #address-cells = <1>; 14*724ba675SRob Herring #size-cells = <1>; 15*724ba675SRob Herring /* 16*724ba675SRob Herring * The decompressor and also some bootloaders rely on a 17*724ba675SRob Herring * pre-existing /chosen node to be available to insert the 18*724ba675SRob Herring * command line and merge other ATAGS info. 19*724ba675SRob Herring */ 20*724ba675SRob Herring chosen {}; 21*724ba675SRob Herring 22*724ba675SRob Herring aliases { 23*724ba675SRob Herring ethernet0 = &fec; 24*724ba675SRob Herring gpio0 = &gpio1; 25*724ba675SRob Herring gpio1 = &gpio2; 26*724ba675SRob Herring gpio2 = &gpio3; 27*724ba675SRob Herring gpio3 = &gpio4; 28*724ba675SRob Herring i2c0 = &i2c1; 29*724ba675SRob Herring i2c1 = &i2c2; 30*724ba675SRob Herring mmc0 = &esdhc1; 31*724ba675SRob Herring mmc1 = &esdhc2; 32*724ba675SRob Herring mmc2 = &esdhc3; 33*724ba675SRob Herring mmc3 = &esdhc4; 34*724ba675SRob Herring serial0 = &uart1; 35*724ba675SRob Herring serial1 = &uart2; 36*724ba675SRob Herring serial2 = &uart3; 37*724ba675SRob Herring spi0 = &ecspi1; 38*724ba675SRob Herring spi1 = &ecspi2; 39*724ba675SRob Herring spi2 = &cspi; 40*724ba675SRob Herring }; 41*724ba675SRob Herring 42*724ba675SRob Herring tzic: tz-interrupt-controller@e0000000 { 43*724ba675SRob Herring compatible = "fsl,imx51-tzic", "fsl,tzic"; 44*724ba675SRob Herring interrupt-controller; 45*724ba675SRob Herring #interrupt-cells = <1>; 46*724ba675SRob Herring reg = <0xe0000000 0x4000>; 47*724ba675SRob Herring }; 48*724ba675SRob Herring 49*724ba675SRob Herring clocks { 50*724ba675SRob Herring ckil { 51*724ba675SRob Herring compatible = "fixed-clock"; 52*724ba675SRob Herring #clock-cells = <0>; 53*724ba675SRob Herring clock-frequency = <32768>; 54*724ba675SRob Herring }; 55*724ba675SRob Herring 56*724ba675SRob Herring ckih1 { 57*724ba675SRob Herring compatible = "fixed-clock"; 58*724ba675SRob Herring #clock-cells = <0>; 59*724ba675SRob Herring clock-frequency = <0>; 60*724ba675SRob Herring }; 61*724ba675SRob Herring 62*724ba675SRob Herring ckih2 { 63*724ba675SRob Herring compatible = "fixed-clock"; 64*724ba675SRob Herring #clock-cells = <0>; 65*724ba675SRob Herring clock-frequency = <0>; 66*724ba675SRob Herring }; 67*724ba675SRob Herring 68*724ba675SRob Herring osc { 69*724ba675SRob Herring compatible = "fixed-clock"; 70*724ba675SRob Herring #clock-cells = <0>; 71*724ba675SRob Herring clock-frequency = <24000000>; 72*724ba675SRob Herring }; 73*724ba675SRob Herring }; 74*724ba675SRob Herring 75*724ba675SRob Herring cpus { 76*724ba675SRob Herring #address-cells = <1>; 77*724ba675SRob Herring #size-cells = <0>; 78*724ba675SRob Herring cpu: cpu@0 { 79*724ba675SRob Herring device_type = "cpu"; 80*724ba675SRob Herring compatible = "arm,cortex-a8"; 81*724ba675SRob Herring reg = <0>; 82*724ba675SRob Herring clock-latency = <62500>; 83*724ba675SRob Herring clocks = <&clks IMX5_CLK_CPU_PODF>; 84*724ba675SRob Herring clock-names = "cpu"; 85*724ba675SRob Herring operating-points = < 86*724ba675SRob Herring 166000 1000000 87*724ba675SRob Herring 600000 1050000 88*724ba675SRob Herring 800000 1100000 89*724ba675SRob Herring >; 90*724ba675SRob Herring voltage-tolerance = <5>; 91*724ba675SRob Herring }; 92*724ba675SRob Herring }; 93*724ba675SRob Herring 94*724ba675SRob Herring pmu: pmu { 95*724ba675SRob Herring compatible = "arm,cortex-a8-pmu"; 96*724ba675SRob Herring interrupt-parent = <&tzic>; 97*724ba675SRob Herring interrupts = <77>; 98*724ba675SRob Herring }; 99*724ba675SRob Herring 100*724ba675SRob Herring usbphy0: usbphy0 { 101*724ba675SRob Herring compatible = "usb-nop-xceiv"; 102*724ba675SRob Herring clocks = <&clks IMX5_CLK_USB_PHY_GATE>; 103*724ba675SRob Herring clock-names = "main_clk"; 104*724ba675SRob Herring #phy-cells = <0>; 105*724ba675SRob Herring }; 106*724ba675SRob Herring 107*724ba675SRob Herring capture-subsystem { 108*724ba675SRob Herring compatible = "fsl,imx-capture-subsystem"; 109*724ba675SRob Herring ports = <&ipu_csi0>, <&ipu_csi1>; 110*724ba675SRob Herring }; 111*724ba675SRob Herring 112*724ba675SRob Herring display-subsystem { 113*724ba675SRob Herring compatible = "fsl,imx-display-subsystem"; 114*724ba675SRob Herring ports = <&ipu_di0>, <&ipu_di1>; 115*724ba675SRob Herring }; 116*724ba675SRob Herring 117*724ba675SRob Herring soc: soc { 118*724ba675SRob Herring #address-cells = <1>; 119*724ba675SRob Herring #size-cells = <1>; 120*724ba675SRob Herring compatible = "simple-bus"; 121*724ba675SRob Herring interrupt-parent = <&tzic>; 122*724ba675SRob Herring ranges; 123*724ba675SRob Herring 124*724ba675SRob Herring iram: sram@1ffe0000 { 125*724ba675SRob Herring compatible = "mmio-sram"; 126*724ba675SRob Herring reg = <0x1ffe0000 0x20000>; 127*724ba675SRob Herring ranges = <0 0x1ffe0000 0x20000>; 128*724ba675SRob Herring #address-cells = <1>; 129*724ba675SRob Herring #size-cells = <1>; 130*724ba675SRob Herring }; 131*724ba675SRob Herring 132*724ba675SRob Herring gpu: gpu@30000000 { 133*724ba675SRob Herring compatible = "amd,imageon-200.1", "amd,imageon"; 134*724ba675SRob Herring reg = <0x30000000 0x20000>; 135*724ba675SRob Herring reg-names = "kgsl_3d0_reg_memory"; 136*724ba675SRob Herring interrupts = <12>; 137*724ba675SRob Herring interrupt-names = "kgsl_3d0_irq"; 138*724ba675SRob Herring clocks = <&clks IMX5_CLK_GPU3D_GATE>, <&clks IMX5_CLK_GARB_GATE>; 139*724ba675SRob Herring clock-names = "core_clk", "mem_iface_clk"; 140*724ba675SRob Herring }; 141*724ba675SRob Herring 142*724ba675SRob Herring ipu: ipu@40000000 { 143*724ba675SRob Herring #address-cells = <1>; 144*724ba675SRob Herring #size-cells = <0>; 145*724ba675SRob Herring compatible = "fsl,imx51-ipu"; 146*724ba675SRob Herring reg = <0x40000000 0x20000000>; 147*724ba675SRob Herring interrupts = <11 10>; 148*724ba675SRob Herring clocks = <&clks IMX5_CLK_IPU_GATE>, 149*724ba675SRob Herring <&clks IMX5_CLK_IPU_DI0_GATE>, 150*724ba675SRob Herring <&clks IMX5_CLK_IPU_DI1_GATE>; 151*724ba675SRob Herring clock-names = "bus", "di0", "di1"; 152*724ba675SRob Herring resets = <&src 2>; 153*724ba675SRob Herring 154*724ba675SRob Herring ipu_csi0: port@0 { 155*724ba675SRob Herring reg = <0>; 156*724ba675SRob Herring }; 157*724ba675SRob Herring 158*724ba675SRob Herring ipu_csi1: port@1 { 159*724ba675SRob Herring reg = <1>; 160*724ba675SRob Herring }; 161*724ba675SRob Herring 162*724ba675SRob Herring ipu_di0: port@2 { 163*724ba675SRob Herring reg = <2>; 164*724ba675SRob Herring 165*724ba675SRob Herring ipu_di0_disp1: endpoint { 166*724ba675SRob Herring }; 167*724ba675SRob Herring }; 168*724ba675SRob Herring 169*724ba675SRob Herring ipu_di1: port@3 { 170*724ba675SRob Herring reg = <3>; 171*724ba675SRob Herring 172*724ba675SRob Herring ipu_di1_disp2: endpoint { 173*724ba675SRob Herring }; 174*724ba675SRob Herring }; 175*724ba675SRob Herring }; 176*724ba675SRob Herring 177*724ba675SRob Herring aips1: bus@70000000 { /* AIPS1 */ 178*724ba675SRob Herring compatible = "fsl,aips-bus", "simple-bus"; 179*724ba675SRob Herring #address-cells = <1>; 180*724ba675SRob Herring #size-cells = <1>; 181*724ba675SRob Herring reg = <0x70000000 0x10000000>; 182*724ba675SRob Herring ranges; 183*724ba675SRob Herring 184*724ba675SRob Herring spba-bus@70000000 { 185*724ba675SRob Herring compatible = "fsl,spba-bus", "simple-bus"; 186*724ba675SRob Herring #address-cells = <1>; 187*724ba675SRob Herring #size-cells = <1>; 188*724ba675SRob Herring reg = <0x70000000 0x40000>; 189*724ba675SRob Herring ranges; 190*724ba675SRob Herring 191*724ba675SRob Herring esdhc1: mmc@70004000 { 192*724ba675SRob Herring compatible = "fsl,imx51-esdhc"; 193*724ba675SRob Herring reg = <0x70004000 0x4000>; 194*724ba675SRob Herring interrupts = <1>; 195*724ba675SRob Herring clocks = <&clks IMX5_CLK_ESDHC1_IPG_GATE>, 196*724ba675SRob Herring <&clks IMX5_CLK_DUMMY>, 197*724ba675SRob Herring <&clks IMX5_CLK_ESDHC1_PER_GATE>; 198*724ba675SRob Herring clock-names = "ipg", "ahb", "per"; 199*724ba675SRob Herring status = "disabled"; 200*724ba675SRob Herring }; 201*724ba675SRob Herring 202*724ba675SRob Herring esdhc2: mmc@70008000 { 203*724ba675SRob Herring compatible = "fsl,imx51-esdhc"; 204*724ba675SRob Herring reg = <0x70008000 0x4000>; 205*724ba675SRob Herring interrupts = <2>; 206*724ba675SRob Herring clocks = <&clks IMX5_CLK_ESDHC2_IPG_GATE>, 207*724ba675SRob Herring <&clks IMX5_CLK_DUMMY>, 208*724ba675SRob Herring <&clks IMX5_CLK_ESDHC2_PER_GATE>; 209*724ba675SRob Herring clock-names = "ipg", "ahb", "per"; 210*724ba675SRob Herring bus-width = <4>; 211*724ba675SRob Herring status = "disabled"; 212*724ba675SRob Herring }; 213*724ba675SRob Herring 214*724ba675SRob Herring uart3: serial@7000c000 { 215*724ba675SRob Herring compatible = "fsl,imx51-uart", "fsl,imx21-uart"; 216*724ba675SRob Herring reg = <0x7000c000 0x4000>; 217*724ba675SRob Herring interrupts = <33>; 218*724ba675SRob Herring clocks = <&clks IMX5_CLK_UART3_IPG_GATE>, 219*724ba675SRob Herring <&clks IMX5_CLK_UART3_PER_GATE>; 220*724ba675SRob Herring clock-names = "ipg", "per"; 221*724ba675SRob Herring dmas = <&sdma 43 5 1>, <&sdma 44 5 2>; 222*724ba675SRob Herring dma-names = "rx", "tx"; 223*724ba675SRob Herring status = "disabled"; 224*724ba675SRob Herring }; 225*724ba675SRob Herring 226*724ba675SRob Herring ecspi1: spi@70010000 { 227*724ba675SRob Herring #address-cells = <1>; 228*724ba675SRob Herring #size-cells = <0>; 229*724ba675SRob Herring compatible = "fsl,imx51-ecspi"; 230*724ba675SRob Herring reg = <0x70010000 0x4000>; 231*724ba675SRob Herring interrupts = <36>; 232*724ba675SRob Herring clocks = <&clks IMX5_CLK_ECSPI1_IPG_GATE>, 233*724ba675SRob Herring <&clks IMX5_CLK_ECSPI1_PER_GATE>; 234*724ba675SRob Herring clock-names = "ipg", "per"; 235*724ba675SRob Herring status = "disabled"; 236*724ba675SRob Herring }; 237*724ba675SRob Herring 238*724ba675SRob Herring ssi2: ssi@70014000 { 239*724ba675SRob Herring #sound-dai-cells = <0>; 240*724ba675SRob Herring compatible = "fsl,imx51-ssi", "fsl,imx21-ssi"; 241*724ba675SRob Herring reg = <0x70014000 0x4000>; 242*724ba675SRob Herring interrupts = <30>; 243*724ba675SRob Herring clocks = <&clks IMX5_CLK_SSI2_IPG_GATE>, 244*724ba675SRob Herring <&clks IMX5_CLK_SSI2_ROOT_GATE>; 245*724ba675SRob Herring clock-names = "ipg", "baud"; 246*724ba675SRob Herring dmas = <&sdma 24 1 0>, 247*724ba675SRob Herring <&sdma 25 1 0>; 248*724ba675SRob Herring dma-names = "rx", "tx"; 249*724ba675SRob Herring fsl,fifo-depth = <15>; 250*724ba675SRob Herring status = "disabled"; 251*724ba675SRob Herring }; 252*724ba675SRob Herring 253*724ba675SRob Herring esdhc3: mmc@70020000 { 254*724ba675SRob Herring compatible = "fsl,imx51-esdhc"; 255*724ba675SRob Herring reg = <0x70020000 0x4000>; 256*724ba675SRob Herring interrupts = <3>; 257*724ba675SRob Herring clocks = <&clks IMX5_CLK_ESDHC3_IPG_GATE>, 258*724ba675SRob Herring <&clks IMX5_CLK_DUMMY>, 259*724ba675SRob Herring <&clks IMX5_CLK_ESDHC3_PER_GATE>; 260*724ba675SRob Herring clock-names = "ipg", "ahb", "per"; 261*724ba675SRob Herring bus-width = <4>; 262*724ba675SRob Herring status = "disabled"; 263*724ba675SRob Herring }; 264*724ba675SRob Herring 265*724ba675SRob Herring esdhc4: mmc@70024000 { 266*724ba675SRob Herring compatible = "fsl,imx51-esdhc"; 267*724ba675SRob Herring reg = <0x70024000 0x4000>; 268*724ba675SRob Herring interrupts = <4>; 269*724ba675SRob Herring clocks = <&clks IMX5_CLK_ESDHC4_IPG_GATE>, 270*724ba675SRob Herring <&clks IMX5_CLK_DUMMY>, 271*724ba675SRob Herring <&clks IMX5_CLK_ESDHC4_PER_GATE>; 272*724ba675SRob Herring clock-names = "ipg", "ahb", "per"; 273*724ba675SRob Herring bus-width = <4>; 274*724ba675SRob Herring status = "disabled"; 275*724ba675SRob Herring }; 276*724ba675SRob Herring }; 277*724ba675SRob Herring 278*724ba675SRob Herring aipstz1: bridge@73f00000 { 279*724ba675SRob Herring compatible = "fsl,imx51-aipstz"; 280*724ba675SRob Herring reg = <0x73f00000 0x60>; 281*724ba675SRob Herring }; 282*724ba675SRob Herring 283*724ba675SRob Herring usbotg: usb@73f80000 { 284*724ba675SRob Herring compatible = "fsl,imx51-usb", "fsl,imx27-usb"; 285*724ba675SRob Herring reg = <0x73f80000 0x0200>; 286*724ba675SRob Herring interrupts = <18>; 287*724ba675SRob Herring clocks = <&clks IMX5_CLK_USBOH3_GATE>; 288*724ba675SRob Herring fsl,usbmisc = <&usbmisc 0>; 289*724ba675SRob Herring fsl,usbphy = <&usbphy0>; 290*724ba675SRob Herring status = "disabled"; 291*724ba675SRob Herring }; 292*724ba675SRob Herring 293*724ba675SRob Herring usbh1: usb@73f80200 { 294*724ba675SRob Herring compatible = "fsl,imx51-usb", "fsl,imx27-usb"; 295*724ba675SRob Herring reg = <0x73f80200 0x0200>; 296*724ba675SRob Herring interrupts = <14>; 297*724ba675SRob Herring clocks = <&clks IMX5_CLK_USBOH3_GATE>; 298*724ba675SRob Herring fsl,usbmisc = <&usbmisc 1>; 299*724ba675SRob Herring dr_mode = "host"; 300*724ba675SRob Herring status = "disabled"; 301*724ba675SRob Herring }; 302*724ba675SRob Herring 303*724ba675SRob Herring usbh2: usb@73f80400 { 304*724ba675SRob Herring compatible = "fsl,imx51-usb", "fsl,imx27-usb"; 305*724ba675SRob Herring reg = <0x73f80400 0x0200>; 306*724ba675SRob Herring interrupts = <16>; 307*724ba675SRob Herring clocks = <&clks IMX5_CLK_USBOH3_GATE>; 308*724ba675SRob Herring fsl,usbmisc = <&usbmisc 2>; 309*724ba675SRob Herring dr_mode = "host"; 310*724ba675SRob Herring status = "disabled"; 311*724ba675SRob Herring }; 312*724ba675SRob Herring 313*724ba675SRob Herring usbh3: usb@73f80600 { 314*724ba675SRob Herring compatible = "fsl,imx51-usb", "fsl,imx27-usb"; 315*724ba675SRob Herring reg = <0x73f80600 0x0200>; 316*724ba675SRob Herring interrupts = <17>; 317*724ba675SRob Herring clocks = <&clks IMX5_CLK_USBOH3_GATE>; 318*724ba675SRob Herring fsl,usbmisc = <&usbmisc 3>; 319*724ba675SRob Herring dr_mode = "host"; 320*724ba675SRob Herring status = "disabled"; 321*724ba675SRob Herring }; 322*724ba675SRob Herring 323*724ba675SRob Herring usbmisc: usbmisc@73f80800 { 324*724ba675SRob Herring #index-cells = <1>; 325*724ba675SRob Herring compatible = "fsl,imx51-usbmisc"; 326*724ba675SRob Herring reg = <0x73f80800 0x200>; 327*724ba675SRob Herring clocks = <&clks IMX5_CLK_USBOH3_GATE>; 328*724ba675SRob Herring }; 329*724ba675SRob Herring 330*724ba675SRob Herring gpio1: gpio@73f84000 { 331*724ba675SRob Herring compatible = "fsl,imx51-gpio", "fsl,imx35-gpio"; 332*724ba675SRob Herring reg = <0x73f84000 0x4000>; 333*724ba675SRob Herring interrupts = <50 51>; 334*724ba675SRob Herring gpio-controller; 335*724ba675SRob Herring #gpio-cells = <2>; 336*724ba675SRob Herring interrupt-controller; 337*724ba675SRob Herring #interrupt-cells = <2>; 338*724ba675SRob Herring }; 339*724ba675SRob Herring 340*724ba675SRob Herring gpio2: gpio@73f88000 { 341*724ba675SRob Herring compatible = "fsl,imx51-gpio", "fsl,imx35-gpio"; 342*724ba675SRob Herring reg = <0x73f88000 0x4000>; 343*724ba675SRob Herring interrupts = <52 53>; 344*724ba675SRob Herring gpio-controller; 345*724ba675SRob Herring #gpio-cells = <2>; 346*724ba675SRob Herring interrupt-controller; 347*724ba675SRob Herring #interrupt-cells = <2>; 348*724ba675SRob Herring }; 349*724ba675SRob Herring 350*724ba675SRob Herring gpio3: gpio@73f8c000 { 351*724ba675SRob Herring compatible = "fsl,imx51-gpio", "fsl,imx35-gpio"; 352*724ba675SRob Herring reg = <0x73f8c000 0x4000>; 353*724ba675SRob Herring interrupts = <54 55>; 354*724ba675SRob Herring gpio-controller; 355*724ba675SRob Herring #gpio-cells = <2>; 356*724ba675SRob Herring interrupt-controller; 357*724ba675SRob Herring #interrupt-cells = <2>; 358*724ba675SRob Herring }; 359*724ba675SRob Herring 360*724ba675SRob Herring gpio4: gpio@73f90000 { 361*724ba675SRob Herring compatible = "fsl,imx51-gpio", "fsl,imx35-gpio"; 362*724ba675SRob Herring reg = <0x73f90000 0x4000>; 363*724ba675SRob Herring interrupts = <56 57>; 364*724ba675SRob Herring gpio-controller; 365*724ba675SRob Herring #gpio-cells = <2>; 366*724ba675SRob Herring interrupt-controller; 367*724ba675SRob Herring #interrupt-cells = <2>; 368*724ba675SRob Herring }; 369*724ba675SRob Herring 370*724ba675SRob Herring kpp: kpp@73f94000 { 371*724ba675SRob Herring compatible = "fsl,imx51-kpp", "fsl,imx21-kpp"; 372*724ba675SRob Herring reg = <0x73f94000 0x4000>; 373*724ba675SRob Herring interrupts = <60>; 374*724ba675SRob Herring clocks = <&clks IMX5_CLK_DUMMY>; 375*724ba675SRob Herring status = "disabled"; 376*724ba675SRob Herring }; 377*724ba675SRob Herring 378*724ba675SRob Herring wdog1: watchdog@73f98000 { 379*724ba675SRob Herring compatible = "fsl,imx51-wdt", "fsl,imx21-wdt"; 380*724ba675SRob Herring reg = <0x73f98000 0x4000>; 381*724ba675SRob Herring interrupts = <58>; 382*724ba675SRob Herring clocks = <&clks IMX5_CLK_DUMMY>; 383*724ba675SRob Herring }; 384*724ba675SRob Herring 385*724ba675SRob Herring wdog2: watchdog@73f9c000 { 386*724ba675SRob Herring compatible = "fsl,imx51-wdt", "fsl,imx21-wdt"; 387*724ba675SRob Herring reg = <0x73f9c000 0x4000>; 388*724ba675SRob Herring interrupts = <59>; 389*724ba675SRob Herring clocks = <&clks IMX5_CLK_DUMMY>; 390*724ba675SRob Herring status = "disabled"; 391*724ba675SRob Herring }; 392*724ba675SRob Herring 393*724ba675SRob Herring gpt: timer@73fa0000 { 394*724ba675SRob Herring compatible = "fsl,imx51-gpt", "fsl,imx31-gpt"; 395*724ba675SRob Herring reg = <0x73fa0000 0x4000>; 396*724ba675SRob Herring interrupts = <39>; 397*724ba675SRob Herring clocks = <&clks IMX5_CLK_GPT_IPG_GATE>, 398*724ba675SRob Herring <&clks IMX5_CLK_GPT_HF_GATE>; 399*724ba675SRob Herring clock-names = "ipg", "per"; 400*724ba675SRob Herring }; 401*724ba675SRob Herring 402*724ba675SRob Herring iomuxc: iomuxc@73fa8000 { 403*724ba675SRob Herring compatible = "fsl,imx51-iomuxc"; 404*724ba675SRob Herring reg = <0x73fa8000 0x4000>; 405*724ba675SRob Herring }; 406*724ba675SRob Herring 407*724ba675SRob Herring pwm1: pwm@73fb4000 { 408*724ba675SRob Herring #pwm-cells = <3>; 409*724ba675SRob Herring compatible = "fsl,imx51-pwm", "fsl,imx27-pwm"; 410*724ba675SRob Herring reg = <0x73fb4000 0x4000>; 411*724ba675SRob Herring clocks = <&clks IMX5_CLK_PWM1_IPG_GATE>, 412*724ba675SRob Herring <&clks IMX5_CLK_PWM1_HF_GATE>; 413*724ba675SRob Herring clock-names = "ipg", "per"; 414*724ba675SRob Herring interrupts = <61>; 415*724ba675SRob Herring }; 416*724ba675SRob Herring 417*724ba675SRob Herring pwm2: pwm@73fb8000 { 418*724ba675SRob Herring #pwm-cells = <3>; 419*724ba675SRob Herring compatible = "fsl,imx51-pwm", "fsl,imx27-pwm"; 420*724ba675SRob Herring reg = <0x73fb8000 0x4000>; 421*724ba675SRob Herring clocks = <&clks IMX5_CLK_PWM2_IPG_GATE>, 422*724ba675SRob Herring <&clks IMX5_CLK_PWM2_HF_GATE>; 423*724ba675SRob Herring clock-names = "ipg", "per"; 424*724ba675SRob Herring interrupts = <94>; 425*724ba675SRob Herring }; 426*724ba675SRob Herring 427*724ba675SRob Herring uart1: serial@73fbc000 { 428*724ba675SRob Herring compatible = "fsl,imx51-uart", "fsl,imx21-uart"; 429*724ba675SRob Herring reg = <0x73fbc000 0x4000>; 430*724ba675SRob Herring interrupts = <31>; 431*724ba675SRob Herring clocks = <&clks IMX5_CLK_UART1_IPG_GATE>, 432*724ba675SRob Herring <&clks IMX5_CLK_UART1_PER_GATE>; 433*724ba675SRob Herring clock-names = "ipg", "per"; 434*724ba675SRob Herring dmas = <&sdma 18 4 1>, <&sdma 19 4 2>; 435*724ba675SRob Herring dma-names = "rx", "tx"; 436*724ba675SRob Herring status = "disabled"; 437*724ba675SRob Herring }; 438*724ba675SRob Herring 439*724ba675SRob Herring uart2: serial@73fc0000 { 440*724ba675SRob Herring compatible = "fsl,imx51-uart", "fsl,imx21-uart"; 441*724ba675SRob Herring reg = <0x73fc0000 0x4000>; 442*724ba675SRob Herring interrupts = <32>; 443*724ba675SRob Herring clocks = <&clks IMX5_CLK_UART2_IPG_GATE>, 444*724ba675SRob Herring <&clks IMX5_CLK_UART2_PER_GATE>; 445*724ba675SRob Herring clock-names = "ipg", "per"; 446*724ba675SRob Herring dmas = <&sdma 16 4 1>, <&sdma 17 4 2>; 447*724ba675SRob Herring dma-names = "rx", "tx"; 448*724ba675SRob Herring status = "disabled"; 449*724ba675SRob Herring }; 450*724ba675SRob Herring 451*724ba675SRob Herring src: reset-controller@73fd0000 { 452*724ba675SRob Herring compatible = "fsl,imx51-src"; 453*724ba675SRob Herring reg = <0x73fd0000 0x4000>; 454*724ba675SRob Herring interrupts = <75>; 455*724ba675SRob Herring #reset-cells = <1>; 456*724ba675SRob Herring }; 457*724ba675SRob Herring 458*724ba675SRob Herring clks: ccm@73fd4000 { 459*724ba675SRob Herring compatible = "fsl,imx51-ccm"; 460*724ba675SRob Herring reg = <0x73fd4000 0x4000>; 461*724ba675SRob Herring interrupts = <0 71 0x04 0 72 0x04>; 462*724ba675SRob Herring #clock-cells = <1>; 463*724ba675SRob Herring }; 464*724ba675SRob Herring }; 465*724ba675SRob Herring 466*724ba675SRob Herring aips2: bus@80000000 { /* AIPS2 */ 467*724ba675SRob Herring compatible = "fsl,aips-bus", "simple-bus"; 468*724ba675SRob Herring #address-cells = <1>; 469*724ba675SRob Herring #size-cells = <1>; 470*724ba675SRob Herring reg = <0x80000000 0x10000000>; 471*724ba675SRob Herring ranges; 472*724ba675SRob Herring 473*724ba675SRob Herring aipstz2: bridge@83f00000 { 474*724ba675SRob Herring compatible = "fsl,imx51-aipstz"; 475*724ba675SRob Herring reg = <0x83f00000 0x60>; 476*724ba675SRob Herring }; 477*724ba675SRob Herring 478*724ba675SRob Herring iim: efuse@83f98000 { 479*724ba675SRob Herring compatible = "fsl,imx51-iim", "fsl,imx27-iim", "syscon"; 480*724ba675SRob Herring reg = <0x83f98000 0x4000>; 481*724ba675SRob Herring interrupts = <69>; 482*724ba675SRob Herring clocks = <&clks IMX5_CLK_IIM_GATE>; 483*724ba675SRob Herring }; 484*724ba675SRob Herring 485*724ba675SRob Herring tigerp: tigerp@83fa0000 { 486*724ba675SRob Herring compatible = "fsl,imx51-tigerp"; 487*724ba675SRob Herring reg = <0x83fa0000 0x28>; 488*724ba675SRob Herring }; 489*724ba675SRob Herring 490*724ba675SRob Herring owire: owire@83fa4000 { 491*724ba675SRob Herring compatible = "fsl,imx51-owire", "fsl,imx21-owire"; 492*724ba675SRob Herring reg = <0x83fa4000 0x4000>; 493*724ba675SRob Herring interrupts = <88>; 494*724ba675SRob Herring clocks = <&clks IMX5_CLK_OWIRE_GATE>; 495*724ba675SRob Herring status = "disabled"; 496*724ba675SRob Herring }; 497*724ba675SRob Herring 498*724ba675SRob Herring ecspi2: spi@83fac000 { 499*724ba675SRob Herring #address-cells = <1>; 500*724ba675SRob Herring #size-cells = <0>; 501*724ba675SRob Herring compatible = "fsl,imx51-ecspi"; 502*724ba675SRob Herring reg = <0x83fac000 0x4000>; 503*724ba675SRob Herring interrupts = <37>; 504*724ba675SRob Herring clocks = <&clks IMX5_CLK_ECSPI2_IPG_GATE>, 505*724ba675SRob Herring <&clks IMX5_CLK_ECSPI2_PER_GATE>; 506*724ba675SRob Herring clock-names = "ipg", "per"; 507*724ba675SRob Herring status = "disabled"; 508*724ba675SRob Herring }; 509*724ba675SRob Herring 510*724ba675SRob Herring sdma: dma-controller@83fb0000 { 511*724ba675SRob Herring compatible = "fsl,imx51-sdma", "fsl,imx35-sdma"; 512*724ba675SRob Herring reg = <0x83fb0000 0x4000>; 513*724ba675SRob Herring interrupts = <6>; 514*724ba675SRob Herring clocks = <&clks IMX5_CLK_SDMA_GATE>, 515*724ba675SRob Herring <&clks IMX5_CLK_AHB>; 516*724ba675SRob Herring clock-names = "ipg", "ahb"; 517*724ba675SRob Herring #dma-cells = <3>; 518*724ba675SRob Herring fsl,sdma-ram-script-name = "imx/sdma/sdma-imx51.bin"; 519*724ba675SRob Herring }; 520*724ba675SRob Herring 521*724ba675SRob Herring cspi: spi@83fc0000 { 522*724ba675SRob Herring #address-cells = <1>; 523*724ba675SRob Herring #size-cells = <0>; 524*724ba675SRob Herring compatible = "fsl,imx51-cspi", "fsl,imx35-cspi"; 525*724ba675SRob Herring reg = <0x83fc0000 0x4000>; 526*724ba675SRob Herring interrupts = <38>; 527*724ba675SRob Herring clocks = <&clks IMX5_CLK_CSPI_IPG_GATE>, 528*724ba675SRob Herring <&clks IMX5_CLK_CSPI_IPG_GATE>; 529*724ba675SRob Herring clock-names = "ipg", "per"; 530*724ba675SRob Herring status = "disabled"; 531*724ba675SRob Herring }; 532*724ba675SRob Herring 533*724ba675SRob Herring i2c2: i2c@83fc4000 { 534*724ba675SRob Herring #address-cells = <1>; 535*724ba675SRob Herring #size-cells = <0>; 536*724ba675SRob Herring compatible = "fsl,imx51-i2c", "fsl,imx21-i2c"; 537*724ba675SRob Herring reg = <0x83fc4000 0x4000>; 538*724ba675SRob Herring interrupts = <63>; 539*724ba675SRob Herring clocks = <&clks IMX5_CLK_I2C2_GATE>; 540*724ba675SRob Herring status = "disabled"; 541*724ba675SRob Herring }; 542*724ba675SRob Herring 543*724ba675SRob Herring i2c1: i2c@83fc8000 { 544*724ba675SRob Herring #address-cells = <1>; 545*724ba675SRob Herring #size-cells = <0>; 546*724ba675SRob Herring compatible = "fsl,imx51-i2c", "fsl,imx21-i2c"; 547*724ba675SRob Herring reg = <0x83fc8000 0x4000>; 548*724ba675SRob Herring interrupts = <62>; 549*724ba675SRob Herring clocks = <&clks IMX5_CLK_I2C1_GATE>; 550*724ba675SRob Herring status = "disabled"; 551*724ba675SRob Herring }; 552*724ba675SRob Herring 553*724ba675SRob Herring ssi1: ssi@83fcc000 { 554*724ba675SRob Herring #sound-dai-cells = <0>; 555*724ba675SRob Herring compatible = "fsl,imx51-ssi", "fsl,imx21-ssi"; 556*724ba675SRob Herring reg = <0x83fcc000 0x4000>; 557*724ba675SRob Herring interrupts = <29>; 558*724ba675SRob Herring clocks = <&clks IMX5_CLK_SSI1_IPG_GATE>, 559*724ba675SRob Herring <&clks IMX5_CLK_SSI1_ROOT_GATE>; 560*724ba675SRob Herring clock-names = "ipg", "baud"; 561*724ba675SRob Herring dmas = <&sdma 28 0 0>, 562*724ba675SRob Herring <&sdma 29 0 0>; 563*724ba675SRob Herring dma-names = "rx", "tx"; 564*724ba675SRob Herring fsl,fifo-depth = <15>; 565*724ba675SRob Herring status = "disabled"; 566*724ba675SRob Herring }; 567*724ba675SRob Herring 568*724ba675SRob Herring audmux: audmux@83fd0000 { 569*724ba675SRob Herring compatible = "fsl,imx51-audmux", "fsl,imx31-audmux"; 570*724ba675SRob Herring reg = <0x83fd0000 0x4000>; 571*724ba675SRob Herring clocks = <&clks IMX5_CLK_DUMMY>; 572*724ba675SRob Herring clock-names = "audmux"; 573*724ba675SRob Herring status = "disabled"; 574*724ba675SRob Herring }; 575*724ba675SRob Herring 576*724ba675SRob Herring m4if: m4if@83fd8000 { 577*724ba675SRob Herring compatible = "fsl,imx51-m4if"; 578*724ba675SRob Herring reg = <0x83fd8000 0x1000>; 579*724ba675SRob Herring }; 580*724ba675SRob Herring 581*724ba675SRob Herring weim: weim@83fda000 { 582*724ba675SRob Herring #address-cells = <2>; 583*724ba675SRob Herring #size-cells = <1>; 584*724ba675SRob Herring compatible = "fsl,imx51-weim"; 585*724ba675SRob Herring reg = <0x83fda000 0x1000>; 586*724ba675SRob Herring clocks = <&clks IMX5_CLK_EMI_SLOW_GATE>; 587*724ba675SRob Herring ranges = < 588*724ba675SRob Herring 0 0 0xb0000000 0x08000000 589*724ba675SRob Herring 1 0 0xb8000000 0x08000000 590*724ba675SRob Herring 2 0 0xc0000000 0x08000000 591*724ba675SRob Herring 3 0 0xc8000000 0x04000000 592*724ba675SRob Herring 4 0 0xcc000000 0x02000000 593*724ba675SRob Herring 5 0 0xce000000 0x02000000 594*724ba675SRob Herring >; 595*724ba675SRob Herring status = "disabled"; 596*724ba675SRob Herring }; 597*724ba675SRob Herring 598*724ba675SRob Herring nfc: nand@83fdb000 { 599*724ba675SRob Herring #address-cells = <1>; 600*724ba675SRob Herring #size-cells = <1>; 601*724ba675SRob Herring compatible = "fsl,imx51-nand"; 602*724ba675SRob Herring reg = <0x83fdb000 0x1000 0xcfff0000 0x10000>; 603*724ba675SRob Herring interrupts = <8>; 604*724ba675SRob Herring clocks = <&clks IMX5_CLK_NFC_GATE>; 605*724ba675SRob Herring status = "disabled"; 606*724ba675SRob Herring }; 607*724ba675SRob Herring 608*724ba675SRob Herring pata: pata@83fe0000 { 609*724ba675SRob Herring compatible = "fsl,imx51-pata", "fsl,imx27-pata"; 610*724ba675SRob Herring reg = <0x83fe0000 0x4000>; 611*724ba675SRob Herring interrupts = <70>; 612*724ba675SRob Herring clocks = <&clks IMX5_CLK_PATA_GATE>; 613*724ba675SRob Herring status = "disabled"; 614*724ba675SRob Herring }; 615*724ba675SRob Herring 616*724ba675SRob Herring ssi3: ssi@83fe8000 { 617*724ba675SRob Herring #sound-dai-cells = <0>; 618*724ba675SRob Herring compatible = "fsl,imx51-ssi", "fsl,imx21-ssi"; 619*724ba675SRob Herring reg = <0x83fe8000 0x4000>; 620*724ba675SRob Herring interrupts = <96>; 621*724ba675SRob Herring clocks = <&clks IMX5_CLK_SSI3_IPG_GATE>, 622*724ba675SRob Herring <&clks IMX5_CLK_SSI3_ROOT_GATE>; 623*724ba675SRob Herring clock-names = "ipg", "baud"; 624*724ba675SRob Herring dmas = <&sdma 46 0 0>, 625*724ba675SRob Herring <&sdma 47 0 0>; 626*724ba675SRob Herring dma-names = "rx", "tx"; 627*724ba675SRob Herring fsl,fifo-depth = <15>; 628*724ba675SRob Herring status = "disabled"; 629*724ba675SRob Herring }; 630*724ba675SRob Herring 631*724ba675SRob Herring fec: ethernet@83fec000 { 632*724ba675SRob Herring compatible = "fsl,imx51-fec", "fsl,imx27-fec"; 633*724ba675SRob Herring reg = <0x83fec000 0x4000>; 634*724ba675SRob Herring interrupts = <87>; 635*724ba675SRob Herring clocks = <&clks IMX5_CLK_FEC_GATE>, 636*724ba675SRob Herring <&clks IMX5_CLK_FEC_GATE>, 637*724ba675SRob Herring <&clks IMX5_CLK_FEC_GATE>; 638*724ba675SRob Herring clock-names = "ipg", "ahb", "ptp"; 639*724ba675SRob Herring status = "disabled"; 640*724ba675SRob Herring }; 641*724ba675SRob Herring 642*724ba675SRob Herring vpu: vpu@83ff4000 { 643*724ba675SRob Herring compatible = "fsl,imx51-vpu", "cnm,codahx4"; 644*724ba675SRob Herring reg = <0x83ff4000 0x1000>; 645*724ba675SRob Herring interrupts = <9>; 646*724ba675SRob Herring clocks = <&clks IMX5_CLK_VPU_REFERENCE_GATE>, 647*724ba675SRob Herring <&clks IMX5_CLK_VPU_GATE>; 648*724ba675SRob Herring clock-names = "per", "ahb"; 649*724ba675SRob Herring resets = <&src 1>; 650*724ba675SRob Herring iram = <&iram>; 651*724ba675SRob Herring }; 652*724ba675SRob Herring 653*724ba675SRob Herring sahara: crypto@83ff8000 { 654*724ba675SRob Herring compatible = "fsl,imx53-sahara", "fsl,imx51-sahara"; 655*724ba675SRob Herring reg = <0x83ff8000 0x4000>; 656*724ba675SRob Herring interrupts = <19 20>; 657*724ba675SRob Herring clocks = <&clks IMX5_CLK_SAHARA_IPG_GATE>, 658*724ba675SRob Herring <&clks IMX5_CLK_SAHARA_IPG_GATE>; 659*724ba675SRob Herring clock-names = "ipg", "ahb"; 660*724ba675SRob Herring }; 661*724ba675SRob Herring }; 662*724ba675SRob Herring }; 663*724ba675SRob Herring}; 664