Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: GPL-2.0-or-later
0002 /*
0003  * mpc8308_p1m Device Tree Source
0004  *
0005  * Copyright 2010 Ilya Yanok, Emcraft Systems, yanok@emcraft.com
0006  */
0007 
0008 /dts-v1/;
0009 
0010 / {
0011         compatible = "denx,mpc8308_p1m";
0012         #address-cells = <1>;
0013         #size-cells = <1>;
0014 
0015         aliases {
0016                 ethernet0 = &enet0;
0017                 ethernet1 = &enet1;
0018                 serial0 = &serial0;
0019                 serial1 = &serial1;
0020                 pci0 = &pci0;
0021         };
0022 
0023         cpus {
0024                 #address-cells = <1>;
0025                 #size-cells = <0>;
0026 
0027                 PowerPC,8308@0 {
0028                         device_type = "cpu";
0029                         reg = <0x0>;
0030                         d-cache-line-size = <32>;
0031                         i-cache-line-size = <32>;
0032                         d-cache-size = <16384>;
0033                         i-cache-size = <16384>;
0034                         timebase-frequency = <0>;       // from bootloader
0035                         bus-frequency = <0>;            // from bootloader
0036                         clock-frequency = <0>;          // from bootloader
0037                 };
0038         };
0039 
0040         memory {
0041                 device_type = "memory";
0042                 reg = <0x00000000 0x08000000>;  // 128MB at 0
0043         };
0044 
0045         localbus@e0005000 {
0046                 #address-cells = <2>;
0047                 #size-cells = <1>;
0048                 compatible = "fsl,mpc8315-elbc", "fsl,elbc", "simple-bus";
0049                 reg = <0xe0005000 0x1000>;
0050                 interrupts = <77 0x8>;
0051                 interrupt-parent = <&ipic>;
0052 
0053                 ranges = <0x0 0x0 0xfc000000 0x04000000
0054                           0x1 0x0 0xfbff0000 0x00008000
0055                           0x2 0x0 0xfbff8000 0x00008000>;
0056 
0057                 flash@0,0 {
0058                         #address-cells = <1>;
0059                         #size-cells = <1>;
0060                         compatible = "cfi-flash";
0061                         reg = <0x0 0x0 0x4000000>;
0062                         bank-width = <2>;
0063                         device-width = <1>;
0064 
0065                         u-boot@0 {
0066                                 reg = <0x0 0x60000>;
0067                                 read-only;
0068                         };
0069                         env@60000 {
0070                                 reg = <0x60000 0x20000>;
0071                         };
0072                         env1@80000 {
0073                                 reg = <0x80000 0x20000>;
0074                         };
0075                         kernel@a0000 {
0076                                 reg = <0xa0000 0x200000>;
0077                         };
0078                         dtb@2a0000 {
0079                                 reg = <0x2a0000 0x20000>;
0080                         };
0081                         ramdisk@2c0000 {
0082                                 reg = <0x2c0000 0x640000>;
0083                         };
0084                         user@700000 {
0085                                 reg = <0x700000 0x3900000>;
0086                         };
0087                 };
0088 
0089                 can@1,0 {
0090                         compatible = "nxp,sja1000";
0091                         reg = <0x1 0x0 0x80>;
0092                         interrupts = <18 0x8>;
0093                         interrups-parent = <&ipic>;
0094                 };
0095 
0096                 cpld@2,0 {
0097                         compatible = "denx,mpc8308_p1m-cpld";
0098                         reg = <0x2 0x0 0x8>;
0099                         interrupts = <48 0x8>;
0100                         interrups-parent = <&ipic>;
0101                 };
0102         };
0103 
0104         immr@e0000000 {
0105                 #address-cells = <1>;
0106                 #size-cells = <1>;
0107                 device_type = "soc";
0108                 compatible = "fsl,mpc8308-immr", "simple-bus";
0109                 ranges = <0 0xe0000000 0x00100000>;
0110                 reg = <0xe0000000 0x00000200>;
0111                 bus-frequency = <0>;
0112 
0113                 i2c@3000 {
0114                         #address-cells = <1>;
0115                         #size-cells = <0>;
0116                         compatible = "fsl-i2c";
0117                         reg = <0x3000 0x100>;
0118                         interrupts = <14 0x8>;
0119                         interrupt-parent = <&ipic>;
0120                         dfsrr;
0121                         fram@50 {
0122                                 compatible = "ramtron,24c64", "atmel,24c64";
0123                                 reg = <0x50>;
0124                         };
0125                 };
0126 
0127                 i2c@3100 {
0128                         #address-cells = <1>;
0129                         #size-cells = <0>;
0130                         compatible = "fsl-i2c";
0131                         reg = <0x3100 0x100>;
0132                         interrupts = <15 0x8>;
0133                         interrupt-parent = <&ipic>;
0134                         dfsrr;
0135                         pwm@28 {
0136                                 compatible = "maxim,ds1050";
0137                                 reg = <0x28>;
0138                         };
0139                         sensor@48 {
0140                                 compatible = "maxim,max6625";
0141                                 reg = <0x48>;
0142                         };
0143                         sensor@49 {
0144                                 compatible = "maxim,max6625";
0145                                 reg = <0x49>;
0146                         };
0147                         sensor@4b {
0148                                 compatible = "maxim,max6625";
0149                                 reg = <0x4b>;
0150                         };
0151                 };
0152 
0153                 usb@23000 {
0154                         compatible = "fsl-usb2-dr";
0155                         reg = <0x23000 0x1000>;
0156                         #address-cells = <1>;
0157                         #size-cells = <0>;
0158                         interrupt-parent = <&ipic>;
0159                         interrupts = <38 0x8>;
0160                         dr_mode = "peripheral";
0161                         phy_type = "ulpi";
0162                 };
0163 
0164                 enet0: ethernet@24000 {
0165                         #address-cells = <1>;
0166                         #size-cells = <1>;
0167                         ranges = <0x0 0x24000 0x1000>;
0168 
0169                         cell-index = <0>;
0170                         device_type = "network";
0171                         model = "eTSEC";
0172                         compatible = "gianfar";
0173                         reg = <0x24000 0x1000>;
0174                         local-mac-address = [ 00 00 00 00 00 00 ];
0175                         interrupts = <32 0x8 33 0x8 34 0x8>;
0176                         interrupt-parent = <&ipic>;
0177                         phy-handle = < &phy1 >;
0178 
0179                         mdio@520 {
0180                                 #address-cells = <1>;
0181                                 #size-cells = <0>;
0182                                 compatible = "fsl,gianfar-mdio";
0183                                 reg = <0x520 0x20>;
0184                                 phy1: ethernet-phy@1 {
0185                                         interrupt-parent = <&ipic>;
0186                                         interrupts = <17 0x8>;
0187                                         reg = <0x1>;
0188                                 };
0189                                 phy2: ethernet-phy@2 {
0190                                         interrupt-parent = <&ipic>;
0191                                         interrupts = <19 0x8>;
0192                                         reg = <0x2>;
0193                                 };
0194                                 tbi0: tbi-phy@11 {
0195                                         reg = <0x11>;
0196                                         device_type = "tbi-phy";
0197                                 };
0198                         };
0199                 };
0200 
0201                 enet1: ethernet@25000 {
0202                         #address-cells = <1>;
0203                         #size-cells = <1>;
0204                         cell-index = <1>;
0205                         device_type = "network";
0206                         model = "eTSEC";
0207                         compatible = "gianfar";
0208                         reg = <0x25000 0x1000>;
0209                         ranges = <0x0 0x25000 0x1000>;
0210                         local-mac-address = [ 00 00 00 00 00 00 ];
0211                         interrupts = <35 0x8 36 0x8 37 0x8>;
0212                         interrupt-parent = <&ipic>;
0213                         phy-handle = < &phy2 >;
0214 
0215                         mdio@520 {
0216                                 #address-cells = <1>;
0217                                 #size-cells = <0>;
0218                                 compatible = "fsl,gianfar-tbi";
0219                                 reg = <0x520 0x20>;
0220                                 tbi1: tbi-phy@11 {
0221                                         reg = <0x11>;
0222                                         device_type = "tbi-phy";
0223                                 };
0224                         };
0225                 };
0226 
0227                 serial0: serial@4500 {
0228                         cell-index = <0>;
0229                         device_type = "serial";
0230                         compatible = "fsl,ns16550", "ns16550";
0231                         reg = <0x4500 0x100>;
0232                         clock-frequency = <133333333>;
0233                         interrupts = <9 0x8>;
0234                         interrupt-parent = <&ipic>;
0235                 };
0236 
0237                 serial1: serial@4600 {
0238                         cell-index = <1>;
0239                         device_type = "serial";
0240                         compatible = "fsl,ns16550", "ns16550";
0241                         reg = <0x4600 0x100>;
0242                         clock-frequency = <133333333>;
0243                         interrupts = <10 0x8>;
0244                         interrupt-parent = <&ipic>;
0245                 };
0246 
0247                 gpio@c00 {
0248                         #gpio-cells = <2>;
0249                         compatible = "fsl,mpc8308-gpio", "fsl,mpc8349-gpio";
0250                         reg = <0xc00 0x18>;
0251                         interrupts = <74 0x8>;
0252                         interrupt-parent = <&ipic>;
0253                         gpio-controller;
0254                 };
0255 
0256                 timer@500 {
0257                         compatible = "fsl,mpc8308-gtm", "fsl,gtm";
0258                         reg = <0x500 0x100>;
0259                         interrupts = <90 8 78 8 84 8 72 8>;
0260                         interrupt-parent = <&ipic>;
0261                         clock-frequency = <133333333>;
0262                 };
0263 
0264                 /* IPIC
0265                  * interrupts cell = <intr #, sense>
0266                  * sense values match linux IORESOURCE_IRQ_* defines:
0267                  * sense == 8: Level, low assertion
0268                  * sense == 2: Edge, high-to-low change
0269                  */
0270                 ipic: interrupt-controller@700 {
0271                         compatible = "fsl,ipic";
0272                         interrupt-controller;
0273                         #address-cells = <0>;
0274                         #interrupt-cells = <2>;
0275                         reg = <0x700 0x100>;
0276                         device_type = "ipic";
0277                 };
0278 
0279                 ipic-msi@7c0 {
0280                         compatible = "fsl,ipic-msi";
0281                         reg = <0x7c0 0x40>;
0282                         msi-available-ranges = <0x0 0x100>;
0283                         interrupts = < 0x43 0x8
0284                                         0x4  0x8
0285                                         0x51 0x8
0286                                         0x52 0x8
0287                                         0x56 0x8
0288                                         0x57 0x8
0289                                         0x58 0x8
0290                                         0x59 0x8 >;
0291                         interrupt-parent = < &ipic >;
0292                 };
0293 
0294                 dma@2c000 {
0295                         compatible = "fsl,mpc8308-dma";
0296                         reg = <0x2c000 0x1800>;
0297                         interrupts = <3 0x8
0298                                         94 0x8>;
0299                         interrupt-parent = < &ipic >;
0300                 };
0301 
0302         };
0303 
0304         pci0: pcie@e0009000 {
0305                 #address-cells = <3>;
0306                 #size-cells = <2>;
0307                 #interrupt-cells = <1>;
0308                 device_type = "pci";
0309                 compatible = "fsl,mpc8308-pcie", "fsl,mpc8314-pcie";
0310                 reg = <0xe0009000 0x00001000
0311                         0xb0000000 0x01000000>;
0312                 ranges = <0x02000000 0 0xa0000000 0xa0000000 0 0x10000000
0313                           0x01000000 0 0x00000000 0xb1000000 0 0x00800000>;
0314                 bus-range = <0 0>;
0315                 interrupt-map-mask = <0 0 0 0>;
0316                 interrupt-map = <0 0 0 0 &ipic 1 8>;
0317                 interrupts = <0x1 0x8>;
0318                 interrupt-parent = <&ipic>;
0319                 clock-frequency = <0>;
0320 
0321                 pcie@0 {
0322                         #address-cells = <3>;
0323                         #size-cells = <2>;
0324                         device_type = "pci";
0325                         reg = <0 0 0 0 0>;
0326                         ranges = <0x02000000 0 0xa0000000
0327                                   0x02000000 0 0xa0000000
0328                                   0 0x10000000
0329                                   0x01000000 0 0x00000000
0330                                   0x01000000 0 0x00000000
0331                                   0 0x00800000>;
0332                 };
0333         };
0334 };