1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0+ 2724ba675SRob Herring// 3724ba675SRob Herring// Copyright 2016-2018 Vladimir Zapolskiy <vz@mleia.com> 4724ba675SRob Herring// Copyright 2012 Denis 'GNUtoo' Carikli <GNUtoo@no-log.org> 5724ba675SRob Herring 6724ba675SRob Herring/ { 7724ba675SRob Herring #address-cells = <1>; 8724ba675SRob Herring #size-cells = <1>; 9724ba675SRob Herring /* 10724ba675SRob Herring * The decompressor and also some bootloaders rely on a 11724ba675SRob Herring * pre-existing /chosen node to be available to insert the 12724ba675SRob Herring * command line and merge other ATAGS info. 13724ba675SRob Herring */ 14724ba675SRob Herring chosen {}; 15724ba675SRob Herring 16724ba675SRob Herring aliases { 17724ba675SRob Herring gpio0 = &gpio1; 18724ba675SRob Herring gpio1 = &gpio2; 19724ba675SRob Herring gpio2 = &gpio3; 20724ba675SRob Herring i2c0 = &i2c1; 21724ba675SRob Herring i2c1 = &i2c2; 22724ba675SRob Herring i2c2 = &i2c3; 23724ba675SRob Herring serial0 = &uart1; 24724ba675SRob Herring serial1 = &uart2; 25724ba675SRob Herring serial2 = &uart3; 26724ba675SRob Herring serial3 = &uart4; 27724ba675SRob Herring serial4 = &uart5; 28724ba675SRob Herring spi0 = &spi1; 29724ba675SRob Herring spi1 = &spi2; 30724ba675SRob Herring spi2 = &spi3; 31724ba675SRob Herring }; 32724ba675SRob Herring 33724ba675SRob Herring cpus { 34724ba675SRob Herring #address-cells = <1>; 35724ba675SRob Herring #size-cells = <0>; 36724ba675SRob Herring 37724ba675SRob Herring cpu@0 { 38724ba675SRob Herring compatible = "arm,arm1136jf-s"; 39724ba675SRob Herring device_type = "cpu"; 40724ba675SRob Herring reg = <0>; 41724ba675SRob Herring }; 42724ba675SRob Herring }; 43724ba675SRob Herring 44724ba675SRob Herring avic: interrupt-controller@68000000 { 45724ba675SRob Herring compatible = "fsl,imx31-avic", "fsl,avic"; 46724ba675SRob Herring interrupt-controller; 47724ba675SRob Herring #interrupt-cells = <1>; 48724ba675SRob Herring reg = <0x68000000 0x100000>; 49724ba675SRob Herring }; 50724ba675SRob Herring 51724ba675SRob Herring soc: soc { 52724ba675SRob Herring #address-cells = <1>; 53724ba675SRob Herring #size-cells = <1>; 54724ba675SRob Herring compatible = "simple-bus"; 55724ba675SRob Herring interrupt-parent = <&avic>; 56724ba675SRob Herring ranges; 57724ba675SRob Herring 58724ba675SRob Herring iram: sram@1fffc000 { 59724ba675SRob Herring compatible = "mmio-sram"; 60724ba675SRob Herring reg = <0x1fffc000 0x4000>; 61724ba675SRob Herring #address-cells = <1>; 62724ba675SRob Herring #size-cells = <1>; 63724ba675SRob Herring ranges = <0 0x1fffc000 0x4000>; 64724ba675SRob Herring }; 65724ba675SRob Herring 66724ba675SRob Herring aips1: bus@43f00000 { /* AIPS1 */ 67724ba675SRob Herring compatible = "fsl,aips-bus", "simple-bus"; 68724ba675SRob Herring #address-cells = <1>; 69724ba675SRob Herring #size-cells = <1>; 70724ba675SRob Herring reg = <0x43f00000 0x100000>; 71724ba675SRob Herring ranges; 72724ba675SRob Herring 73724ba675SRob Herring i2c1: i2c@43f80000 { 74724ba675SRob Herring compatible = "fsl,imx31-i2c", "fsl,imx21-i2c"; 75724ba675SRob Herring reg = <0x43f80000 0x4000>; 76724ba675SRob Herring interrupts = <10>; 77724ba675SRob Herring clocks = <&clks 33>; 78724ba675SRob Herring #address-cells = <1>; 79724ba675SRob Herring #size-cells = <0>; 80724ba675SRob Herring status = "disabled"; 81724ba675SRob Herring }; 82724ba675SRob Herring 83724ba675SRob Herring i2c3: i2c@43f84000 { 84724ba675SRob Herring compatible = "fsl,imx31-i2c", "fsl,imx21-i2c"; 85724ba675SRob Herring reg = <0x43f84000 0x4000>; 86724ba675SRob Herring interrupts = <3>; 87724ba675SRob Herring clocks = <&clks 35>; 88724ba675SRob Herring #address-cells = <1>; 89724ba675SRob Herring #size-cells = <0>; 90724ba675SRob Herring status = "disabled"; 91724ba675SRob Herring }; 92724ba675SRob Herring 93724ba675SRob Herring ata: ata@43f8c000 { 94724ba675SRob Herring compatible = "fsl,imx31-pata", "fsl,imx27-pata"; 95724ba675SRob Herring reg = <0x43f8c000 0x4000>; 96724ba675SRob Herring interrupts = <15>; 97724ba675SRob Herring clocks = <&clks 26>; 98724ba675SRob Herring status = "disabled"; 99724ba675SRob Herring }; 100724ba675SRob Herring 101724ba675SRob Herring uart1: serial@43f90000 { 102724ba675SRob Herring compatible = "fsl,imx31-uart", "fsl,imx21-uart"; 103724ba675SRob Herring reg = <0x43f90000 0x4000>; 104724ba675SRob Herring interrupts = <45>; 105724ba675SRob Herring clocks = <&clks 10>, <&clks 30>; 106724ba675SRob Herring clock-names = "ipg", "per"; 107724ba675SRob Herring status = "disabled"; 108724ba675SRob Herring }; 109724ba675SRob Herring 110724ba675SRob Herring uart2: serial@43f94000 { 111724ba675SRob Herring compatible = "fsl,imx31-uart", "fsl,imx21-uart"; 112724ba675SRob Herring reg = <0x43f94000 0x4000>; 113724ba675SRob Herring interrupts = <32>; 114724ba675SRob Herring clocks = <&clks 10>, <&clks 31>; 115724ba675SRob Herring clock-names = "ipg", "per"; 116724ba675SRob Herring status = "disabled"; 117724ba675SRob Herring }; 118724ba675SRob Herring 119724ba675SRob Herring i2c2: i2c@43f98000 { 120724ba675SRob Herring compatible = "fsl,imx31-i2c", "fsl,imx21-i2c"; 121724ba675SRob Herring reg = <0x43f98000 0x4000>; 122724ba675SRob Herring interrupts = <4>; 123724ba675SRob Herring clocks = <&clks 34>; 124724ba675SRob Herring #address-cells = <1>; 125724ba675SRob Herring #size-cells = <0>; 126724ba675SRob Herring status = "disabled"; 127724ba675SRob Herring }; 128724ba675SRob Herring 129724ba675SRob Herring spi1: spi@43fa4000 { 130724ba675SRob Herring compatible = "fsl,imx31-cspi"; 131724ba675SRob Herring reg = <0x43fa4000 0x4000>; 132724ba675SRob Herring interrupts = <14>; 133724ba675SRob Herring clocks = <&clks 10>, <&clks 53>; 134724ba675SRob Herring clock-names = "ipg", "per"; 135724ba675SRob Herring dmas = <&sdma 8 8 0>, <&sdma 9 8 0>; 136724ba675SRob Herring dma-names = "rx", "tx"; 137724ba675SRob Herring #address-cells = <1>; 138724ba675SRob Herring #size-cells = <0>; 139724ba675SRob Herring status = "disabled"; 140724ba675SRob Herring }; 141724ba675SRob Herring 142724ba675SRob Herring kpp: kpp@43fa8000 { 143724ba675SRob Herring compatible = "fsl,imx31-kpp", "fsl,imx21-kpp"; 144724ba675SRob Herring reg = <0x43fa8000 0x4000>; 145724ba675SRob Herring interrupts = <24>; 146724ba675SRob Herring clocks = <&clks 46>; 147724ba675SRob Herring status = "disabled"; 148724ba675SRob Herring }; 149724ba675SRob Herring 150724ba675SRob Herring uart4: serial@43fb0000 { 151724ba675SRob Herring compatible = "fsl,imx31-uart", "fsl,imx21-uart"; 152724ba675SRob Herring reg = <0x43fb0000 0x4000>; 153724ba675SRob Herring clocks = <&clks 10>, <&clks 49>; 154724ba675SRob Herring clock-names = "ipg", "per"; 155724ba675SRob Herring interrupts = <46>; 156724ba675SRob Herring status = "disabled"; 157724ba675SRob Herring }; 158724ba675SRob Herring 159724ba675SRob Herring uart5: serial@43fb4000 { 160724ba675SRob Herring compatible = "fsl,imx31-uart", "fsl,imx21-uart"; 161724ba675SRob Herring reg = <0x43fb4000 0x4000>; 162724ba675SRob Herring interrupts = <47>; 163724ba675SRob Herring clocks = <&clks 10>, <&clks 50>; 164724ba675SRob Herring clock-names = "ipg", "per"; 165724ba675SRob Herring status = "disabled"; 166724ba675SRob Herring }; 167724ba675SRob Herring }; 168724ba675SRob Herring 169724ba675SRob Herring spba-bus@50000000 { 170724ba675SRob Herring compatible = "fsl,spba-bus", "simple-bus"; 171724ba675SRob Herring #address-cells = <1>; 172724ba675SRob Herring #size-cells = <1>; 173724ba675SRob Herring reg = <0x50000000 0x100000>; 174724ba675SRob Herring ranges; 175724ba675SRob Herring 176724ba675SRob Herring sdhci1: mmc@50004000 { 177724ba675SRob Herring compatible = "fsl,imx31-mmc"; 178724ba675SRob Herring reg = <0x50004000 0x4000>; 179724ba675SRob Herring interrupts = <9>; 180724ba675SRob Herring clocks = <&clks 10>, <&clks 20>; 181724ba675SRob Herring clock-names = "ipg", "per"; 182724ba675SRob Herring dmas = <&sdma 20 3 0>; 183724ba675SRob Herring dma-names = "rx-tx"; 184724ba675SRob Herring status = "disabled"; 185724ba675SRob Herring }; 186724ba675SRob Herring 187724ba675SRob Herring sdhci2: mmc@50008000 { 188724ba675SRob Herring compatible = "fsl,imx31-mmc"; 189724ba675SRob Herring reg = <0x50008000 0x4000>; 190724ba675SRob Herring interrupts = <8>; 191724ba675SRob Herring clocks = <&clks 10>, <&clks 21>; 192724ba675SRob Herring clock-names = "ipg", "per"; 193724ba675SRob Herring dmas = <&sdma 21 3 0>; 194724ba675SRob Herring dma-names = "rx-tx"; 195724ba675SRob Herring status = "disabled"; 196724ba675SRob Herring }; 197724ba675SRob Herring 198724ba675SRob Herring uart3: serial@5000c000 { 199724ba675SRob Herring compatible = "fsl,imx31-uart", "fsl,imx21-uart"; 200724ba675SRob Herring reg = <0x5000c000 0x4000>; 201724ba675SRob Herring interrupts = <18>; 202724ba675SRob Herring clocks = <&clks 10>, <&clks 48>; 203724ba675SRob Herring clock-names = "ipg", "per"; 204724ba675SRob Herring status = "disabled"; 205724ba675SRob Herring }; 206724ba675SRob Herring 207724ba675SRob Herring spi2: spi@50010000 { 208724ba675SRob Herring compatible = "fsl,imx31-cspi"; 209724ba675SRob Herring reg = <0x50010000 0x4000>; 210724ba675SRob Herring interrupts = <13>; 211724ba675SRob Herring clocks = <&clks 10>, <&clks 54>; 212724ba675SRob Herring clock-names = "ipg", "per"; 213724ba675SRob Herring dmas = <&sdma 6 8 0>, <&sdma 7 8 0>; 214724ba675SRob Herring dma-names = "rx", "tx"; 215724ba675SRob Herring #address-cells = <1>; 216724ba675SRob Herring #size-cells = <0>; 217724ba675SRob Herring status = "disabled"; 218724ba675SRob Herring }; 219724ba675SRob Herring 220724ba675SRob Herring iim: efuse@5001c000 { 221*d5b55c35SFabio Estevam compatible = "fsl,imx31-iim"; 222724ba675SRob Herring reg = <0x5001c000 0x1000>; 223724ba675SRob Herring interrupts = <19>; 224724ba675SRob Herring clocks = <&clks 25>; 225724ba675SRob Herring }; 226724ba675SRob Herring }; 227724ba675SRob Herring 228724ba675SRob Herring bus@53f00000 { /* AIPS2 */ 229724ba675SRob Herring compatible = "fsl,aips-bus", "simple-bus"; 230724ba675SRob Herring #address-cells = <1>; 231724ba675SRob Herring #size-cells = <1>; 232724ba675SRob Herring reg = <0x53f00000 0x100000>; 233724ba675SRob Herring ranges; 234724ba675SRob Herring 235724ba675SRob Herring clks: ccm@53f80000 { 236724ba675SRob Herring compatible = "fsl,imx31-ccm"; 237724ba675SRob Herring reg = <0x53f80000 0x4000>; 238724ba675SRob Herring interrupts = <31>, <53>; 239724ba675SRob Herring #clock-cells = <1>; 240724ba675SRob Herring }; 241724ba675SRob Herring 242724ba675SRob Herring spi3: spi@53f84000 { 243724ba675SRob Herring compatible = "fsl,imx31-cspi"; 244724ba675SRob Herring reg = <0x53f84000 0x4000>; 245724ba675SRob Herring interrupts = <17>; 246724ba675SRob Herring clocks = <&clks 10>, <&clks 28>; 247724ba675SRob Herring clock-names = "ipg", "per"; 248724ba675SRob Herring dmas = <&sdma 10 8 0>, <&sdma 11 8 0>; 249724ba675SRob Herring dma-names = "rx", "tx"; 250724ba675SRob Herring #address-cells = <1>; 251724ba675SRob Herring #size-cells = <0>; 252724ba675SRob Herring status = "disabled"; 253724ba675SRob Herring }; 254724ba675SRob Herring 255724ba675SRob Herring gpt: timer@53f90000 { 256724ba675SRob Herring compatible = "fsl,imx31-gpt"; 257724ba675SRob Herring reg = <0x53f90000 0x4000>; 258724ba675SRob Herring interrupts = <29>; 259724ba675SRob Herring clocks = <&clks 10>, <&clks 22>; 260724ba675SRob Herring clock-names = "ipg", "per"; 261724ba675SRob Herring }; 262724ba675SRob Herring 263724ba675SRob Herring gpio3: gpio@53fa4000 { 264724ba675SRob Herring compatible = "fsl,imx31-gpio"; 265724ba675SRob Herring reg = <0x53fa4000 0x4000>; 266724ba675SRob Herring interrupts = <56>; 267724ba675SRob Herring gpio-controller; 268724ba675SRob Herring #gpio-cells = <2>; 269724ba675SRob Herring interrupt-controller; 270724ba675SRob Herring #interrupt-cells = <2>; 271724ba675SRob Herring }; 272724ba675SRob Herring 273724ba675SRob Herring rng@53fb0000 { 274724ba675SRob Herring compatible = "fsl,imx31-rnga"; 275724ba675SRob Herring reg = <0x53fb0000 0x4000>; 276724ba675SRob Herring interrupts = <22>; 277724ba675SRob Herring clocks = <&clks 29>; 278724ba675SRob Herring }; 279724ba675SRob Herring 280724ba675SRob Herring gpio1: gpio@53fcc000 { 281724ba675SRob Herring compatible = "fsl,imx31-gpio"; 282724ba675SRob Herring reg = <0x53fcc000 0x4000>; 283724ba675SRob Herring interrupts = <52>; 284724ba675SRob Herring gpio-controller; 285724ba675SRob Herring #gpio-cells = <2>; 286724ba675SRob Herring interrupt-controller; 287724ba675SRob Herring #interrupt-cells = <2>; 288724ba675SRob Herring }; 289724ba675SRob Herring 290724ba675SRob Herring gpio2: gpio@53fd0000 { 291724ba675SRob Herring compatible = "fsl,imx31-gpio"; 292724ba675SRob Herring reg = <0x53fd0000 0x4000>; 293724ba675SRob Herring interrupts = <51>; 294724ba675SRob Herring gpio-controller; 295724ba675SRob Herring #gpio-cells = <2>; 296724ba675SRob Herring interrupt-controller; 297724ba675SRob Herring #interrupt-cells = <2>; 298724ba675SRob Herring }; 299724ba675SRob Herring 300724ba675SRob Herring sdma: dma-controller@53fd4000 { 301724ba675SRob Herring compatible = "fsl,imx31-sdma"; 302724ba675SRob Herring reg = <0x53fd4000 0x4000>; 303724ba675SRob Herring interrupts = <34>; 304724ba675SRob Herring clocks = <&clks 10>, <&clks 27>; 305724ba675SRob Herring clock-names = "ipg", "ahb"; 306724ba675SRob Herring #dma-cells = <3>; 307724ba675SRob Herring fsl,sdma-ram-script-name = "imx/sdma/sdma-imx31.bin"; 308724ba675SRob Herring }; 309724ba675SRob Herring 310724ba675SRob Herring rtc: rtc@53fd8000 { 311724ba675SRob Herring compatible = "fsl,imx31-rtc", "fsl,imx21-rtc"; 312724ba675SRob Herring reg = <0x53fd8000 0x4000>; 313724ba675SRob Herring interrupts = <25>; 314724ba675SRob Herring clocks = <&clks 2>, <&clks 40>; 315724ba675SRob Herring clock-names = "ref", "ipg"; 316724ba675SRob Herring }; 317724ba675SRob Herring 318724ba675SRob Herring wdog: watchdog@53fdc000 { 319724ba675SRob Herring compatible = "fsl,imx31-wdt", "fsl,imx21-wdt"; 320724ba675SRob Herring reg = <0x53fdc000 0x4000>; 321724ba675SRob Herring clocks = <&clks 41>; 322724ba675SRob Herring interrupts = <55>; 323724ba675SRob Herring }; 324724ba675SRob Herring 325724ba675SRob Herring pwm: pwm@53fe0000 { 326724ba675SRob Herring compatible = "fsl,imx31-pwm", "fsl,imx27-pwm"; 327724ba675SRob Herring reg = <0x53fe0000 0x4000>; 328724ba675SRob Herring interrupts = <26>; 329724ba675SRob Herring clocks = <&clks 10>, <&clks 42>; 330724ba675SRob Herring clock-names = "ipg", "per"; 331724ba675SRob Herring #pwm-cells = <3>; 332724ba675SRob Herring status = "disabled"; 333724ba675SRob Herring }; 334724ba675SRob Herring }; 335724ba675SRob Herring 336724ba675SRob Herring emi@b8000000 { /* External Memory Interface */ 337724ba675SRob Herring compatible = "simple-bus"; 338724ba675SRob Herring reg = <0xb8000000 0x5000>; 339724ba675SRob Herring ranges; 340724ba675SRob Herring #address-cells = <1>; 341724ba675SRob Herring #size-cells = <1>; 342724ba675SRob Herring 343a1ea2f97SFabio Estevam nfc: nand-controller@b8000000 { 344724ba675SRob Herring compatible = "fsl,imx31-nand", "fsl,imx27-nand"; 345724ba675SRob Herring reg = <0xb8000000 0x1000>; 346724ba675SRob Herring interrupts = <33>; 347724ba675SRob Herring clocks = <&clks 9>; 348724ba675SRob Herring dmas = <&sdma 30 17 0>; 349724ba675SRob Herring dma-names = "rx-tx"; 350724ba675SRob Herring #address-cells = <1>; 351724ba675SRob Herring #size-cells = <1>; 352724ba675SRob Herring status = "disabled"; 353724ba675SRob Herring }; 354724ba675SRob Herring 355ccda9e5cSSebastian Reichel weim: memory-controller@b8002000 { 356724ba675SRob Herring compatible = "fsl,imx31-weim", "fsl,imx27-weim"; 357724ba675SRob Herring reg = <0xb8002000 0x1000>; 358724ba675SRob Herring clocks = <&clks 56>; 359724ba675SRob Herring #address-cells = <2>; 360724ba675SRob Herring #size-cells = <1>; 361724ba675SRob Herring ranges = <0 0 0xa0000000 0x08000000 362724ba675SRob Herring 1 0 0xa8000000 0x08000000 363724ba675SRob Herring 2 0 0xb0000000 0x02000000 364724ba675SRob Herring 3 0 0xb2000000 0x02000000 365724ba675SRob Herring 4 0 0xb4000000 0x02000000 366724ba675SRob Herring 5 0 0xb6000000 0x02000000>; 367724ba675SRob Herring status = "disabled"; 368724ba675SRob Herring }; 369724ba675SRob Herring }; 370724ba675SRob Herring }; 371724ba675SRob Herring}; 372