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; 36b5594a77SVinh Nguyen Huu Tuong 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"; 55b5594a77SVinh Nguyen Huu Tuong 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 110c19d8248SVinh Nguyen Huu Tuong OCM: ocm@400040000 { 111c19d8248SVinh Nguyen Huu Tuong compatible = "ibm,ocm"; 112c19d8248SVinh Nguyen Huu Tuong status = "ok"; 113c19d8248SVinh Nguyen Huu Tuong cell-index = <1>; 114c19d8248SVinh Nguyen Huu Tuong /* configured in U-Boot */ 115c19d8248SVinh Nguyen Huu Tuong reg = <4 0x00040000 0x8000>; /* 32K */ 116c19d8248SVinh Nguyen Huu Tuong }; 117c19d8248SVinh Nguyen Huu Tuong 1186edc323dSTirumala Marri SDR0: sdr { 1196edc323dSTirumala Marri compatible = "ibm,sdr-apm821xx"; 1206edc323dSTirumala Marri dcr-reg = <0x00e 0x002>; 1216edc323dSTirumala Marri }; 1226edc323dSTirumala Marri 1236edc323dSTirumala Marri CPR0: cpr { 1246edc323dSTirumala Marri compatible = "ibm,cpr-apm821xx"; 1256edc323dSTirumala Marri dcr-reg = <0x00c 0x002>; 1266edc323dSTirumala Marri }; 1276edc323dSTirumala Marri 128b5594a77SVinh Nguyen Huu Tuong L2C0: l2c { 129b5594a77SVinh Nguyen Huu Tuong compatible = "ibm,l2-cache-apm82181", "ibm,l2-cache"; 130b5594a77SVinh Nguyen Huu Tuong dcr-reg = <0x020 0x008 131b5594a77SVinh Nguyen Huu Tuong 0x030 0x008>; 132b5594a77SVinh Nguyen Huu Tuong cache-line-size = <32>; 133b5594a77SVinh Nguyen Huu Tuong cache-size = <262144>; 134b5594a77SVinh Nguyen Huu Tuong interrupt-parent = <&UIC1>; 135b5594a77SVinh Nguyen Huu Tuong interrupts = <11 1>; 136b5594a77SVinh Nguyen Huu Tuong }; 137b5594a77SVinh Nguyen Huu Tuong 1386edc323dSTirumala Marri plb { 1396edc323dSTirumala Marri compatible = "ibm,plb4"; 1406edc323dSTirumala Marri #address-cells = <2>; 1416edc323dSTirumala Marri #size-cells = <1>; 1426edc323dSTirumala Marri ranges; 1436edc323dSTirumala Marri clock-frequency = <0>; /* Filled in by U-Boot */ 1446edc323dSTirumala Marri 1456edc323dSTirumala Marri SDRAM0: sdram { 1466edc323dSTirumala Marri compatible = "ibm,sdram-apm821xx"; 1476edc323dSTirumala Marri dcr-reg = <0x010 0x002>; 1486edc323dSTirumala Marri }; 1496edc323dSTirumala Marri 1506edc323dSTirumala Marri MAL0: mcmal { 1516edc323dSTirumala Marri compatible = "ibm,mcmal2"; 1526edc323dSTirumala Marri descriptor-memory = "ocm"; 1536edc323dSTirumala Marri dcr-reg = <0x180 0x062>; 1546edc323dSTirumala Marri num-tx-chans = <1>; 1556edc323dSTirumala Marri num-rx-chans = <1>; 1566edc323dSTirumala Marri #address-cells = <0>; 1576edc323dSTirumala Marri #size-cells = <0>; 1586edc323dSTirumala Marri interrupt-parent = <&UIC2>; 1596edc323dSTirumala Marri interrupts = < /*TXEOB*/ 0x6 0x4 1606edc323dSTirumala Marri /*RXEOB*/ 0x7 0x4 1616edc323dSTirumala Marri /*SERR*/ 0x3 0x4 1626edc323dSTirumala Marri /*TXDE*/ 0x4 0x4 1636bd121e2SGrant Likely /*RXDE*/ 0x5 0x4>; 1646edc323dSTirumala Marri }; 1656edc323dSTirumala Marri 1666edc323dSTirumala Marri POB0: opb { 1676edc323dSTirumala Marri compatible = "ibm,opb"; 1686edc323dSTirumala Marri #address-cells = <1>; 1696edc323dSTirumala Marri #size-cells = <1>; 1706edc323dSTirumala Marri ranges = <0xb0000000 0x00000004 0xb0000000 0x50000000>; 1716edc323dSTirumala Marri clock-frequency = <0>; /* Filled in by U-Boot */ 1726edc323dSTirumala Marri 1736edc323dSTirumala Marri EBC0: ebc { 1746edc323dSTirumala Marri compatible = "ibm,ebc"; 1756edc323dSTirumala Marri dcr-reg = <0x012 0x002>; 1766edc323dSTirumala Marri #address-cells = <2>; 1776edc323dSTirumala Marri #size-cells = <1>; 1786edc323dSTirumala Marri clock-frequency = <0>; /* Filled in by U-Boot */ 1796edc323dSTirumala Marri /* ranges property is supplied by U-Boot */ 1806edc323dSTirumala Marri ranges = < 0x00000003 0x00000000 0xe0000000 0x8000000>; 1816edc323dSTirumala Marri interrupts = <0x6 0x4>; 1826edc323dSTirumala Marri interrupt-parent = <&UIC1>; 1836edc323dSTirumala Marri 1846edc323dSTirumala Marri nor_flash@0,0 { 1856edc323dSTirumala Marri compatible = "amd,s29gl512n", "cfi-flash"; 1866edc323dSTirumala Marri bank-width = <2>; 1876edc323dSTirumala Marri reg = <0x00000000 0x00000000 0x00400000>; 1886edc323dSTirumala Marri #address-cells = <1>; 1896edc323dSTirumala Marri #size-cells = <1>; 1906edc323dSTirumala Marri partition@0 { 1916edc323dSTirumala Marri label = "kernel"; 1926edc323dSTirumala Marri reg = <0x00000000 0x00180000>; 1936edc323dSTirumala Marri }; 1946edc323dSTirumala Marri partition@180000 { 1956edc323dSTirumala Marri label = "env"; 1966edc323dSTirumala Marri reg = <0x00180000 0x00020000>; 1976edc323dSTirumala Marri }; 1986edc323dSTirumala Marri partition@1a0000 { 1996edc323dSTirumala Marri label = "u-boot"; 2006edc323dSTirumala Marri reg = <0x001a0000 0x00060000>; 2016edc323dSTirumala Marri }; 2026edc323dSTirumala Marri }; 203b5594a77SVinh Nguyen Huu Tuong 204b5594a77SVinh Nguyen Huu Tuong ndfc@1,0 { 205b5594a77SVinh Nguyen Huu Tuong compatible = "ibm,ndfc"; 206b5594a77SVinh Nguyen Huu Tuong reg = <0x00000003 0x00000000 0x00002000>; 207b5594a77SVinh Nguyen Huu Tuong ccr = <0x00001000>; 208b5594a77SVinh Nguyen Huu Tuong bank-settings = <0x80002222>; 209b5594a77SVinh Nguyen Huu Tuong #address-cells = <1>; 210b5594a77SVinh Nguyen Huu Tuong #size-cells = <1>; 211b5594a77SVinh Nguyen Huu Tuong /* 2Gb Nand Flash */ 212b5594a77SVinh Nguyen Huu Tuong nand { 213b5594a77SVinh Nguyen Huu Tuong #address-cells = <1>; 214b5594a77SVinh Nguyen Huu Tuong #size-cells = <1>; 215b5594a77SVinh Nguyen Huu Tuong 216b5594a77SVinh Nguyen Huu Tuong partition@0 { 217b5594a77SVinh Nguyen Huu Tuong label = "firmware"; 218b5594a77SVinh Nguyen Huu Tuong reg = <0x00000000 0x00C00000>; 219b5594a77SVinh Nguyen Huu Tuong }; 220b5594a77SVinh Nguyen Huu Tuong partition@c00000 { 221b5594a77SVinh Nguyen Huu Tuong label = "environment"; 222b5594a77SVinh Nguyen Huu Tuong reg = <0x00C00000 0x00B00000>; 223b5594a77SVinh Nguyen Huu Tuong }; 224b5594a77SVinh Nguyen Huu Tuong partition@1700000 { 225b5594a77SVinh Nguyen Huu Tuong label = "kernel"; 226b5594a77SVinh Nguyen Huu Tuong reg = <0x01700000 0x00E00000>; 227b5594a77SVinh Nguyen Huu Tuong }; 228b5594a77SVinh Nguyen Huu Tuong partition@2500000 { 229b5594a77SVinh Nguyen Huu Tuong label = "root"; 230b5594a77SVinh Nguyen Huu Tuong reg = <0x02500000 0x08200000>; 231b5594a77SVinh Nguyen Huu Tuong }; 232b5594a77SVinh Nguyen Huu Tuong partition@a700000 { 233b5594a77SVinh Nguyen Huu Tuong label = "device-tree"; 234b5594a77SVinh Nguyen Huu Tuong reg = <0x0A700000 0x00B00000>; 235b5594a77SVinh Nguyen Huu Tuong }; 236b5594a77SVinh Nguyen Huu Tuong partition@b200000 { 237b5594a77SVinh Nguyen Huu Tuong label = "config"; 238b5594a77SVinh Nguyen Huu Tuong reg = <0x0B200000 0x00D00000>; 239b5594a77SVinh Nguyen Huu Tuong }; 240b5594a77SVinh Nguyen Huu Tuong partition@bf00000 { 241b5594a77SVinh Nguyen Huu Tuong label = "diag"; 242b5594a77SVinh Nguyen Huu Tuong reg = <0x0BF00000 0x00C00000>; 243b5594a77SVinh Nguyen Huu Tuong }; 244b5594a77SVinh Nguyen Huu Tuong partition@cb00000 { 245b5594a77SVinh Nguyen Huu Tuong label = "vendor"; 246b5594a77SVinh Nguyen Huu Tuong reg = <0x0CB00000 0x3500000>; 247b5594a77SVinh Nguyen Huu Tuong }; 248b5594a77SVinh Nguyen Huu Tuong }; 249b5594a77SVinh Nguyen Huu Tuong }; 2506bd121e2SGrant Likely }; 2516edc323dSTirumala Marri 2526edc323dSTirumala Marri UART0: serial@ef600300 { 2536edc323dSTirumala Marri device_type = "serial"; 2546edc323dSTirumala Marri compatible = "ns16550"; 2556edc323dSTirumala Marri reg = <0xef600300 0x00000008>; 2566edc323dSTirumala Marri virtual-reg = <0xef600300>; 2576edc323dSTirumala Marri clock-frequency = <0>; /* Filled in by U-Boot */ 2586edc323dSTirumala Marri current-speed = <0>; /* Filled in by U-Boot */ 2596edc323dSTirumala Marri interrupt-parent = <&UIC1>; 2606edc323dSTirumala Marri interrupts = <0x1 0x4>; 2616edc323dSTirumala Marri }; 2626edc323dSTirumala Marri 263b5594a77SVinh Nguyen Huu Tuong UART1: serial@ef600400 { 264b5594a77SVinh Nguyen Huu Tuong device_type = "serial"; 265b5594a77SVinh Nguyen Huu Tuong compatible = "ns16550"; 266b5594a77SVinh Nguyen Huu Tuong reg = <0xef600400 0x00000008>; 267b5594a77SVinh Nguyen Huu Tuong virtual-reg = <0xef600400>; 268b5594a77SVinh Nguyen Huu Tuong clock-frequency = <0>; /* Filled in by U-Boot */ 269b5594a77SVinh Nguyen Huu Tuong current-speed = <0>; /* Filled in by U-Boot */ 270b5594a77SVinh Nguyen Huu Tuong interrupt-parent = <&UIC0>; 271b5594a77SVinh Nguyen Huu Tuong interrupts = <0x1 0x4>; 272b5594a77SVinh Nguyen Huu Tuong }; 273b5594a77SVinh Nguyen Huu Tuong 2746edc323dSTirumala Marri IIC0: i2c@ef600700 { 2756edc323dSTirumala Marri compatible = "ibm,iic"; 2766edc323dSTirumala Marri reg = <0xef600700 0x00000014>; 2776edc323dSTirumala Marri interrupt-parent = <&UIC0>; 2786edc323dSTirumala Marri interrupts = <0x2 0x4>; 279b5594a77SVinh Nguyen Huu Tuong #address-cells = <1>; 280b5594a77SVinh Nguyen Huu Tuong #size-cells = <0>; 281b5594a77SVinh Nguyen Huu Tuong rtc@68 { 282b5594a77SVinh Nguyen Huu Tuong compatible = "stm,m41t80"; 283b5594a77SVinh Nguyen Huu Tuong reg = <0x68>; 284b5594a77SVinh Nguyen Huu Tuong interrupt-parent = <&UIC0>; 285b5594a77SVinh Nguyen Huu Tuong interrupts = <0x9 0x8>; 286b5594a77SVinh Nguyen Huu Tuong }; 287b5594a77SVinh Nguyen Huu Tuong sttm@4C { 288b5594a77SVinh Nguyen Huu Tuong compatible = "adm,adm1032"; 289b5594a77SVinh Nguyen Huu Tuong reg = <0x4C>; 290b5594a77SVinh Nguyen Huu Tuong interrupt-parent = <&UIC1>; 291b5594a77SVinh Nguyen Huu Tuong interrupts = <0x1E 0x8>; /* CPU_THERNAL_L */ 292b5594a77SVinh Nguyen Huu Tuong }; 2936edc323dSTirumala Marri }; 2946edc323dSTirumala Marri 2956edc323dSTirumala Marri IIC1: i2c@ef600800 { 2966edc323dSTirumala Marri compatible = "ibm,iic"; 2976edc323dSTirumala Marri reg = <0xef600800 0x00000014>; 2986edc323dSTirumala Marri interrupt-parent = <&UIC0>; 2996edc323dSTirumala Marri interrupts = <0x3 0x4>; 3006edc323dSTirumala Marri }; 3016edc323dSTirumala Marri 3026edc323dSTirumala Marri RGMII0: emac-rgmii@ef601500 { 3036edc323dSTirumala Marri compatible = "ibm,rgmii"; 3046edc323dSTirumala Marri reg = <0xef601500 0x00000008>; 3056edc323dSTirumala Marri has-mdio; 3066edc323dSTirumala Marri }; 3076edc323dSTirumala Marri 3086edc323dSTirumala Marri TAH0: emac-tah@ef601350 { 3096edc323dSTirumala Marri compatible = "ibm,tah"; 3106edc323dSTirumala Marri reg = <0xef601350 0x00000030>; 3116edc323dSTirumala Marri }; 3126edc323dSTirumala Marri 3136edc323dSTirumala Marri EMAC0: ethernet@ef600c00 { 3146edc323dSTirumala Marri device_type = "network"; 3158dfc2b45SDuc Dang compatible = "ibm,emac-apm821xx", "ibm,emac4sync"; 3166edc323dSTirumala Marri interrupt-parent = <&EMAC0>; 3176edc323dSTirumala Marri interrupts = <0x0 0x1>; 3186edc323dSTirumala Marri #interrupt-cells = <1>; 3196edc323dSTirumala Marri #address-cells = <0>; 3206edc323dSTirumala Marri #size-cells = <0>; 3216edc323dSTirumala Marri interrupt-map = </*Status*/ 0x0 &UIC2 0x10 0x4 3226edc323dSTirumala Marri /*Wake*/ 0x1 &UIC2 0x14 0x4>; 3236edc323dSTirumala Marri reg = <0xef600c00 0x000000c4>; 3246edc323dSTirumala Marri local-mac-address = [000000000000]; /* Filled in by U-Boot */ 3256edc323dSTirumala Marri mal-device = <&MAL0>; 3266edc323dSTirumala Marri mal-tx-channel = <0>; 3276edc323dSTirumala Marri mal-rx-channel = <0>; 3286edc323dSTirumala Marri cell-index = <0>; 3296edc323dSTirumala Marri max-frame-size = <9000>; 3306edc323dSTirumala Marri rx-fifo-size = <16384>; 3316edc323dSTirumala Marri tx-fifo-size = <2048>; 3326edc323dSTirumala Marri phy-mode = "rgmii"; 3336edc323dSTirumala Marri phy-map = <0x00000000>; 3346edc323dSTirumala Marri rgmii-device = <&RGMII0>; 3356edc323dSTirumala Marri rgmii-channel = <0>; 3366edc323dSTirumala Marri tah-device = <&TAH0>; 3376edc323dSTirumala Marri tah-channel = <0>; 3386edc323dSTirumala Marri has-inverted-stacr-oc; 3396edc323dSTirumala Marri has-new-stacr-staopc; 3406edc323dSTirumala Marri }; 3416edc323dSTirumala Marri }; 3426edc323dSTirumala Marri 343b5594a77SVinh Nguyen Huu Tuong PCIE0: pciex@d00000000 { 344b5594a77SVinh Nguyen Huu Tuong device_type = "pci"; 345b5594a77SVinh Nguyen Huu Tuong #interrupt-cells = <1>; 346b5594a77SVinh Nguyen Huu Tuong #size-cells = <2>; 347b5594a77SVinh Nguyen Huu Tuong #address-cells = <3>; 348b5594a77SVinh Nguyen Huu Tuong compatible = "ibm,plb-pciex-apm821xx", "ibm,plb-pciex"; 349b5594a77SVinh Nguyen Huu Tuong primary; 350b5594a77SVinh Nguyen Huu Tuong port = <0x0>; /* port number */ 351b5594a77SVinh Nguyen Huu Tuong reg = <0x0000000d 0x00000000 0x20000000 /* Config space access */ 352b5594a77SVinh Nguyen Huu Tuong 0x0000000c 0x08010000 0x00001000>; /* Registers */ 353b5594a77SVinh Nguyen Huu Tuong dcr-reg = <0x100 0x020>; 354b5594a77SVinh Nguyen Huu Tuong sdr-base = <0x300>; 355b5594a77SVinh Nguyen Huu Tuong 356b5594a77SVinh Nguyen Huu Tuong /* Outbound ranges, one memory and one IO, 357b5594a77SVinh Nguyen Huu Tuong * later cannot be changed 358b5594a77SVinh Nguyen Huu Tuong */ 359b5594a77SVinh Nguyen Huu Tuong ranges = <0x02000000 0x00000000 0x80000000 0x0000000e 0x00000000 0x00000000 0x80000000 360b5594a77SVinh Nguyen Huu Tuong 0x02000000 0x00000000 0x00000000 0x0000000f 0x00000000 0x00000000 0x00100000 361b5594a77SVinh Nguyen Huu Tuong 0x01000000 0x00000000 0x00000000 0x0000000f 0x80000000 0x00000000 0x00010000>; 362b5594a77SVinh Nguyen Huu Tuong 363b5594a77SVinh Nguyen Huu Tuong /* Inbound 2GB range starting at 0 */ 364b5594a77SVinh Nguyen Huu Tuong dma-ranges = <0x42000000 0x0 0x0 0x0 0x0 0x0 0x80000000>; 365b5594a77SVinh Nguyen Huu Tuong 366b5594a77SVinh Nguyen Huu Tuong /* This drives busses 40 to 0x7f */ 367b5594a77SVinh Nguyen Huu Tuong bus-range = <0x40 0x7f>; 368b5594a77SVinh Nguyen Huu Tuong 369b5594a77SVinh Nguyen Huu Tuong /* Legacy interrupts (note the weird polarity, the bridge seems 370b5594a77SVinh Nguyen Huu Tuong * to invert PCIe legacy interrupts). 371b5594a77SVinh Nguyen Huu Tuong * We are de-swizzling here because the numbers are actually for 372b5594a77SVinh Nguyen Huu Tuong * port of the root complex virtual P2P bridge. But I want 373b5594a77SVinh Nguyen Huu Tuong * to avoid putting a node for it in the tree, so the numbers 374b5594a77SVinh Nguyen Huu Tuong * below are basically de-swizzled numbers. 375b5594a77SVinh Nguyen Huu Tuong * The real slot is on idsel 0, so the swizzling is 1:1 376b5594a77SVinh Nguyen Huu Tuong */ 377b5594a77SVinh Nguyen Huu Tuong interrupt-map-mask = <0x0 0x0 0x0 0x7>; 378b5594a77SVinh Nguyen Huu Tuong interrupt-map = < 379b5594a77SVinh Nguyen Huu Tuong 0x0 0x0 0x0 0x1 &UIC3 0xc 0x4 /* swizzled int A */ 380b5594a77SVinh Nguyen Huu Tuong 0x0 0x0 0x0 0x2 &UIC3 0xd 0x4 /* swizzled int B */ 381b5594a77SVinh Nguyen Huu Tuong 0x0 0x0 0x0 0x3 &UIC3 0xe 0x4 /* swizzled int C */ 382b5594a77SVinh Nguyen Huu Tuong 0x0 0x0 0x0 0x4 &UIC3 0xf 0x4 /* swizzled int D */>; 383b5594a77SVinh Nguyen Huu Tuong }; 3849c6b2353SMai La 3859c6b2353SMai La MSI: ppc4xx-msi@C10000000 { 3869c6b2353SMai La compatible = "amcc,ppc4xx-msi", "ppc4xx-msi"; 3879c6b2353SMai La reg = < 0xC 0x10000000 0x100 3889c6b2353SMai La 0xC 0x10000000 0x100>; 3899c6b2353SMai La sdr-base = <0x36C>; 3909c6b2353SMai La msi-data = <0x00004440>; 3919c6b2353SMai La msi-mask = <0x0000ffe0>; 3929c6b2353SMai La interrupts =<0 1 2 3 4 5 6 7>; 3939c6b2353SMai La interrupt-parent = <&MSI>; 3949c6b2353SMai La #interrupt-cells = <1>; 3959c6b2353SMai La #address-cells = <0>; 3969c6b2353SMai La #size-cells = <0>; 3979c6b2353SMai La msi-available-ranges = <0x0 0x100>; 3989c6b2353SMai La interrupt-map = < 3999c6b2353SMai La 0 &UIC3 0x18 1 4009c6b2353SMai La 1 &UIC3 0x19 1 4019c6b2353SMai La 2 &UIC3 0x1A 1 4029c6b2353SMai La 3 &UIC3 0x1B 1 4039c6b2353SMai La 4 &UIC3 0x1C 1 4049c6b2353SMai La 5 &UIC3 0x1D 1 4059c6b2353SMai La 6 &UIC3 0x1E 1 4069c6b2353SMai La 7 &UIC3 0x1F 1 4079c6b2353SMai La >; 4089c6b2353SMai La }; 4096edc323dSTirumala Marri }; 4106edc323dSTirumala Marri}; 411