Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: GPL-2.0-or-later
0002 /*
0003  * MPC8313E RDB Device Tree Source
0004  *
0005  * Copyright 2005, 2006, 2007 Freescale Semiconductor Inc.
0006  */
0007 
0008 /dts-v1/;
0009 
0010 / {
0011         model = "MPC8313ERDB";
0012         compatible = "MPC8313ERDB", "MPC831xRDB", "MPC83xxRDB";
0013         #address-cells = <1>;
0014         #size-cells = <1>;
0015 
0016         aliases {
0017                 ethernet0 = &enet0;
0018                 ethernet1 = &enet1;
0019                 serial0 = &serial0;
0020                 serial1 = &serial1;
0021                 pci0 = &pci0;
0022         };
0023 
0024         cpus {
0025                 #address-cells = <1>;
0026                 #size-cells = <0>;
0027 
0028                 PowerPC,8313@0 {
0029                         device_type = "cpu";
0030                         reg = <0x0>;
0031                         d-cache-line-size = <32>;
0032                         i-cache-line-size = <32>;
0033                         d-cache-size = <16384>;
0034                         i-cache-size = <16384>;
0035                         timebase-frequency = <0>;       // from bootloader
0036                         bus-frequency = <0>;            // from bootloader
0037                         clock-frequency = <0>;          // from bootloader
0038                 };
0039         };
0040 
0041         memory {
0042                 device_type = "memory";
0043                 reg = <0x00000000 0x08000000>;  // 128MB at 0
0044         };
0045 
0046         localbus@e0005000 {
0047                 #address-cells = <2>;
0048                 #size-cells = <1>;
0049                 compatible = "fsl,mpc8313-elbc", "fsl,elbc", "simple-bus";
0050                 reg = <0xe0005000 0x1000>;
0051                 interrupts = <77 0x8>;
0052                 interrupt-parent = <&ipic>;
0053 
0054                 // CS0 and CS1 are swapped when
0055                 // booting from nand, but the
0056                 // addresses are the same.
0057                 ranges = <0x0 0x0 0xfe000000 0x00800000
0058                           0x1 0x0 0xe2800000 0x00008000
0059                           0x2 0x0 0xf0000000 0x00020000
0060                           0x3 0x0 0xfa000000 0x00008000>;
0061 
0062                 flash@0,0 {
0063                         #address-cells = <1>;
0064                         #size-cells = <1>;
0065                         compatible = "cfi-flash";
0066                         reg = <0x0 0x0 0x800000>;
0067                         bank-width = <2>;
0068                         device-width = <1>;
0069                 };
0070 
0071                 nand@1,0 {
0072                         #address-cells = <1>;
0073                         #size-cells = <1>;
0074                         compatible = "fsl,mpc8313-fcm-nand",
0075                                      "fsl,elbc-fcm-nand";
0076                         reg = <0x1 0x0 0x2000>;
0077 
0078                         u-boot@0 {
0079                                 reg = <0x0 0x100000>;
0080                                 read-only;
0081                         };
0082 
0083                         kernel@100000 {
0084                                 reg = <0x100000 0x300000>;
0085                         };
0086 
0087                         fs@400000 {
0088                                 reg = <0x400000 0x1c00000>;
0089                         };
0090                 };
0091         };
0092 
0093         soc8313@e0000000 {
0094                 #address-cells = <1>;
0095                 #size-cells = <1>;
0096                 device_type = "soc";
0097                 compatible = "simple-bus";
0098                 ranges = <0x0 0xe0000000 0x00100000>;
0099                 reg = <0xe0000000 0x00000200>;
0100                 bus-frequency = <0>;
0101 
0102                 wdt@200 {
0103                         device_type = "watchdog";
0104                         compatible = "mpc83xx_wdt";
0105                         reg = <0x200 0x100>;
0106                 };
0107 
0108                 sleep-nexus {
0109                         #address-cells = <1>;
0110                         #size-cells = <1>;
0111                         compatible = "simple-bus";
0112                         sleep = <&pmc 0x03000000>;
0113                         ranges;
0114 
0115                         i2c@3000 {
0116                                 #address-cells = <1>;
0117                                 #size-cells = <0>;
0118                                 cell-index = <0>;
0119                                 compatible = "fsl-i2c";
0120                                 reg = <0x3000 0x100>;
0121                                 interrupts = <14 0x8>;
0122                                 interrupt-parent = <&ipic>;
0123                                 dfsrr;
0124                                 rtc@68 {
0125                                         compatible = "dallas,ds1339";
0126                                         reg = <0x68>;
0127                                 };
0128                         };
0129 
0130                         crypto@30000 {
0131                                 compatible = "fsl,sec2.2", "fsl,sec2.1",
0132                                              "fsl,sec2.0";
0133                                 reg = <0x30000 0x10000>;
0134                                 interrupts = <11 0x8>;
0135                                 interrupt-parent = <&ipic>;
0136                                 fsl,num-channels = <1>;
0137                                 fsl,channel-fifo-len = <24>;
0138                                 fsl,exec-units-mask = <0x4c>;
0139                                 fsl,descriptor-types-mask = <0x0122003f>;
0140                         };
0141                 };
0142 
0143                 i2c@3100 {
0144                         #address-cells = <1>;
0145                         #size-cells = <0>;
0146                         cell-index = <1>;
0147                         compatible = "fsl-i2c";
0148                         reg = <0x3100 0x100>;
0149                         interrupts = <15 0x8>;
0150                         interrupt-parent = <&ipic>;
0151                         dfsrr;
0152                 };
0153 
0154                 spi@7000 {
0155                         cell-index = <0>;
0156                         compatible = "fsl,spi";
0157                         reg = <0x7000 0x1000>;
0158                         interrupts = <16 0x8>;
0159                         interrupt-parent = <&ipic>;
0160                         mode = "cpu";
0161                 };
0162 
0163                 /* phy type (ULPI, UTMI, UTMI_WIDE, SERIAL) */
0164                 usb@23000 {
0165                         compatible = "fsl-usb2-dr";
0166                         reg = <0x23000 0x1000>;
0167                         #address-cells = <1>;
0168                         #size-cells = <0>;
0169                         interrupt-parent = <&ipic>;
0170                         interrupts = <38 0x8>;
0171                         phy_type = "utmi_wide";
0172                         sleep = <&pmc 0x00300000>;
0173                 };
0174 
0175                 ptp_clock@24E00 {
0176                         compatible = "fsl,etsec-ptp";
0177                         reg = <0x24E00 0xB0>;
0178                         interrupts = <12 0x8 13 0x8>;
0179                         interrupt-parent = < &ipic >;
0180                         fsl,tclk-period = <10>;
0181                         fsl,tmr-prsc    = <100>;
0182                         fsl,tmr-add     = <0x999999A4>;
0183                         fsl,tmr-fiper1  = <0x3B9AC9F6>;
0184                         fsl,tmr-fiper2  = <0x00018696>;
0185                         fsl,max-adj     = <659999998>;
0186                 };
0187 
0188                 enet0: ethernet@24000 {
0189                         #address-cells = <1>;
0190                         #size-cells = <1>;
0191                         sleep = <&pmc 0x20000000>;
0192                         ranges = <0x0 0x24000 0x1000>;
0193 
0194                         cell-index = <0>;
0195                         device_type = "network";
0196                         model = "eTSEC";
0197                         compatible = "gianfar";
0198                         reg = <0x24000 0x1000>;
0199                         local-mac-address = [ 00 00 00 00 00 00 ];
0200                         interrupts = <37 0x8 36 0x8 35 0x8>;
0201                         interrupt-parent = <&ipic>;
0202                         tbi-handle = < &tbi0 >;
0203                         /* Vitesse 7385 isn't on the MDIO bus */
0204                         fixed-link = <1 1 1000 0 0>;
0205                         fsl,magic-packet;
0206 
0207                         mdio@520 {
0208                                 #address-cells = <1>;
0209                                 #size-cells = <0>;
0210                                 compatible = "fsl,gianfar-mdio";
0211                                 reg = <0x520 0x20>;
0212                                 phy4: ethernet-phy@4 {
0213                                         interrupt-parent = <&ipic>;
0214                                         interrupts = <20 0x8>;
0215                                         reg = <0x4>;
0216                                 };
0217                                 tbi0: tbi-phy@11 {
0218                                         reg = <0x11>;
0219                                         device_type = "tbi-phy";
0220                                 };
0221                         };
0222                 };
0223 
0224                 enet1: ethernet@25000 {
0225                         #address-cells = <1>;
0226                         #size-cells = <1>;
0227                         cell-index = <1>;
0228                         device_type = "network";
0229                         model = "eTSEC";
0230                         compatible = "gianfar";
0231                         reg = <0x25000 0x1000>;
0232                         ranges = <0x0 0x25000 0x1000>;
0233                         local-mac-address = [ 00 00 00 00 00 00 ];
0234                         interrupts = <34 0x8 33 0x8 32 0x8>;
0235                         interrupt-parent = <&ipic>;
0236                         tbi-handle = < &tbi1 >;
0237                         phy-handle = < &phy4 >;
0238                         sleep = <&pmc 0x10000000>;
0239                         fsl,magic-packet;
0240 
0241                         mdio@520 {
0242                                 #address-cells = <1>;
0243                                 #size-cells = <0>;
0244                                 compatible = "fsl,gianfar-tbi";
0245                                 reg = <0x520 0x20>;
0246 
0247                                 tbi1: tbi-phy@11 {
0248                                         reg = <0x11>;
0249                                         device_type = "tbi-phy";
0250                                 };
0251                         };
0252 
0253 
0254                 };
0255 
0256                 serial0: serial@4500 {
0257                         cell-index = <0>;
0258                         device_type = "serial";
0259                         compatible = "fsl,ns16550", "ns16550";
0260                         reg = <0x4500 0x100>;
0261                         clock-frequency = <0>;
0262                         interrupts = <9 0x8>;
0263                         interrupt-parent = <&ipic>;
0264                 };
0265 
0266                 serial1: serial@4600 {
0267                         cell-index = <1>;
0268                         device_type = "serial";
0269                         compatible = "fsl,ns16550", "ns16550";
0270                         reg = <0x4600 0x100>;
0271                         clock-frequency = <0>;
0272                         interrupts = <10 0x8>;
0273                         interrupt-parent = <&ipic>;
0274                 };
0275 
0276                 /* IPIC
0277                  * interrupts cell = <intr #, sense>
0278                  * sense values match linux IORESOURCE_IRQ_* defines:
0279                  * sense == 8: Level, low assertion
0280                  * sense == 2: Edge, high-to-low change
0281                  */
0282                 ipic: pic@700 {
0283                         interrupt-controller;
0284                         #address-cells = <0>;
0285                         #interrupt-cells = <2>;
0286                         reg = <0x700 0x100>;
0287                         device_type = "ipic";
0288                 };
0289 
0290                 pmc: power@b00 {
0291                         compatible = "fsl,mpc8313-pmc", "fsl,mpc8349-pmc";
0292                         reg = <0xb00 0x100 0xa00 0x100>;
0293                         interrupts = <80 8>;
0294                         interrupt-parent = <&ipic>;
0295                         fsl,mpc8313-wakeup-timer = <&gtm1>;
0296 
0297                         /* Remove this (or change to "okay") if you have
0298                          * a REVA3 or later board, if you apply one of the
0299                          * workarounds listed in section 8.5 of the board
0300                          * manual, or if you are adapting this device tree
0301                          * to a different board.
0302                          */
0303                         status = "fail";
0304                 };
0305 
0306                 gtm1: timer@500 {
0307                         compatible = "fsl,mpc8313-gtm", "fsl,gtm";
0308                         reg = <0x500 0x100>;
0309                         interrupts = <90 8 78 8 84 8 72 8>;
0310                         interrupt-parent = <&ipic>;
0311                 };
0312 
0313                 timer@600 {
0314                         compatible = "fsl,mpc8313-gtm", "fsl,gtm";
0315                         reg = <0x600 0x100>;
0316                         interrupts = <91 8 79 8 85 8 73 8>;
0317                         interrupt-parent = <&ipic>;
0318                 };
0319         };
0320 
0321         sleep-nexus {
0322                 #address-cells = <1>;
0323                 #size-cells = <1>;
0324                 compatible = "simple-bus";
0325                 sleep = <&pmc 0x00010000>;
0326                 ranges;
0327 
0328                 pci0: pci@e0008500 {
0329                         cell-index = <1>;
0330                         interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
0331                         interrupt-map = <
0332                                         /* IDSEL 0x0E -mini PCI */
0333                                          0x7000 0x0 0x0 0x1 &ipic 18 0x8
0334                                          0x7000 0x0 0x0 0x2 &ipic 18 0x8
0335                                          0x7000 0x0 0x0 0x3 &ipic 18 0x8
0336                                          0x7000 0x0 0x0 0x4 &ipic 18 0x8
0337 
0338                                         /* IDSEL 0x0F - PCI slot */
0339                                          0x7800 0x0 0x0 0x1 &ipic 17 0x8
0340                                          0x7800 0x0 0x0 0x2 &ipic 18 0x8
0341                                          0x7800 0x0 0x0 0x3 &ipic 17 0x8
0342                                          0x7800 0x0 0x0 0x4 &ipic 18 0x8>;
0343                         interrupt-parent = <&ipic>;
0344                         interrupts = <66 0x8>;
0345                         bus-range = <0x0 0x0>;
0346                         ranges = <0x02000000 0x0 0x90000000 0x90000000 0x0 0x10000000
0347                                   0x42000000 0x0 0x80000000 0x80000000 0x0 0x10000000
0348                                   0x01000000 0x0 0x00000000 0xe2000000 0x0 0x00100000>;
0349                         clock-frequency = <66666666>;
0350                         #interrupt-cells = <1>;
0351                         #size-cells = <2>;
0352                         #address-cells = <3>;
0353                         reg = <0xe0008500 0x100         /* internal registers */
0354                                0xe0008300 0x8>;         /* config space access registers */
0355                         compatible = "fsl,mpc8349-pci";
0356                         device_type = "pci";
0357                 };
0358 
0359                 dma@82a8 {
0360                         #address-cells = <1>;
0361                         #size-cells = <1>;
0362                         compatible = "fsl,mpc8313-dma", "fsl,elo-dma";
0363                         reg = <0xe00082a8 4>;
0364                         ranges = <0 0xe0008100 0x1a8>;
0365                         interrupt-parent = <&ipic>;
0366                         interrupts = <71 8>;
0367 
0368                         dma-channel@0 {
0369                                 compatible = "fsl,mpc8313-dma-channel",
0370                                              "fsl,elo-dma-channel";
0371                                 reg = <0 0x28>;
0372                                 interrupt-parent = <&ipic>;
0373                                 interrupts = <71 8>;
0374                                 cell-index = <0>;
0375                         };
0376 
0377                         dma-channel@80 {
0378                                 compatible = "fsl,mpc8313-dma-channel",
0379                                              "fsl,elo-dma-channel";
0380                                 reg = <0x80 0x28>;
0381                                 interrupt-parent = <&ipic>;
0382                                 interrupts = <71 8>;
0383                                 cell-index = <1>;
0384                         };
0385 
0386                         dma-channel@100 {
0387                                 compatible = "fsl,mpc8313-dma-channel",
0388                                              "fsl,elo-dma-channel";
0389                                 reg = <0x100 0x28>;
0390                                 interrupt-parent = <&ipic>;
0391                                 interrupts = <71 8>;
0392                                 cell-index = <2>;
0393                         };
0394 
0395                         dma-channel@180 {
0396                                 compatible = "fsl,mpc8313-dma-channel",
0397                                              "fsl,elo-dma-channel";
0398                                 reg = <0x180 0x28>;
0399                                 interrupt-parent = <&ipic>;
0400                                 interrupts = <71 8>;
0401                                 cell-index = <3>;
0402                         };
0403                 };
0404         };
0405 };