1208560Sraj/* 2208560Sraj * MPC8555 CDS Device Tree Source 3208560Sraj * 4208560Sraj * Copyright 2006, 2008 Freescale Semiconductor Inc. All rights reserved 5208560Sraj * 6208560Sraj * Neither the name of Freescale Semiconductor, Inc nor the names of 7208560Sraj * its contributors may be used to endorse or promote products derived 8208560Sraj * from this software without specific prior written permission. 9208560Sraj * 10208560Sraj * Freescale hereby publishes it under the following licenses: 11208560Sraj * 12208560Sraj * BSD License 13208560Sraj * 14208560Sraj * Redistribution and use in source and binary forms, with or 15208560Sraj * without modification, are permitted provided that the following 16208560Sraj * conditions are met: 17208560Sraj * 18208560Sraj * Redistributions of source code must retain the above copyright 19208560Sraj * notice, this list of conditions and the following disclaimer. 20208560Sraj * 21208560Sraj * Redistributions in binary form must reproduce the above copyright 22208560Sraj * notice, this list of conditions and the following disclaimer in 23208560Sraj * the documentation and/or other materials provided with the 24208560Sraj * distribution. 25208560Sraj * 26208560Sraj * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 27208560Sraj * CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, 28208560Sraj * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 29208560Sraj * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 30208560Sraj * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS 31208560Sraj * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 32208560Sraj * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED 33208560Sraj * TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 34208560Sraj * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 35208560Sraj * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 36208560Sraj * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 37208560Sraj * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 38208560Sraj * POSSIBILITY OF SUCH DAMAGE. 39208560Sraj * 40208560Sraj * GNU General Public License, version 2 41208560Sraj * 42208560Sraj * This program is free software; you can redistribute it and/or 43208560Sraj * modify it under the terms of the GNU General Public License 44208560Sraj * as published by the Free Software Foundation; either version 2 45208560Sraj * of the License, or (at your option) any later version. 46208560Sraj * 47208560Sraj * This program is distributed in the hope that it will be useful, 48208560Sraj * but WITHOUT ANY WARRANTY; without even the implied warranty of 49208560Sraj * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 50208560Sraj * GNU General Public License for more details. 51208560Sraj * 52208560Sraj * You should have received a copy of the GNU General Public License 53208560Sraj * along with this program; if not, write to the Free Software 54208560Sraj * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 55208560Sraj * MA 02110-1301, USA. 56208560Sraj * 57208560Sraj * You may select the license of your choice. 58208560Sraj *------------------------------------------------------------------ 59208560Sraj * 60208560Sraj * $FreeBSD$ 61208560Sraj */ 62208560Sraj 63208560Sraj/dts-v1/; 64208560Sraj 65208560Sraj/ { 66208560Sraj model = "MPC8555CDS"; 67208560Sraj compatible = "MPC8555CDS", "MPC85xxCDS"; 68208560Sraj #address-cells = <1>; 69208560Sraj #size-cells = <1>; 70208560Sraj 71208560Sraj aliases { 72208560Sraj ethernet0 = &enet0; 73208560Sraj ethernet1 = &enet1; 74208560Sraj serial0 = &serial0; 75208560Sraj serial1 = &serial1; 76208560Sraj pci0 = &pci0; 77208560Sraj pci1 = &pci1; 78208560Sraj }; 79208560Sraj 80208560Sraj cpus { 81208560Sraj #address-cells = <1>; 82208560Sraj #size-cells = <0>; 83208560Sraj 84208560Sraj PowerPC,8555@0 { 85208560Sraj device_type = "cpu"; 86208560Sraj reg = <0x0>; 87208560Sraj d-cache-line-size = <32>; // 32 bytes 88208560Sraj i-cache-line-size = <32>; // 32 bytes 89208560Sraj d-cache-size = <0x8000>; // L1, 32K 90208560Sraj i-cache-size = <0x8000>; // L1, 32K 91208560Sraj timebase-frequency = <0>; // 33 MHz, from uboot 92208560Sraj bus-frequency = <0>; // 166 MHz 93208560Sraj clock-frequency = <0>; // 825 MHz, from uboot 94208560Sraj next-level-cache = <&L2>; 95208560Sraj }; 96208560Sraj }; 97208560Sraj 98208560Sraj memory { 99208560Sraj device_type = "memory"; 100215122Sraj reg = <0x0 0x10000000>; // 256M at 0x0 101208560Sraj }; 102208560Sraj 103208560Sraj localbus@e0005000 { 104208560Sraj #address-cells = <2>; 105208560Sraj #size-cells = <1>; 106208560Sraj compatible = "fsl,lbc", "fsl,elbc"; 107208560Sraj reg = <0xe0005000 0x1000>; 108208560Sraj interrupts = <19 2>; 109208560Sraj interrupt-parent = <&mpic>; 110208560Sraj 111208560Sraj ranges = <0x0 0x0 0xff800000 0x00800000 112208560Sraj 0x1 0x0 0xff000000 0x00800000 113208560Sraj 0x2 0x0 0xf8000000 0x00008000>; 114208560Sraj 115208560Sraj nor@0,0 { 116208560Sraj #address-cells = <1>; 117208560Sraj #size-cells = <1>; 118208560Sraj compatible = "cfi-flash"; 119208560Sraj reg = <0x0 0x0 0x00800000>; 120208560Sraj bank-width = <2>; 121208560Sraj device-width = <1>; 122208560Sraj }; 123208560Sraj 124208560Sraj nor@1,0 { 125208560Sraj #address-cells = <1>; 126208560Sraj #size-cells = <1>; 127208560Sraj compatible = "cfi-flash"; 128208560Sraj reg = <0x1 0x0 0x00800000>; 129208560Sraj bank-width = <2>; 130208560Sraj device-width = <1>; 131208560Sraj }; 132208560Sraj 133208560Sraj rtc@2,0 { 134208560Sraj #address-cells = <1>; 135208560Sraj #size-cells = <1>; 136208560Sraj compatible = "dallas,ds1553"; 137208560Sraj reg = <0x2 0x0 0x00008000>; 138208560Sraj bank-width = <1>; 139208560Sraj device-width = <1>; 140208560Sraj }; 141208560Sraj }; 142208560Sraj 143208560Sraj soc8555@e0000000 { 144208560Sraj #address-cells = <1>; 145208560Sraj #size-cells = <1>; 146208560Sraj device_type = "soc"; 147208560Sraj compatible = "simple-bus"; 148208560Sraj ranges = <0x0 0xe0000000 0x100000>; 149208560Sraj bus-frequency = <0>; 150208560Sraj 151208560Sraj ecm-law@0 { 152208560Sraj compatible = "fsl,ecm-law"; 153208560Sraj reg = <0x0 0x1000>; 154208560Sraj fsl,num-laws = <8>; 155208560Sraj }; 156208560Sraj 157208560Sraj ecm@1000 { 158208560Sraj compatible = "fsl,mpc8555-ecm", "fsl,ecm"; 159208560Sraj reg = <0x1000 0x1000>; 160208560Sraj interrupts = <17 2>; 161208560Sraj interrupt-parent = <&mpic>; 162208560Sraj }; 163208560Sraj 164208560Sraj memory-controller@2000 { 165208560Sraj compatible = "fsl,8555-memory-controller"; 166208560Sraj reg = <0x2000 0x1000>; 167208560Sraj interrupt-parent = <&mpic>; 168208560Sraj interrupts = <18 2>; 169208560Sraj }; 170208560Sraj 171208560Sraj L2: l2-cache-controller@20000 { 172208560Sraj compatible = "fsl,8555-l2-cache-controller"; 173208560Sraj reg = <0x20000 0x1000>; 174208560Sraj cache-line-size = <32>; // 32 bytes 175208560Sraj cache-size = <0x40000>; // L2, 256K 176208560Sraj interrupt-parent = <&mpic>; 177208560Sraj interrupts = <16 2>; 178208560Sraj }; 179208560Sraj 180208560Sraj i2c@3000 { 181208560Sraj #address-cells = <1>; 182208560Sraj #size-cells = <0>; 183208560Sraj cell-index = <0>; 184208560Sraj compatible = "fsl-i2c"; 185208560Sraj reg = <0x3000 0x100>; 186208560Sraj interrupts = <43 2>; 187208560Sraj interrupt-parent = <&mpic>; 188208560Sraj dfsrr; 189208560Sraj }; 190208560Sraj 191208560Sraj dma@21300 { 192208560Sraj #address-cells = <1>; 193208560Sraj #size-cells = <1>; 194208560Sraj compatible = "fsl,mpc8555-dma", "fsl,eloplus-dma"; 195208560Sraj reg = <0x21300 0x4>; 196208560Sraj ranges = <0x0 0x21100 0x200>; 197208560Sraj cell-index = <0>; 198208560Sraj dma-channel@0 { 199208560Sraj compatible = "fsl,mpc8555-dma-channel", 200208560Sraj "fsl,eloplus-dma-channel"; 201208560Sraj reg = <0x0 0x80>; 202208560Sraj cell-index = <0>; 203208560Sraj interrupt-parent = <&mpic>; 204208560Sraj interrupts = <20 2>; 205208560Sraj }; 206208560Sraj dma-channel@80 { 207208560Sraj compatible = "fsl,mpc8555-dma-channel", 208208560Sraj "fsl,eloplus-dma-channel"; 209208560Sraj reg = <0x80 0x80>; 210208560Sraj cell-index = <1>; 211208560Sraj interrupt-parent = <&mpic>; 212208560Sraj interrupts = <21 2>; 213208560Sraj }; 214208560Sraj dma-channel@100 { 215208560Sraj compatible = "fsl,mpc8555-dma-channel", 216208560Sraj "fsl,eloplus-dma-channel"; 217208560Sraj reg = <0x100 0x80>; 218208560Sraj cell-index = <2>; 219208560Sraj interrupt-parent = <&mpic>; 220208560Sraj interrupts = <22 2>; 221208560Sraj }; 222208560Sraj dma-channel@180 { 223208560Sraj compatible = "fsl,mpc8555-dma-channel", 224208560Sraj "fsl,eloplus-dma-channel"; 225208560Sraj reg = <0x180 0x80>; 226208560Sraj cell-index = <3>; 227208560Sraj interrupt-parent = <&mpic>; 228208560Sraj interrupts = <23 2>; 229208560Sraj }; 230208560Sraj }; 231208560Sraj 232208560Sraj enet0: ethernet@24000 { 233208560Sraj #address-cells = <1>; 234208560Sraj #size-cells = <1>; 235208560Sraj cell-index = <0>; 236208560Sraj device_type = "network"; 237208560Sraj model = "TSEC"; 238208560Sraj compatible = "gianfar"; 239208560Sraj reg = <0x24000 0x1000>; 240208560Sraj ranges = <0x0 0x24000 0x1000>; 241208560Sraj local-mac-address = [ 00 00 00 00 00 00 ]; 242208560Sraj interrupts = <29 2 30 2 34 2>; 243208560Sraj interrupt-parent = <&mpic>; 244208560Sraj tbi-handle = <&tbi0>; 245208560Sraj phy-handle = <&phy0>; 246208560Sraj 247208560Sraj mdio@520 { 248208560Sraj #address-cells = <1>; 249208560Sraj #size-cells = <0>; 250208560Sraj compatible = "fsl,gianfar-mdio"; 251208560Sraj reg = <0x520 0x20>; 252208560Sraj 253208560Sraj phy0: ethernet-phy@0 { 254208560Sraj interrupt-parent = <&mpic>; 255208560Sraj interrupts = <5 1>; 256208560Sraj reg = <0x0>; 257208560Sraj device_type = "ethernet-phy"; 258208560Sraj }; 259208560Sraj phy1: ethernet-phy@1 { 260208560Sraj interrupt-parent = <&mpic>; 261208560Sraj interrupts = <5 1>; 262208560Sraj reg = <0x1>; 263208560Sraj device_type = "ethernet-phy"; 264208560Sraj }; 265208560Sraj tbi0: tbi-phy@11 { 266208560Sraj reg = <0x11>; 267208560Sraj device_type = "tbi-phy"; 268208560Sraj }; 269208560Sraj }; 270208560Sraj }; 271208560Sraj 272208560Sraj enet1: ethernet@25000 { 273208560Sraj #address-cells = <1>; 274208560Sraj #size-cells = <1>; 275208560Sraj cell-index = <1>; 276208560Sraj device_type = "network"; 277208560Sraj model = "TSEC"; 278208560Sraj compatible = "gianfar"; 279208560Sraj reg = <0x25000 0x1000>; 280208560Sraj ranges = <0x0 0x25000 0x1000>; 281208560Sraj local-mac-address = [ 00 00 00 00 00 00 ]; 282208560Sraj interrupts = <35 2 36 2 40 2>; 283208560Sraj interrupt-parent = <&mpic>; 284208560Sraj tbi-handle = <&tbi1>; 285208560Sraj phy-handle = <&phy1>; 286208560Sraj 287208560Sraj mdio@520 { 288208560Sraj #address-cells = <1>; 289208560Sraj #size-cells = <0>; 290208560Sraj compatible = "fsl,gianfar-tbi"; 291208560Sraj reg = <0x520 0x20>; 292208560Sraj 293208560Sraj tbi1: tbi-phy@11 { 294208560Sraj reg = <0x11>; 295208560Sraj device_type = "tbi-phy"; 296208560Sraj }; 297208560Sraj }; 298208560Sraj }; 299208560Sraj 300208560Sraj serial0: serial@4500 { 301208560Sraj cell-index = <0>; 302208560Sraj device_type = "serial"; 303208560Sraj compatible = "ns16550"; 304208560Sraj reg = <0x4500 0x100>; // reg base, size 305208560Sraj clock-frequency = <0>; // should we fill in in uboot? 306208560Sraj interrupts = <42 2>; 307208560Sraj interrupt-parent = <&mpic>; 308208560Sraj }; 309208560Sraj 310208560Sraj serial1: serial@4600 { 311208560Sraj cell-index = <1>; 312208560Sraj device_type = "serial"; 313208560Sraj compatible = "ns16550"; 314208560Sraj reg = <0x4600 0x100>; // reg base, size 315208560Sraj clock-frequency = <0>; // should we fill in in uboot? 316208560Sraj interrupts = <42 2>; 317208560Sraj interrupt-parent = <&mpic>; 318208560Sraj }; 319208560Sraj 320208560Sraj crypto@30000 { 321208560Sraj compatible = "fsl,sec2.0"; 322208560Sraj reg = <0x30000 0x10000>; 323208560Sraj interrupts = <45 2>; 324208560Sraj interrupt-parent = <&mpic>; 325208560Sraj fsl,num-channels = <4>; 326208560Sraj fsl,channel-fifo-len = <24>; 327208560Sraj fsl,exec-units-mask = <0x7e>; 328208560Sraj fsl,descriptor-types-mask = <0x01010ebf>; 329208560Sraj }; 330208560Sraj 331208560Sraj mpic: pic@40000 { 332208560Sraj interrupt-controller; 333208560Sraj #address-cells = <0>; 334208560Sraj #interrupt-cells = <2>; 335208560Sraj reg = <0x40000 0x40000>; 336208560Sraj compatible = "chrp,open-pic"; 337208560Sraj device_type = "open-pic"; 338208560Sraj }; 339208560Sraj 340208560Sraj cpm@80000 { 341208560Sraj #address-cells = <1>; 342208560Sraj #size-cells = <1>; 343208560Sraj compatible = "fsl,mpc8555-cpm", "fsl,cpm2"; 344208560Sraj reg = <0x80000 0x20000>; 345208560Sraj interrupts = <46 2>; 346209903Sraj interrupt-parent = <&mpic>; 347208560Sraj }; 348208560Sraj }; 349208560Sraj 350208560Sraj pci0: pci@e0008000 { 351208560Sraj interrupt-map-mask = <0x1f800 0x0 0x0 0x7>; 352208560Sraj interrupt-map = < 353208560Sraj 354208560Sraj /* IDSEL 0x10 */ 355208560Sraj 0x8000 0x0 0x0 0x1 &mpic 0x0 0x1 356208560Sraj 0x8000 0x0 0x0 0x2 &mpic 0x1 0x1 357208560Sraj 0x8000 0x0 0x0 0x3 &mpic 0x2 0x1 358208560Sraj 0x8000 0x0 0x0 0x4 &mpic 0x3 0x1 359208560Sraj 360208560Sraj /* IDSEL 0x11 */ 361208560Sraj 0x8800 0x0 0x0 0x1 &mpic 0x0 0x1 362208560Sraj 0x8800 0x0 0x0 0x2 &mpic 0x1 0x1 363208560Sraj 0x8800 0x0 0x0 0x3 &mpic 0x2 0x1 364208560Sraj 0x8800 0x0 0x0 0x4 &mpic 0x3 0x1 365208560Sraj 366208560Sraj /* IDSEL 0x12 (Slot 1) */ 367208560Sraj 0x9000 0x0 0x0 0x1 &mpic 0x0 0x1 368208560Sraj 0x9000 0x0 0x0 0x2 &mpic 0x1 0x1 369208560Sraj 0x9000 0x0 0x0 0x3 &mpic 0x2 0x1 370208560Sraj 0x9000 0x0 0x0 0x4 &mpic 0x3 0x1 371208560Sraj 372208560Sraj /* IDSEL 0x13 (Slot 2) */ 373208560Sraj 0x9800 0x0 0x0 0x1 &mpic 0x1 0x1 374208560Sraj 0x9800 0x0 0x0 0x2 &mpic 0x2 0x1 375208560Sraj 0x9800 0x0 0x0 0x3 &mpic 0x3 0x1 376208560Sraj 0x9800 0x0 0x0 0x4 &mpic 0x0 0x1 377208560Sraj 378208560Sraj /* IDSEL 0x14 (Slot 3) */ 379208560Sraj 0xa000 0x0 0x0 0x1 &mpic 0x2 0x1 380208560Sraj 0xa000 0x0 0x0 0x2 &mpic 0x3 0x1 381208560Sraj 0xa000 0x0 0x0 0x3 &mpic 0x0 0x1 382208560Sraj 0xa000 0x0 0x0 0x4 &mpic 0x1 0x1 383208560Sraj 384208560Sraj /* IDSEL 0x15 (Slot 4) */ 385208560Sraj 0xa800 0x0 0x0 0x1 &mpic 0x3 0x1 386208560Sraj 0xa800 0x0 0x0 0x2 &mpic 0x0 0x1 387208560Sraj 0xa800 0x0 0x0 0x3 &mpic 0x1 0x1 388208560Sraj 0xa800 0x0 0x0 0x4 &mpic 0x2 0x1 389208560Sraj 390208560Sraj /* Bus 1 (Tundra Bridge) */ 391208560Sraj /* IDSEL 0x12 (ISA bridge) */ 392208560Sraj 0x19000 0x0 0x0 0x1 &mpic 0x0 0x1 393208560Sraj 0x19000 0x0 0x0 0x2 &mpic 0x1 0x1 394208560Sraj 0x19000 0x0 0x0 0x3 &mpic 0x2 0x1 395208560Sraj 0x19000 0x0 0x0 0x4 &mpic 0x3 0x1>; 396208560Sraj interrupt-parent = <&mpic>; 397208560Sraj interrupts = <24 2>; 398208560Sraj bus-range = <0 0>; 399208560Sraj ranges = <0x2000000 0x0 0x80000000 0x80000000 0x0 0x10000000 400208560Sraj 0x1000000 0x0 0x0 0xfee00000 0x0 0x00010000>; 401208560Sraj clock-frequency = <66666666>; 402208560Sraj #interrupt-cells = <1>; 403208560Sraj #size-cells = <2>; 404208560Sraj #address-cells = <3>; 405208560Sraj reg = <0xe0008000 0x1000>; 406208560Sraj compatible = "fsl,mpc8540-pci"; 407208560Sraj device_type = "pci"; 408208560Sraj 409208560Sraj i8259@19000 { 410208560Sraj interrupt-controller; 411208560Sraj device_type = "interrupt-controller"; 412208560Sraj reg = <0x19000 0x0 0x0 0x0 0x1>; 413208560Sraj #address-cells = <0>; 414208560Sraj #interrupt-cells = <2>; 415208560Sraj compatible = "chrp,iic"; 416208560Sraj interrupts = <1>; 417208560Sraj interrupt-parent = <&pci0>; 418208560Sraj }; 419208560Sraj }; 420208560Sraj 421208560Sraj pci1: pci@e0009000 { 422208560Sraj interrupt-map-mask = <0xf800 0x0 0x0 0x7>; 423208560Sraj interrupt-map = < 424208560Sraj 425208560Sraj /* IDSEL 0x15 */ 426208560Sraj 0xa800 0x0 0x0 0x1 &mpic 0xb 0x1 427208560Sraj 0xa800 0x0 0x0 0x2 &mpic 0xb 0x1 428208560Sraj 0xa800 0x0 0x0 0x3 &mpic 0xb 0x1 429208560Sraj 0xa800 0x0 0x0 0x4 &mpic 0xb 0x1>; 430208560Sraj interrupt-parent = <&mpic>; 431208560Sraj interrupts = <25 2>; 432208560Sraj bus-range = <0 0>; 433208560Sraj ranges = <0x2000000 0x0 0x90000000 0x90000000 0x0 0x10000000 434208560Sraj 0x1000000 0x0 0x0 0xfee10000 0x0 0x00010000>; 435208560Sraj clock-frequency = <66666666>; 436208560Sraj #interrupt-cells = <1>; 437208560Sraj #size-cells = <2>; 438208560Sraj #address-cells = <3>; 439208560Sraj reg = <0xe0009000 0x1000>; 440208560Sraj compatible = "fsl,mpc8540-pci"; 441208560Sraj device_type = "pci"; 442208560Sraj }; 443208560Sraj}; 444