Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: GPL-2.0
0002 //
0003 // Copyright 2012 Steffen Trumtrar, Pengutronix
0004 //
0005 // based on imx27.dtsi
0006 
0007 #include "imx35-pinfunc.h"
0008 
0009 / {
0010         #address-cells = <1>;
0011         #size-cells = <1>;
0012         /*
0013          * The decompressor and also some bootloaders rely on a
0014          * pre-existing /chosen node to be available to insert the
0015          * command line and merge other ATAGS info.
0016          */
0017         chosen {};
0018 
0019         aliases {
0020                 ethernet0 = &fec;
0021                 gpio0 = &gpio1;
0022                 gpio1 = &gpio2;
0023                 gpio2 = &gpio3;
0024                 i2c0 = &i2c1;
0025                 i2c1 = &i2c2;
0026                 i2c2 = &i2c3;
0027                 mmc0 = &esdhc1;
0028                 mmc1 = &esdhc2;
0029                 mmc2 = &esdhc3;
0030                 serial0 = &uart1;
0031                 serial1 = &uart2;
0032                 serial2 = &uart3;
0033                 spi0 = &spi1;
0034                 spi1 = &spi2;
0035         };
0036 
0037         cpus {
0038                 #address-cells = <1>;
0039                 #size-cells = <0>;
0040 
0041                 cpu@0 {
0042                         compatible = "arm,arm1136jf-s";
0043                         device_type = "cpu";
0044                         reg = <0>;
0045                 };
0046         };
0047 
0048         avic: avic-interrupt-controller@68000000 {
0049                 compatible = "fsl,imx35-avic", "fsl,avic";
0050                 interrupt-controller;
0051                 #interrupt-cells = <1>;
0052                 reg = <0x68000000 0x10000000>;
0053         };
0054 
0055         soc {
0056                 #address-cells = <1>;
0057                 #size-cells = <1>;
0058                 compatible = "simple-bus";
0059                 interrupt-parent = <&avic>;
0060                 ranges;
0061 
0062                 L2: cache-controller@30000000 {
0063                         compatible = "arm,l210-cache";
0064                         reg = <0x30000000 0x1000>;
0065                         cache-unified;
0066                         cache-level = <2>;
0067                 };
0068 
0069                 aips1: bus@43f00000 {
0070                         compatible = "fsl,aips", "simple-bus";
0071                         #address-cells = <1>;
0072                         #size-cells = <1>;
0073                         reg = <0x43f00000 0x100000>;
0074                         ranges;
0075 
0076                         i2c1: i2c@43f80000 {
0077                                 #address-cells = <1>;
0078                                 #size-cells = <0>;
0079                                 compatible = "fsl,imx35-i2c", "fsl,imx1-i2c";
0080                                 reg = <0x43f80000 0x4000>;
0081                                 clocks = <&clks 51>;
0082                                 clock-names = "ipg_per";
0083                                 interrupts = <10>;
0084                                 status = "disabled";
0085                         };
0086 
0087                         i2c3: i2c@43f84000 {
0088                                 #address-cells = <1>;
0089                                 #size-cells = <0>;
0090                                 compatible = "fsl,imx35-i2c", "fsl,imx1-i2c";
0091                                 reg = <0x43f84000 0x4000>;
0092                                 clocks = <&clks 53>;
0093                                 clock-names = "ipg_per";
0094                                 interrupts = <3>;
0095                                 status = "disabled";
0096                         };
0097 
0098                         uart1: serial@43f90000 {
0099                                 compatible = "fsl,imx35-uart", "fsl,imx21-uart";
0100                                 reg = <0x43f90000 0x4000>;
0101                                 clocks = <&clks 9>, <&clks 70>;
0102                                 clock-names = "ipg", "per";
0103                                 interrupts = <45>;
0104                                 status = "disabled";
0105                         };
0106 
0107                         uart2: serial@43f94000 {
0108                                 compatible = "fsl,imx35-uart", "fsl,imx21-uart";
0109                                 reg = <0x43f94000 0x4000>;
0110                                 clocks = <&clks 9>, <&clks 71>;
0111                                 clock-names = "ipg", "per";
0112                                 interrupts = <32>;
0113                                 status = "disabled";
0114                         };
0115 
0116                         i2c2: i2c@43f98000 {
0117                                 #address-cells = <1>;
0118                                 #size-cells = <0>;
0119                                 compatible = "fsl,imx35-i2c", "fsl,imx1-i2c";
0120                                 reg = <0x43f98000 0x4000>;
0121                                 clocks = <&clks 52>;
0122                                 clock-names = "ipg_per";
0123                                 interrupts = <4>;
0124                                 status = "disabled";
0125                         };
0126 
0127                         ssi1: ssi@43fa0000 {
0128                                 #sound-dai-cells = <0>;
0129                                 compatible = "fsl,imx35-ssi", "fsl,imx21-ssi";
0130                                 reg = <0x43fa0000 0x4000>;
0131                                 interrupts = <11>;
0132                                 clocks = <&clks 68>;
0133                                 dmas = <&sdma 28 0 0>,
0134                                        <&sdma 29 0 0>;
0135                                 dma-names = "rx", "tx";
0136                                 fsl,fifo-depth = <15>;
0137                                 status = "disabled";
0138                         };
0139 
0140                         spi1: spi@43fa4000 {
0141                                 #address-cells = <1>;
0142                                 #size-cells = <0>;
0143                                 compatible = "fsl,imx35-cspi";
0144                                 reg = <0x43fa4000 0x4000>;
0145                                 clocks = <&clks 35 &clks 35>;
0146                                 clock-names = "ipg", "per";
0147                                 interrupts = <14>;
0148                                 status = "disabled";
0149                         };
0150 
0151                         kpp: kpp@43fa8000 {
0152                                 compatible = "fsl,imx35-kpp", "fsl,imx21-kpp";
0153                                 reg = <0x43fa8000 0x4000>;
0154                                 interrupts = <24>;
0155                                 clocks = <&clks 56>;
0156                                 status = "disabled";
0157                         };
0158 
0159                         iomuxc: iomuxc@43fac000 {
0160                                 compatible = "fsl,imx35-iomuxc";
0161                                 reg = <0x43fac000 0x4000>;
0162                         };
0163                 };
0164 
0165                 spba: spba-bus@50000000 {
0166                         compatible = "fsl,spba-bus", "simple-bus";
0167                         #address-cells = <1>;
0168                         #size-cells = <1>;
0169                         reg = <0x50000000 0x100000>;
0170                         ranges;
0171 
0172                         uart3: serial@5000c000 {
0173                                 compatible = "fsl,imx35-uart", "fsl,imx21-uart";
0174                                 reg = <0x5000c000 0x4000>;
0175                                 clocks = <&clks 9>, <&clks 72>;
0176                                 clock-names = "ipg", "per";
0177                                 interrupts = <18>;
0178                                 status = "disabled";
0179                         };
0180 
0181                         spi2: spi@50010000 {
0182                                 #address-cells = <1>;
0183                                 #size-cells = <0>;
0184                                 compatible = "fsl,imx35-cspi";
0185                                 reg = <0x50010000 0x4000>;
0186                                 interrupts = <13>;
0187                                 clocks = <&clks 36 &clks 36>;
0188                                 clock-names = "ipg", "per";
0189                                 status = "disabled";
0190                         };
0191 
0192                         fec: ethernet@50038000 {
0193                                 compatible = "fsl,imx35-fec", "fsl,imx27-fec";
0194                                 reg = <0x50038000 0x4000>;
0195                                 clocks = <&clks 46>, <&clks 8>;
0196                                 clock-names = "ipg", "ahb";
0197                                 interrupts = <57>;
0198                                 status = "disabled";
0199                         };
0200                 };
0201 
0202                 aips2: bus@53f00000 {
0203                         compatible = "fsl,aips", "simple-bus";
0204                         #address-cells = <1>;
0205                         #size-cells = <1>;
0206                         reg = <0x53f00000 0x100000>;
0207                         ranges;
0208 
0209                         clks: ccm@53f80000 {
0210                                 compatible = "fsl,imx35-ccm";
0211                                 reg = <0x53f80000 0x4000>;
0212                                 interrupts = <31>;
0213                                 #clock-cells = <1>;
0214                         };
0215 
0216                         gpt: timer@53f90000 {
0217                                 compatible = "fsl,imx35-gpt", "fsl,imx31-gpt";
0218                                 reg = <0x53f90000 0x4000>;
0219                                 interrupts = <29>;
0220                                 clocks = <&clks 9>, <&clks 50>;
0221                                 clock-names = "ipg", "per";
0222                         };
0223 
0224                         gpio3: gpio@53fa4000 {
0225                                 compatible = "fsl,imx35-gpio", "fsl,imx31-gpio";
0226                                 reg = <0x53fa4000 0x4000>;
0227                                 interrupts = <56>;
0228                                 gpio-controller;
0229                                 #gpio-cells = <2>;
0230                                 interrupt-controller;
0231                                 #interrupt-cells = <2>;
0232                         };
0233 
0234                         esdhc1: mmc@53fb4000 {
0235                                 compatible = "fsl,imx35-esdhc";
0236                                 reg = <0x53fb4000 0x4000>;
0237                                 interrupts = <7>;
0238                                 clocks = <&clks 9>, <&clks 8>, <&clks 43>;
0239                                 clock-names = "ipg", "ahb", "per";
0240                                 status = "disabled";
0241                         };
0242 
0243                         esdhc2: mmc@53fb8000 {
0244                                 compatible = "fsl,imx35-esdhc";
0245                                 reg = <0x53fb8000 0x4000>;
0246                                 interrupts = <8>;
0247                                 clocks = <&clks 9>, <&clks 8>, <&clks 44>;
0248                                 clock-names = "ipg", "ahb", "per";
0249                                 status = "disabled";
0250                         };
0251 
0252                         esdhc3: mmc@53fbc000 {
0253                                 compatible = "fsl,imx35-esdhc";
0254                                 reg = <0x53fbc000 0x4000>;
0255                                 interrupts = <9>;
0256                                 clocks = <&clks 9>, <&clks 8>, <&clks 45>;
0257                                 clock-names = "ipg", "ahb", "per";
0258                                 status = "disabled";
0259                         };
0260 
0261                         audmux: audmux@53fc4000 {
0262                                 compatible = "fsl,imx35-audmux", "fsl,imx31-audmux";
0263                                 reg = <0x53fc4000 0x4000>;
0264                                 status = "disabled";
0265                         };
0266 
0267                         gpio1: gpio@53fcc000 {
0268                                 compatible = "fsl,imx35-gpio", "fsl,imx31-gpio";
0269                                 reg = <0x53fcc000 0x4000>;
0270                                 interrupts = <52>;
0271                                 gpio-controller;
0272                                 #gpio-cells = <2>;
0273                                 interrupt-controller;
0274                                 #interrupt-cells = <2>;
0275                         };
0276 
0277                         gpio2: gpio@53fd0000 {
0278                                 compatible = "fsl,imx35-gpio", "fsl,imx31-gpio";
0279                                 reg = <0x53fd0000 0x4000>;
0280                                 interrupts = <51>;
0281                                 gpio-controller;
0282                                 #gpio-cells = <2>;
0283                                 interrupt-controller;
0284                                 #interrupt-cells = <2>;
0285                         };
0286 
0287                         sdma: sdma@53fd4000 {
0288                                 compatible = "fsl,imx35-sdma";
0289                                 reg = <0x53fd4000 0x4000>;
0290                                 clocks = <&clks 9>, <&clks 65>;
0291                                 clock-names = "ipg", "ahb";
0292                                 #dma-cells = <3>;
0293                                 interrupts = <34>;
0294                                 fsl,sdma-ram-script-name = "imx/sdma/sdma-imx35.bin";
0295                         };
0296 
0297                         wdog: watchdog@53fdc000 {
0298                                 compatible = "fsl,imx35-wdt", "fsl,imx21-wdt";
0299                                 reg = <0x53fdc000 0x4000>;
0300                                 clocks = <&clks 74>;
0301                                 clock-names = "";
0302                                 interrupts = <55>;
0303                         };
0304 
0305                         can1: can@53fe4000 {
0306                                 compatible = "fsl,imx35-flexcan", "fsl,imx25-flexcan";
0307                                 reg = <0x53fe4000 0x1000>;
0308                                 clocks = <&clks 33>, <&clks 33>;
0309                                 clock-names = "ipg", "per";
0310                                 interrupts = <43>;
0311                                 status = "disabled";
0312                         };
0313 
0314                         can2: can@53fe8000 {
0315                                 compatible = "fsl,imx35-flexcan", "fsl,imx25-flexcan";
0316                                 reg = <0x53fe8000 0x1000>;
0317                                 clocks = <&clks 34>, <&clks 34>;
0318                                 clock-names = "ipg", "per";
0319                                 interrupts = <44>;
0320                                 status = "disabled";
0321                         };
0322 
0323                         efuse@53ff0000 {
0324                                 compatible = "fsl,imx35-iim";
0325                                 reg = <0x53ff0000 0x4000>;
0326                                 interrupts = <19>;
0327                                 clocks = <&clks 80>;
0328                         };
0329 
0330                         usbotg: usb@53ff4000 {
0331                                 compatible = "fsl,imx35-usb", "fsl,imx27-usb";
0332                                 reg = <0x53ff4000 0x0200>;
0333                                 interrupts = <37>;
0334                                 clocks = <&clks 9>, <&clks 73>, <&clks 28>;
0335                                 clock-names = "ipg", "ahb", "per";
0336                                 fsl,usbmisc = <&usbmisc 0>;
0337                                 fsl,usbphy = <&usbphy0>;
0338                                 status = "disabled";
0339                         };
0340 
0341                         usbhost1: usb@53ff4400 {
0342                                 compatible = "fsl,imx35-usb", "fsl,imx27-usb";
0343                                 reg = <0x53ff4400 0x0200>;
0344                                 interrupts = <35>;
0345                                 clocks = <&clks 9>, <&clks 73>, <&clks 28>;
0346                                 clock-names = "ipg", "ahb", "per";
0347                                 fsl,usbmisc = <&usbmisc 1>;
0348                                 fsl,usbphy = <&usbphy1>;
0349                                 dr_mode = "host";
0350                                 status = "disabled";
0351                         };
0352 
0353                         usbmisc: usbmisc@53ff4600 {
0354                                 #index-cells = <1>;
0355                                 compatible = "fsl,imx35-usbmisc";
0356                                 reg = <0x53ff4600 0x00f>;
0357                         };
0358                 };
0359 
0360                 emi@80000000 { /* External Memory Interface */
0361                         compatible = "fsl,emi", "simple-bus";
0362                         #address-cells = <1>;
0363                         #size-cells = <1>;
0364                         reg = <0x80000000 0x40000000>;
0365                         ranges;
0366 
0367                         nfc: nand@bb000000 {
0368                                 #address-cells = <1>;
0369                                 #size-cells = <1>;
0370                                 compatible = "fsl,imx35-nand", "fsl,imx25-nand";
0371                                 reg = <0xbb000000 0x2000>;
0372                                 clocks = <&clks 29>;
0373                                 clock-names = "";
0374                                 interrupts = <33>;
0375                                 status = "disabled";
0376                         };
0377 
0378                         weim: weim@b8002000 {
0379                                 #address-cells = <2>;
0380                                 #size-cells = <1>;
0381                                 clocks = <&clks 0>;
0382                                 compatible = "fsl,imx35-weim", "fsl,imx27-weim";
0383                                 reg = <0xb8002000 0x1000>;
0384                                 ranges = <
0385                                         0 0 0xa0000000 0x8000000
0386                                         1 0 0xa8000000 0x8000000
0387                                         2 0 0xb0000000 0x2000000
0388                                         3 0 0xb2000000 0x2000000
0389                                         4 0 0xb4000000 0x2000000
0390                                         5 0 0xb6000000 0x2000000
0391                                 >;
0392                                 status = "disabled";
0393                         };
0394                 };
0395         };
0396 
0397         usbphy {
0398                 compatible = "simple-bus";
0399                 #address-cells = <1>;
0400                 #size-cells = <0>;
0401 
0402                 usbphy0: usb-phy@0 {
0403                         reg = <0>;
0404                         compatible = "usb-nop-xceiv";
0405                         #phy-cells = <0>;
0406                 };
0407 
0408                 usbphy1: usb-phy@1 {
0409                         reg = <1>;
0410                         compatible = "usb-nop-xceiv";
0411                         #phy-cells = <0>;
0412                 };
0413         };
0414 };