Back to home page

OSCL-LXR

 
 

    


0001 /*
0002  * Device Tree Source for AMCC Acadia (405EZ)
0003  *
0004  * Copyright IBM Corp. 2008
0005  *
0006  * This file is licensed under the terms of the GNU General Public License
0007  * version 2.  This program is licensed "as is" without any warranty of any
0008  * kind, whether express or implied.
0009  */
0010 
0011 /dts-v1/;
0012 
0013 / {
0014         #address-cells = <1>;
0015         #size-cells = <1>;
0016         model = "amcc,acadia";
0017         compatible = "amcc,acadia";
0018         dcr-parent = <&{/cpus/cpu@0}>;
0019 
0020         aliases {
0021                 ethernet0 = &EMAC0;
0022                 serial0 = &UART0;
0023                 serial1 = &UART1;
0024         };
0025 
0026         cpus {
0027                 #address-cells = <1>;
0028                 #size-cells = <0>;
0029 
0030                 cpu@0 {
0031                         device_type = "cpu";
0032                         model = "PowerPC,405EZ";
0033                         reg = <0x0>;
0034                         clock-frequency = <0>; /* Filled in by wrapper */
0035                         timebase-frequency = <0>; /* Filled in by wrapper */
0036                         i-cache-line-size = <32>;
0037                         d-cache-line-size = <32>;
0038                         i-cache-size = <16384>;
0039                         d-cache-size = <16384>;
0040                         dcr-controller;
0041                         dcr-access-method = "native";
0042                 };
0043         };
0044 
0045         memory {
0046                 device_type = "memory";
0047                 reg = <0x0 0x0>; /* Filled in by wrapper */
0048         };
0049 
0050         UIC0: interrupt-controller {
0051                 compatible = "ibm,uic-405ez", "ibm,uic";
0052                 interrupt-controller;
0053                 dcr-reg = <0x0c0 0x009>;
0054                 cell-index = <0>;
0055                 #address-cells = <0>;
0056                 #size-cells = <0>;
0057                 #interrupt-cells = <2>;
0058         };
0059 
0060         plb {
0061                 compatible = "ibm,plb-405ez", "ibm,plb3";
0062                 #address-cells = <1>;
0063                 #size-cells = <1>;
0064                 ranges;
0065                 clock-frequency = <0>; /* Filled in by wrapper */
0066 
0067                 MAL0: mcmal {
0068                         compatible = "ibm,mcmal-405ez", "ibm,mcmal";
0069                         dcr-reg = <0x380 0x62>;
0070                         num-tx-chans = <1>;
0071                         num-rx-chans = <1>;
0072                         interrupt-parent = <&UIC0>;
0073                         /* 405EZ has only 3 interrupts to the UIC, as
0074                          * SERR, TXDE, and RXDE are or'd together into
0075                          * one UIC bit
0076                          */
0077                         interrupts = <
0078                                 0x13 0x4 /* TXEOB */
0079                                 0x15 0x4 /* RXEOB */
0080                                 0x12 0x4 /* SERR, TXDE, RXDE */>;
0081                 };
0082 
0083                 POB0: opb {
0084                         compatible = "ibm,opb-405ez", "ibm,opb";
0085                         #address-cells = <1>;
0086                         #size-cells = <1>;
0087                         ranges;
0088                         dcr-reg = <0x0a 0x05>;
0089                         clock-frequency = <0>; /* Filled in by wrapper */
0090 
0091                         UART0: serial@ef600300 {
0092                                 device_type = "serial";
0093                                 compatible = "ns16550";
0094                                 reg = <0xef600300 0x8>;
0095                                 virtual-reg = <0xef600300>;
0096                                 clock-frequency = <0>; /* Filled in by wrapper */
0097                                 current-speed = <115200>;
0098                                 interrupt-parent = <&UIC0>;
0099                                 interrupts = <0x5 0x4>;
0100                         };
0101 
0102                         UART1: serial@ef600400 {
0103                                 device_type = "serial";
0104                                 compatible = "ns16550";
0105                                 reg = <0xef600400 0x8>;
0106                                 clock-frequency = <0>; /* Filled in by wrapper */
0107                                 current-speed = <115200>;
0108                                 interrupt-parent = <&UIC0>;
0109                                 interrupts = <0x6 0x4>;
0110                         };
0111 
0112                         IIC: i2c@ef600500 {
0113                                 compatible = "ibm,iic-405ez", "ibm,iic";
0114                                 reg = <0xef600500 0x11>;
0115                                 interrupt-parent = <&UIC0>;
0116                                 interrupts = <0xa 0x4>;
0117                         };
0118 
0119                         GPIO0: gpio@ef600700 {
0120                                 compatible = "ibm,gpio-405ez";
0121                                 reg = <0xef600700 0x20>;
0122                         };
0123 
0124                         GPIO1: gpio@ef600800 {
0125                                 compatible = "ibm,gpio-405ez";
0126                                 reg = <0xef600800 0x20>;
0127                         };
0128 
0129                         EMAC0: ethernet@ef600900 {
0130                                 device_type = "network";
0131                                 compatible = "ibm,emac-405ez", "ibm,emac";
0132                                 interrupt-parent = <&UIC0>;
0133                                 interrupts = <
0134                                         0x10 0x4 /* Ethernet */
0135                                         0x11 0x4 /* Ethernet Wake up */>;
0136                                 local-mac-address = [000000000000]; /* Filled in by wrapper */
0137                                 reg = <0xef600900 0x70>;
0138                                 mal-device = <&MAL0>;
0139                                 mal-tx-channel = <0>;
0140                                 mal-rx-channel = <0>;
0141                                 cell-index = <0>;
0142                                 max-frame-size = <1500>;
0143                                 rx-fifo-size = <4096>;
0144                                 tx-fifo-size = <2048>;
0145                                 phy-mode = "mii";
0146                                 phy-map = <0x0>;
0147                         };
0148 
0149                         CAN0: can@ef601000 {
0150                                 compatible = "amcc,can-405ez";
0151                                 reg = <0xef601000 0x620>;
0152                                 interrupt-parent = <&UIC0>;
0153                                 interrupts = <0x7 0x4>;
0154                         };
0155 
0156                         CAN1: can@ef601800 {
0157                                 compatible = "amcc,can-405ez";
0158                                 reg = <0xef601800 0x620>;
0159                                 interrupt-parent = <&UIC0>;
0160                                 interrupts = <0x8 0x4>;
0161                         };
0162 
0163                         cameleon@ef602000 {
0164                                 compatible = "amcc,cameleon-405ez";
0165                                 reg = <0xef602000 0x800>;
0166                                 interrupt-parent = <&UIC0>;
0167                                 interrupts = <0xb 0x4 0xc 0x4>;
0168                         };
0169 
0170                         ieee1588@ef602800 {
0171                                 compatible = "amcc,ieee1588-405ez";
0172                                 reg = <0xef602800 0x60>;
0173                                 interrupt-parent = <&UIC0>;
0174                                 interrupts = <0x4 0x4>;
0175                                 /* This thing is a bit weird.  It has it's own UIC
0176                                  * that it uses to generate snapshot triggers.  We
0177                                  * don't really support this device yet, and it needs
0178                                  * work to figure this out.
0179                                  */
0180                                 dcr-reg = <0xe0 0x9>;
0181                         };
0182 
0183                         usb@ef603000 {
0184                                 compatible = "ohci-be";
0185                                 reg = <0xef603000 0x80>;
0186                                 interrupt-parent = <&UIC0>;
0187                                 interrupts = <0xd 0x4 0xe 0x4>;
0188                         };
0189 
0190                         dac@ef603300 {
0191                                 compatible = "amcc,dac-405ez";
0192                                 reg = <0xef603300 0x40>;
0193                                 interrupt-parent = <&UIC0>;
0194                                 interrupts = <0x18 0x4>;
0195                         };
0196 
0197                         adc@ef603400 {
0198                                 compatible = "amcc,adc-405ez";
0199                                 reg = <0xef603400 0x40>;
0200                                 interrupt-parent = <&UIC0>;
0201                                 interrupts = <0x17 0x4>;
0202                         };
0203 
0204                         spi@ef603500 {
0205                                 compatible = "amcc,spi-405ez";
0206                                 reg = <0xef603500 0x100>;
0207                                 interrupt-parent = <&UIC0>;
0208                                 interrupts = <0x9 0x4>;
0209                         };
0210                 };
0211 
0212                 EBC0: ebc {
0213                         compatible = "ibm,ebc-405ez", "ibm,ebc";
0214                         dcr-reg = <0x12 0x2>;
0215                         #address-cells = <2>;
0216                         #size-cells = <1>;
0217                         clock-frequency = <0>; /* Filled in by wrapper */
0218                 };
0219         };
0220 
0221         chosen {
0222                 stdout-path = "/plb/opb/serial@ef600300";
0223         };
0224 };