Back to home page

OSCL-LXR

 
 

    


0001 /*
0002  * P3041DS Device Tree Source
0003  *
0004  * Copyright 2010 - 2015 Freescale Semiconductor Inc.
0005  *
0006  * Redistribution and use in source and binary forms, with or without
0007  * modification, are permitted provided that the following conditions are met:
0008  *     * Redistributions of source code must retain the above copyright
0009  *       notice, this list of conditions and the following disclaimer.
0010  *     * Redistributions in binary form must reproduce the above copyright
0011  *       notice, this list of conditions and the following disclaimer in the
0012  *       documentation and/or other materials provided with the distribution.
0013  *     * Neither the name of Freescale Semiconductor nor the
0014  *       names of its contributors may be used to endorse or promote products
0015  *       derived from this software without specific prior written permission.
0016  *
0017  *
0018  * ALTERNATIVELY, this software may be distributed under the terms of the
0019  * GNU General Public License ("GPL") as published by the Free Software
0020  * Foundation, either version 2 of that License or (at your option) any
0021  * later version.
0022  *
0023  * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY
0024  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
0025  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
0026  * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY
0027  * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
0028  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
0029  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
0030  * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
0031  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
0032  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
0033  */
0034 
0035 /include/ "p3041si-pre.dtsi"
0036 
0037 / {
0038         model = "fsl,P3041DS";
0039         compatible = "fsl,P3041DS";
0040         #address-cells = <2>;
0041         #size-cells = <2>;
0042         interrupt-parent = <&mpic>;
0043 
0044         aliases{
0045                 phy_rgmii_0 = &phy_rgmii_0;
0046                 phy_rgmii_1 = &phy_rgmii_1;
0047                 phy_sgmii_1c = &phy_sgmii_1c;
0048                 phy_sgmii_1d = &phy_sgmii_1d;
0049                 phy_sgmii_1e = &phy_sgmii_1e;
0050                 phy_sgmii_1f = &phy_sgmii_1f;
0051                 phy_xgmii_1 = &phy_xgmii_1;
0052                 phy_xgmii_2 = &phy_xgmii_2;
0053                 emi1_rgmii = &hydra_mdio_rgmii;
0054                 emi1_sgmii = &hydra_mdio_sgmii;
0055                 emi2_xgmii = &hydra_mdio_xgmii;
0056         };
0057 
0058         memory {
0059                 device_type = "memory";
0060         };
0061 
0062         reserved-memory {
0063                 #address-cells = <2>;
0064                 #size-cells = <2>;
0065                 ranges;
0066 
0067                 bman_fbpr: bman-fbpr {
0068                         size = <0 0x1000000>;
0069                         alignment = <0 0x1000000>;
0070                 };
0071                 qman_fqd: qman-fqd {
0072                         size = <0 0x400000>;
0073                         alignment = <0 0x400000>;
0074                 };
0075                 qman_pfdr: qman-pfdr {
0076                         size = <0 0x2000000>;
0077                         alignment = <0 0x2000000>;
0078                 };
0079         };
0080 
0081         dcsr: dcsr@f00000000 {
0082                 ranges = <0x00000000 0xf 0x00000000 0x01008000>;
0083         };
0084 
0085         bportals: bman-portals@ff4000000 {
0086                 ranges = <0x0 0xf 0xf4000000 0x200000>;
0087         };
0088 
0089         qportals: qman-portals@ff4200000 {
0090                 ranges = <0x0 0xf 0xf4200000 0x200000>;
0091         };
0092 
0093         soc: soc@ffe000000 {
0094                 ranges = <0x00000000 0xf 0xfe000000 0x1000000>;
0095                 reg = <0xf 0xfe000000 0 0x00001000>;
0096                 spi@110000 {
0097                         flash@0 {
0098                                 #address-cells = <1>;
0099                                 #size-cells = <1>;
0100                                 compatible = "spansion,s25sl12801", "jedec,spi-nor";
0101                                 reg = <0>;
0102                                 spi-max-frequency = <35000000>; /* input clock */
0103                                 partition@u-boot {
0104                                         label = "u-boot";
0105                                         reg = <0x00000000 0x00100000>;
0106                                         read-only;
0107                                 };
0108                                 partition@kernel {
0109                                         label = "kernel";
0110                                         reg = <0x00100000 0x00500000>;
0111                                         read-only;
0112                                 };
0113                                 partition@dtb {
0114                                         label = "dtb";
0115                                         reg = <0x00600000 0x00100000>;
0116                                         read-only;
0117                                 };
0118                                 partition@fs {
0119                                         label = "file system";
0120                                         reg = <0x00700000 0x00900000>;
0121                                 };
0122                         };
0123                 };
0124 
0125                 i2c@118100 {
0126                         eeprom@51 {
0127                                 compatible = "atmel,24c256";
0128                                 reg = <0x51>;
0129                         };
0130                         eeprom@52 {
0131                                 compatible = "atmel,24c256";
0132                                 reg = <0x52>;
0133                         };
0134                 };
0135 
0136                 i2c@119100 {
0137                         rtc@68 {
0138                                 compatible = "dallas,ds3232";
0139                                 reg = <0x68>;
0140                                 interrupts = <0x1 0x1 0 0>;
0141                         };
0142                         ina220@40 {
0143                                 compatible = "ti,ina220";
0144                                 reg = <0x40>;
0145                                 shunt-resistor = <1000>;
0146                         };
0147                         ina220@41 {
0148                                 compatible = "ti,ina220";
0149                                 reg = <0x41>;
0150                                 shunt-resistor = <1000>;
0151                         };
0152                         ina220@44 {
0153                                 compatible = "ti,ina220";
0154                                 reg = <0x44>;
0155                                 shunt-resistor = <1000>;
0156                         };
0157                         ina220@45 {
0158                                 compatible = "ti,ina220";
0159                                 reg = <0x45>;
0160                                 shunt-resistor = <1000>;
0161                         };
0162                         adt7461@4c {
0163                                 compatible = "adi,adt7461";
0164                                 reg = <0x4c>;
0165                         };
0166                 };
0167 
0168                 fman@400000{
0169                         ethernet@e0000 {
0170                                 phy-handle = <&phy_sgmii_1c>;
0171                                 phy-connection-type = "sgmii";
0172                         };
0173 
0174                         ethernet@e2000 {
0175                                 phy-handle = <&phy_sgmii_1d>;
0176                                 phy-connection-type = "sgmii";
0177                         };
0178 
0179                         ethernet@e4000 {
0180                                 phy-handle = <&phy_sgmii_1e>;
0181                                 phy-connection-type = "sgmii";
0182                         };
0183 
0184                         ethernet@e6000 {
0185                                 phy-handle = <&phy_sgmii_1f>;
0186                                 phy-connection-type = "sgmii";
0187                         };
0188 
0189                         ethernet@e8000 {
0190                                 phy-handle = <&phy_rgmii_1>;
0191                                 phy-connection-type = "rgmii";
0192                         };
0193 
0194                         ethernet@f0000 {
0195                                 phy-handle = <&phy_xgmii_1>;
0196                                 phy-connection-type = "xgmii";
0197                         };
0198 
0199                         hydra_mdio_xgmii: mdio@f1000 {
0200                                 status = "disabled";
0201 
0202                                 phy_xgmii_1: ethernet-phy@4 {
0203                                         compatible = "ethernet-phy-ieee802.3-c45";
0204                                         reg = <0x4>;
0205                                 };
0206 
0207                                 phy_xgmii_2: ethernet-phy@0 {
0208                                         compatible = "ethernet-phy-ieee802.3-c45";
0209                                         reg = <0x0>;
0210                                 };
0211                         };
0212                 };
0213         };
0214 
0215         rio: rapidio@ffe0c0000 {
0216                 reg = <0xf 0xfe0c0000 0 0x11000>;
0217 
0218                 port1 {
0219                         ranges = <0 0 0xc 0x20000000 0 0x10000000>;
0220                 };
0221                 port2 {
0222                         ranges = <0 0 0xc 0x30000000 0 0x10000000>;
0223                 };
0224         };
0225 
0226         lbc: localbus@ffe124000 {
0227                 reg = <0xf 0xfe124000 0 0x1000>;
0228                 ranges = <0 0 0xf 0xe8000000 0x08000000
0229                           2 0 0xf 0xffa00000 0x00040000
0230                           3 0 0xf 0xffdf0000 0x00008000>;
0231 
0232                 flash@0,0 {
0233                         compatible = "cfi-flash";
0234                         reg = <0 0 0x08000000>;
0235                         bank-width = <2>;
0236                         device-width = <2>;
0237                 };
0238 
0239                 nand@2,0 {
0240                         #address-cells = <1>;
0241                         #size-cells = <1>;
0242                         compatible = "fsl,elbc-fcm-nand";
0243                         reg = <0x2 0x0 0x40000>;
0244 
0245                         partition@0 {
0246                                 label = "NAND U-Boot Image";
0247                                 reg = <0x0 0x02000000>;
0248                                 read-only;
0249                         };
0250 
0251                         partition@2000000 {
0252                                 label = "NAND Root File System";
0253                                 reg = <0x02000000 0x10000000>;
0254                         };
0255 
0256                         partition@12000000 {
0257                                 label = "NAND Compressed RFS Image";
0258                                 reg = <0x12000000 0x08000000>;
0259                         };
0260 
0261                         partition@1a000000 {
0262                                 label = "NAND Linux Kernel Image";
0263                                 reg = <0x1a000000 0x04000000>;
0264                         };
0265 
0266                         partition@1e000000 {
0267                                 label = "NAND DTB Image";
0268                                 reg = <0x1e000000 0x01000000>;
0269                         };
0270 
0271                         partition@1f000000 {
0272                                 label = "NAND Writable User area";
0273                                 reg = <0x1f000000 0x21000000>;
0274                         };
0275                 };
0276 
0277                 board-control@3,0 {
0278                         #address-cells = <1>;
0279                         #size-cells = <1>;
0280                         compatible = "fsl,p3041ds-fpga", "fsl,fpga-ngpixis";
0281                         reg = <3 0 0x30>;
0282                         ranges = <0 3 0 0x30>;
0283 
0284                         mdio-mux-emi1 {
0285                                 #address-cells = <1>;
0286                                 #size-cells = <0>;
0287                                 compatible = "mdio-mux-mmioreg", "mdio-mux";
0288                                 mdio-parent-bus = <&mdio0>;
0289                                 reg = <9 1>;
0290                                 mux-mask = <0x78>;
0291 
0292                                 hydra_mdio_rgmii: rgmii-mdio@8 {
0293                                         #address-cells = <1>;
0294                                         #size-cells = <0>;
0295                                         reg = <8>;
0296                                         status = "disabled";
0297 
0298                                         phy_rgmii_0: ethernet-phy@0 {
0299                                                 reg = <0x0>;
0300                                         };
0301 
0302                                         phy_rgmii_1: ethernet-phy@1 {
0303                                                 reg = <0x1>;
0304                                         };
0305                                 };
0306 
0307                                 hydra_mdio_sgmii: sgmii-mdio@28 {
0308                                         #address-cells = <1>;
0309                                         #size-cells = <0>;
0310                                         reg = <0x28>;
0311                                         status = "disabled";
0312 
0313                                         phy_sgmii_1c: ethernet-phy@1c {
0314                                                 reg = <0x1c>;
0315                                         };
0316 
0317                                         phy_sgmii_1d: ethernet-phy@1d {
0318                                                 reg = <0x1d>;
0319                                         };
0320 
0321                                         phy_sgmii_1e: ethernet-phy@1e {
0322                                                 reg = <0x1e>;
0323                                         };
0324 
0325                                         phy_sgmii_1f: ethernet-phy@1f {
0326                                                 reg = <0x1f>;
0327                                         };
0328                                 };
0329                         };
0330                 };
0331         };
0332 
0333         pci0: pcie@ffe200000 {
0334                 reg = <0xf 0xfe200000 0 0x1000>;
0335                 ranges = <0x02000000 0 0xe0000000 0xc 0x00000000 0x0 0x20000000
0336                           0x01000000 0 0x00000000 0xf 0xf8000000 0x0 0x00010000>;
0337                 pcie@0 {
0338                         ranges = <0x02000000 0 0xe0000000
0339                                   0x02000000 0 0xe0000000
0340                                   0 0x20000000
0341 
0342                                   0x01000000 0 0x00000000
0343                                   0x01000000 0 0x00000000
0344                                   0 0x00010000>;
0345                 };
0346         };
0347 
0348         pci1: pcie@ffe201000 {
0349                 reg = <0xf 0xfe201000 0 0x1000>;
0350                 ranges = <0x02000000 0x0 0xe0000000 0xc 0x20000000 0x0 0x20000000
0351                           0x01000000 0x0 0x00000000 0xf 0xf8010000 0x0 0x00010000>;
0352                 pcie@0 {
0353                         ranges = <0x02000000 0 0xe0000000
0354                                   0x02000000 0 0xe0000000
0355                                   0 0x20000000
0356 
0357                                   0x01000000 0 0x00000000
0358                                   0x01000000 0 0x00000000
0359                                   0 0x00010000>;
0360                 };
0361         };
0362 
0363         pci2: pcie@ffe202000 {
0364                 reg = <0xf 0xfe202000 0 0x1000>;
0365                 ranges = <0x02000000 0 0xe0000000 0xc 0x40000000 0 0x20000000
0366                           0x01000000 0 0x00000000 0xf 0xf8020000 0 0x00010000>;
0367                 pcie@0 {
0368                         ranges = <0x02000000 0 0xe0000000
0369                                   0x02000000 0 0xe0000000
0370                                   0 0x20000000
0371 
0372                                   0x01000000 0 0x00000000
0373                                   0x01000000 0 0x00000000
0374                                   0 0x00010000>;
0375                 };
0376         };
0377 
0378         pci3: pcie@ffe203000 {
0379                 reg = <0xf 0xfe203000 0 0x1000>;
0380                 ranges = <0x02000000 0 0xe0000000 0xc 0x60000000 0 0x20000000
0381                           0x01000000 0 0x00000000 0xf 0xf8030000 0 0x00010000>;
0382                 pcie@0 {
0383                         ranges = <0x02000000 0 0xe0000000
0384                                   0x02000000 0 0xe0000000
0385                                   0 0x20000000
0386 
0387                                   0x01000000 0 0x00000000
0388                                   0x01000000 0 0x00000000
0389                                   0 0x00010000>;
0390                 };
0391         };
0392 };
0393 
0394 /include/ "p3041si-post.dtsi"