16edc323dSTirumala Marri/* 26edc323dSTirumala Marri * Device Tree for Bluestone (APM821xx) board. 36edc323dSTirumala Marri * 46edc323dSTirumala Marri * Copyright (c) 2010, Applied Micro Circuits Corporation 56edc323dSTirumala Marri * Author: Tirumala R Marri <tmarri@apm.com> 66edc323dSTirumala Marri * 76edc323dSTirumala Marri * This program is free software; you can redistribute it and/or 86edc323dSTirumala Marri * modify it under the terms of the GNU General Public License as 96edc323dSTirumala Marri * published by the Free Software Foundation; either version 2 of 106edc323dSTirumala Marri * the License, or (at your option) any later version. 116edc323dSTirumala Marri * 126edc323dSTirumala Marri * This program is distributed in the hope that it will be useful, 136edc323dSTirumala Marri * but WITHOUT ANY WARRANTY; without even the implied warranty of 146edc323dSTirumala Marri * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 156edc323dSTirumala Marri * GNU General Public License for more details. 166edc323dSTirumala Marri * 176edc323dSTirumala Marri * You should have received a copy of the GNU General Public License 186edc323dSTirumala Marri * along with this program; if not, write to the Free Software 196edc323dSTirumala Marri * Foundation, Inc., 59 Temple Place, Suite 330, Boston, 206edc323dSTirumala Marri * MA 02111-1307 USA 216edc323dSTirumala Marri * 226edc323dSTirumala Marri */ 236edc323dSTirumala Marri 246edc323dSTirumala Marri/dts-v1/; 256edc323dSTirumala Marri 266edc323dSTirumala Marri/ { 276edc323dSTirumala Marri #address-cells = <2>; 286edc323dSTirumala Marri #size-cells = <1>; 296edc323dSTirumala Marri model = "apm,bluestone"; 306edc323dSTirumala Marri compatible = "apm,bluestone"; 316edc323dSTirumala Marri dcr-parent = <&{/cpus/cpu@0}>; 326edc323dSTirumala Marri 336edc323dSTirumala Marri aliases { 346edc323dSTirumala Marri ethernet0 = &EMAC0; 356edc323dSTirumala Marri serial0 = &UART0; 366edc323dSTirumala Marri serial1 = &UART1; 376edc323dSTirumala Marri }; 386edc323dSTirumala Marri 396edc323dSTirumala Marri cpus { 406edc323dSTirumala Marri #address-cells = <1>; 416edc323dSTirumala Marri #size-cells = <0>; 426edc323dSTirumala Marri 436edc323dSTirumala Marri cpu@0 { 446edc323dSTirumala Marri device_type = "cpu"; 456edc323dSTirumala Marri model = "PowerPC,apm821xx"; 466edc323dSTirumala Marri reg = <0x00000000>; 476edc323dSTirumala Marri clock-frequency = <0>; /* Filled in by U-Boot */ 486edc323dSTirumala Marri timebase-frequency = <0>; /* Filled in by U-Boot */ 496edc323dSTirumala Marri i-cache-line-size = <32>; 506edc323dSTirumala Marri d-cache-line-size = <32>; 516edc323dSTirumala Marri i-cache-size = <32768>; 526edc323dSTirumala Marri d-cache-size = <32768>; 536edc323dSTirumala Marri dcr-controller; 546edc323dSTirumala Marri dcr-access-method = "native"; 556edc323dSTirumala Marri next-level-cache = <&L2C0>; 566edc323dSTirumala Marri }; 576edc323dSTirumala Marri }; 586edc323dSTirumala Marri 596edc323dSTirumala Marri memory { 606edc323dSTirumala Marri device_type = "memory"; 616edc323dSTirumala Marri reg = <0x00000000 0x00000000 0x00000000>; /* Filled in by U-Boot */ 626edc323dSTirumala Marri }; 636edc323dSTirumala Marri 646edc323dSTirumala Marri UIC0: interrupt-controller0 { 656edc323dSTirumala Marri compatible = "ibm,uic"; 666edc323dSTirumala Marri interrupt-controller; 676edc323dSTirumala Marri cell-index = <0>; 686edc323dSTirumala Marri dcr-reg = <0x0c0 0x009>; 696edc323dSTirumala Marri #address-cells = <0>; 706edc323dSTirumala Marri #size-cells = <0>; 716edc323dSTirumala Marri #interrupt-cells = <2>; 726edc323dSTirumala Marri }; 736edc323dSTirumala Marri 746edc323dSTirumala Marri UIC1: interrupt-controller1 { 756edc323dSTirumala Marri compatible = "ibm,uic"; 766edc323dSTirumala Marri interrupt-controller; 776edc323dSTirumala Marri cell-index = <1>; 786edc323dSTirumala Marri dcr-reg = <0x0d0 0x009>; 796edc323dSTirumala Marri #address-cells = <0>; 806edc323dSTirumala Marri #size-cells = <0>; 816edc323dSTirumala Marri #interrupt-cells = <2>; 826edc323dSTirumala Marri interrupts = <0x1e 0x4 0x1f 0x4>; /* cascade */ 836edc323dSTirumala Marri interrupt-parent = <&UIC0>; 846edc323dSTirumala Marri }; 856edc323dSTirumala Marri 866edc323dSTirumala Marri UIC2: interrupt-controller2 { 876edc323dSTirumala Marri compatible = "ibm,uic"; 886edc323dSTirumala Marri interrupt-controller; 896edc323dSTirumala Marri cell-index = <2>; 906edc323dSTirumala Marri dcr-reg = <0x0e0 0x009>; 916edc323dSTirumala Marri #address-cells = <0>; 926edc323dSTirumala Marri #size-cells = <0>; 936edc323dSTirumala Marri #interrupt-cells = <2>; 946edc323dSTirumala Marri interrupts = <0xa 0x4 0xb 0x4>; /* cascade */ 956edc323dSTirumala Marri interrupt-parent = <&UIC0>; 966edc323dSTirumala Marri }; 976edc323dSTirumala Marri 986edc323dSTirumala Marri UIC3: interrupt-controller3 { 996edc323dSTirumala Marri compatible = "ibm,uic"; 1006edc323dSTirumala Marri interrupt-controller; 1016edc323dSTirumala Marri cell-index = <3>; 1026edc323dSTirumala Marri dcr-reg = <0x0f0 0x009>; 1036edc323dSTirumala Marri #address-cells = <0>; 1046edc323dSTirumala Marri #size-cells = <0>; 1056edc323dSTirumala Marri #interrupt-cells = <2>; 1066edc323dSTirumala Marri interrupts = <0x10 0x4 0x11 0x4>; /* cascade */ 1076edc323dSTirumala Marri interrupt-parent = <&UIC0>; 1086edc323dSTirumala Marri }; 1096edc323dSTirumala Marri 1106edc323dSTirumala Marri SDR0: sdr { 1116edc323dSTirumala Marri compatible = "ibm,sdr-apm821xx"; 1126edc323dSTirumala Marri dcr-reg = <0x00e 0x002>; 1136edc323dSTirumala Marri }; 1146edc323dSTirumala Marri 1156edc323dSTirumala Marri CPR0: cpr { 1166edc323dSTirumala Marri compatible = "ibm,cpr-apm821xx"; 1176edc323dSTirumala Marri dcr-reg = <0x00c 0x002>; 1186edc323dSTirumala Marri }; 1196edc323dSTirumala Marri 1206edc323dSTirumala Marri plb { 1216edc323dSTirumala Marri compatible = "ibm,plb4"; 1226edc323dSTirumala Marri #address-cells = <2>; 1236edc323dSTirumala Marri #size-cells = <1>; 1246edc323dSTirumala Marri ranges; 1256edc323dSTirumala Marri clock-frequency = <0>; /* Filled in by U-Boot */ 1266edc323dSTirumala Marri 1276edc323dSTirumala Marri SDRAM0: sdram { 1286edc323dSTirumala Marri compatible = "ibm,sdram-apm821xx"; 1296edc323dSTirumala Marri dcr-reg = <0x010 0x002>; 1306edc323dSTirumala Marri }; 1316edc323dSTirumala Marri 1326edc323dSTirumala Marri MAL0: mcmal { 1336edc323dSTirumala Marri compatible = "ibm,mcmal2"; 1346edc323dSTirumala Marri descriptor-memory = "ocm"; 1356edc323dSTirumala Marri dcr-reg = <0x180 0x062>; 1366edc323dSTirumala Marri num-tx-chans = <1>; 1376edc323dSTirumala Marri num-rx-chans = <1>; 1386edc323dSTirumala Marri #address-cells = <0>; 1396edc323dSTirumala Marri #size-cells = <0>; 1406edc323dSTirumala Marri interrupt-parent = <&UIC2>; 1416edc323dSTirumala Marri interrupts = < /*TXEOB*/ 0x6 0x4 1426edc323dSTirumala Marri /*RXEOB*/ 0x7 0x4 1436edc323dSTirumala Marri /*SERR*/ 0x3 0x4 1446edc323dSTirumala Marri /*TXDE*/ 0x4 0x4 1456edc323dSTirumala Marri /*RXDE*/ 0x5 0x4 1466edc323dSTirumala Marri }; 1476edc323dSTirumala Marri 1486edc323dSTirumala Marri POB0: opb { 1496edc323dSTirumala Marri compatible = "ibm,opb"; 1506edc323dSTirumala Marri #address-cells = <1>; 1516edc323dSTirumala Marri #size-cells = <1>; 1526edc323dSTirumala Marri ranges = <0xb0000000 0x00000004 0xb0000000 0x50000000>; 1536edc323dSTirumala Marri clock-frequency = <0>; /* Filled in by U-Boot */ 1546edc323dSTirumala Marri 1556edc323dSTirumala Marri EBC0: ebc { 1566edc323dSTirumala Marri compatible = "ibm,ebc"; 1576edc323dSTirumala Marri dcr-reg = <0x012 0x002>; 1586edc323dSTirumala Marri #address-cells = <2>; 1596edc323dSTirumala Marri #size-cells = <1>; 1606edc323dSTirumala Marri clock-frequency = <0>; /* Filled in by U-Boot */ 1616edc323dSTirumala Marri /* ranges property is supplied by U-Boot */ 1626edc323dSTirumala Marri ranges = < 0x00000003 0x00000000 0xe0000000 0x8000000>; 1636edc323dSTirumala Marri interrupts = <0x6 0x4>; 1646edc323dSTirumala Marri interrupt-parent = <&UIC1>; 1656edc323dSTirumala Marri 1666edc323dSTirumala Marri nor_flash@0,0 { 1676edc323dSTirumala Marri compatible = "amd,s29gl512n", "cfi-flash"; 1686edc323dSTirumala Marri bank-width = <2>; 1696edc323dSTirumala Marri reg = <0x00000000 0x00000000 0x00400000>; 1706edc323dSTirumala Marri #address-cells = <1>; 1716edc323dSTirumala Marri #size-cells = <1>; 1726edc323dSTirumala Marri partition@0 { 1736edc323dSTirumala Marri label = "kernel"; 1746edc323dSTirumala Marri reg = <0x00000000 0x00180000>; 1756edc323dSTirumala Marri }; 1766edc323dSTirumala Marri partition@180000 { 1776edc323dSTirumala Marri label = "env"; 1786edc323dSTirumala Marri reg = <0x00180000 0x00020000>; 1796edc323dSTirumala Marri }; 1806edc323dSTirumala Marri partition@1a0000 { 1816edc323dSTirumala Marri label = "u-boot"; 1826edc323dSTirumala Marri reg = <0x001a0000 0x00060000>; 1836edc323dSTirumala Marri }; 1846edc323dSTirumala Marri }; 1856edc323dSTirumala Marri } 1866edc323dSTirumala Marri 1876edc323dSTirumala Marri UART0: serial@ef600300 { 1886edc323dSTirumala Marri device_type = "serial"; 1896edc323dSTirumala Marri compatible = "ns16550"; 1906edc323dSTirumala Marri reg = <0xef600300 0x00000008>; 1916edc323dSTirumala Marri virtual-reg = <0xef600300>; 1926edc323dSTirumala Marri clock-frequency = <0>; /* Filled in by U-Boot */ 1936edc323dSTirumala Marri current-speed = <0>; /* Filled in by U-Boot */ 1946edc323dSTirumala Marri interrupt-parent = <&UIC1>; 1956edc323dSTirumala Marri interrupts = <0x1 0x4>; 1966edc323dSTirumala Marri }; 1976edc323dSTirumala Marri 1986edc323dSTirumala Marri IIC0: i2c@ef600700 { 1996edc323dSTirumala Marri compatible = "ibm,iic"; 2006edc323dSTirumala Marri reg = <0xef600700 0x00000014>; 2016edc323dSTirumala Marri interrupt-parent = <&UIC0>; 2026edc323dSTirumala Marri interrupts = <0x2 0x4>; 2036edc323dSTirumala Marri }; 2046edc323dSTirumala Marri 2056edc323dSTirumala Marri IIC1: i2c@ef600800 { 2066edc323dSTirumala Marri compatible = "ibm,iic"; 2076edc323dSTirumala Marri reg = <0xef600800 0x00000014>; 2086edc323dSTirumala Marri interrupt-parent = <&UIC0>; 2096edc323dSTirumala Marri interrupts = <0x3 0x4>; 2106edc323dSTirumala Marri }; 2116edc323dSTirumala Marri 2126edc323dSTirumala Marri RGMII0: emac-rgmii@ef601500 { 2136edc323dSTirumala Marri compatible = "ibm,rgmii"; 2146edc323dSTirumala Marri reg = <0xef601500 0x00000008>; 2156edc323dSTirumala Marri has-mdio; 2166edc323dSTirumala Marri }; 2176edc323dSTirumala Marri 2186edc323dSTirumala Marri TAH0: emac-tah@ef601350 { 2196edc323dSTirumala Marri compatible = "ibm,tah"; 2206edc323dSTirumala Marri reg = <0xef601350 0x00000030>; 2216edc323dSTirumala Marri }; 2226edc323dSTirumala Marri 2236edc323dSTirumala Marri EMAC0: ethernet@ef600c00 { 2246edc323dSTirumala Marri device_type = "network"; 2256edc323dSTirumala Marri compatible = "ibm,emac4sync"; 2266edc323dSTirumala Marri interrupt-parent = <&EMAC0>; 2276edc323dSTirumala Marri interrupts = <0x0 0x1>; 2286edc323dSTirumala Marri #interrupt-cells = <1>; 2296edc323dSTirumala Marri #address-cells = <0>; 2306edc323dSTirumala Marri #size-cells = <0>; 2316edc323dSTirumala Marri interrupt-map = </*Status*/ 0x0 &UIC2 0x10 0x4 2326edc323dSTirumala Marri /*Wake*/ 0x1 &UIC2 0x14 0x4>; 2336edc323dSTirumala Marri reg = <0xef600c00 0x000000c4>; 2346edc323dSTirumala Marri local-mac-address = [000000000000]; /* Filled in by U-Boot */ 2356edc323dSTirumala Marri mal-device = <&MAL0>; 2366edc323dSTirumala Marri mal-tx-channel = <0>; 2376edc323dSTirumala Marri mal-rx-channel = <0>; 2386edc323dSTirumala Marri cell-index = <0>; 2396edc323dSTirumala Marri max-frame-size = <9000>; 2406edc323dSTirumala Marri rx-fifo-size = <16384>; 2416edc323dSTirumala Marri tx-fifo-size = <2048>; 2426edc323dSTirumala Marri phy-mode = "rgmii"; 2436edc323dSTirumala Marri phy-map = <0x00000000>; 2446edc323dSTirumala Marri rgmii-device = <&RGMII0>; 2456edc323dSTirumala Marri rgmii-channel = <0>; 2466edc323dSTirumala Marri tah-device = <&TAH0>; 2476edc323dSTirumala Marri tah-channel = <0>; 2486edc323dSTirumala Marri has-inverted-stacr-oc; 2496edc323dSTirumala Marri has-new-stacr-staopc; 2506edc323dSTirumala Marri }; 2516edc323dSTirumala Marri }; 2526edc323dSTirumala Marri 2536edc323dSTirumala Marri }; 2546edc323dSTirumala Marri}; 255