1c6d4d657SGrant Likely/* 2c6d4d657SGrant Likely * Lite5200B board Device Tree Source 3c6d4d657SGrant Likely * 405cbbc69SGrant Likely * Copyright 2006-2007 Secret Lab Technologies Ltd. 5c6d4d657SGrant Likely * Grant Likely <grant.likely@secretlab.ca> 6c6d4d657SGrant Likely * 7c6d4d657SGrant Likely * This program is free software; you can redistribute it and/or modify it 8c6d4d657SGrant Likely * under the terms of the GNU General Public License as published by the 9c6d4d657SGrant Likely * Free Software Foundation; either version 2 of the License, or (at your 10c6d4d657SGrant Likely * option) any later version. 11c6d4d657SGrant Likely */ 12c6d4d657SGrant Likely 13121361f7SGrant Likely/* 14121361f7SGrant Likely * WARNING: Do not depend on this tree layout remaining static just yet. 15121361f7SGrant Likely * The MPC5200 device tree conventions are still in flux 16121361f7SGrant Likely * Keep an eye on the linuxppc-dev mailing list for more details 17121361f7SGrant Likely */ 18121361f7SGrant Likely 19c6d4d657SGrant Likely/ { 2005cbbc69SGrant Likely model = "fsl,lite5200b"; 2105cbbc69SGrant Likely // revision = "1.0"; 22dcccb37eSGrant Likely compatible = "fsl,lite5200b","generic-mpc5200"; 23c6d4d657SGrant Likely #address-cells = <1>; 24c6d4d657SGrant Likely #size-cells = <1>; 25c6d4d657SGrant Likely 26c6d4d657SGrant Likely cpus { 27c6d4d657SGrant Likely #address-cells = <1>; 28c6d4d657SGrant Likely #size-cells = <0>; 29c6d4d657SGrant Likely 30c6d4d657SGrant Likely PowerPC,5200@0 { 31c6d4d657SGrant Likely device_type = "cpu"; 32c6d4d657SGrant Likely reg = <0>; 33c6d4d657SGrant Likely d-cache-line-size = <20>; 34c6d4d657SGrant Likely i-cache-line-size = <20>; 35c6d4d657SGrant Likely d-cache-size = <4000>; // L1, 16K 36c6d4d657SGrant Likely i-cache-size = <4000>; // L1, 16K 37c6d4d657SGrant Likely timebase-frequency = <0>; // from bootloader 38c6d4d657SGrant Likely bus-frequency = <0>; // from bootloader 39c6d4d657SGrant Likely clock-frequency = <0>; // from bootloader 40c6d4d657SGrant Likely }; 41c6d4d657SGrant Likely }; 42c6d4d657SGrant Likely 43c6d4d657SGrant Likely memory { 44c6d4d657SGrant Likely device_type = "memory"; 45c6d4d657SGrant Likely reg = <00000000 10000000>; // 256MB 46c6d4d657SGrant Likely }; 47c6d4d657SGrant Likely 48c6d4d657SGrant Likely soc5200@f0000000 { 4905cbbc69SGrant Likely model = "fsl,mpc5200b"; 500d0f4bc7SDomen Puncer compatible = "mpc5200"; 5105cbbc69SGrant Likely revision = ""; // from bootloader 52c6d4d657SGrant Likely device_type = "soc"; 53f0c8ac80SKumar Gala ranges = <0 f0000000 0000c000>; 54f0c8ac80SKumar Gala reg = <f0000000 00000100>; 55c6d4d657SGrant Likely bus-frequency = <0>; // from bootloader 5605cbbc69SGrant Likely system-frequency = <0>; // from bootloader 57c6d4d657SGrant Likely 58c6d4d657SGrant Likely cdm@200 { 59dcccb37eSGrant Likely compatible = "mpc5200b-cdm","mpc5200-cdm"; 60c6d4d657SGrant Likely reg = <200 38>; 61c6d4d657SGrant Likely }; 62c6d4d657SGrant Likely 635c1992f8SKumar Gala mpc5200_pic: pic@500 { 64c6d4d657SGrant Likely // 5200 interrupts are encoded into two levels; 65c6d4d657SGrant Likely interrupt-controller; 66c6d4d657SGrant Likely #interrupt-cells = <3>; 67c6d4d657SGrant Likely device_type = "interrupt-controller"; 68dcccb37eSGrant Likely compatible = "mpc5200b-pic","mpc5200-pic"; 69c6d4d657SGrant Likely reg = <500 80>; 70c6d4d657SGrant Likely }; 71c6d4d657SGrant Likely 72c6d4d657SGrant Likely gpt@600 { // General Purpose Timer 73dcccb37eSGrant Likely compatible = "mpc5200b-gpt","mpc5200-gpt"; 74c6d4d657SGrant Likely device_type = "gpt"; 7505cbbc69SGrant Likely cell-index = <0>; 76c6d4d657SGrant Likely reg = <600 10>; 77c6d4d657SGrant Likely interrupts = <1 9 0>; 785c1992f8SKumar Gala interrupt-parent = <&mpc5200_pic>; 7905cbbc69SGrant Likely has-wdt; 80c6d4d657SGrant Likely }; 81c6d4d657SGrant Likely 82c6d4d657SGrant Likely gpt@610 { // General Purpose Timer 83dcccb37eSGrant Likely compatible = "mpc5200b-gpt","mpc5200-gpt"; 84c6d4d657SGrant Likely device_type = "gpt"; 8505cbbc69SGrant Likely cell-index = <1>; 86c6d4d657SGrant Likely reg = <610 10>; 87c6d4d657SGrant Likely interrupts = <1 a 0>; 885c1992f8SKumar Gala interrupt-parent = <&mpc5200_pic>; 89c6d4d657SGrant Likely }; 90c6d4d657SGrant Likely 91c6d4d657SGrant Likely gpt@620 { // General Purpose Timer 92dcccb37eSGrant Likely compatible = "mpc5200b-gpt","mpc5200-gpt"; 93c6d4d657SGrant Likely device_type = "gpt"; 9405cbbc69SGrant Likely cell-index = <2>; 95c6d4d657SGrant Likely reg = <620 10>; 96c6d4d657SGrant Likely interrupts = <1 b 0>; 975c1992f8SKumar Gala interrupt-parent = <&mpc5200_pic>; 98c6d4d657SGrant Likely }; 99c6d4d657SGrant Likely 100c6d4d657SGrant Likely gpt@630 { // General Purpose Timer 101dcccb37eSGrant Likely compatible = "mpc5200b-gpt","mpc5200-gpt"; 102c6d4d657SGrant Likely device_type = "gpt"; 10305cbbc69SGrant Likely cell-index = <3>; 104c6d4d657SGrant Likely reg = <630 10>; 105c6d4d657SGrant Likely interrupts = <1 c 0>; 1065c1992f8SKumar Gala interrupt-parent = <&mpc5200_pic>; 107c6d4d657SGrant Likely }; 108c6d4d657SGrant Likely 109c6d4d657SGrant Likely gpt@640 { // General Purpose Timer 110dcccb37eSGrant Likely compatible = "mpc5200b-gpt","mpc5200-gpt"; 111c6d4d657SGrant Likely device_type = "gpt"; 11205cbbc69SGrant Likely cell-index = <4>; 113c6d4d657SGrant Likely reg = <640 10>; 114c6d4d657SGrant Likely interrupts = <1 d 0>; 1155c1992f8SKumar Gala interrupt-parent = <&mpc5200_pic>; 116c6d4d657SGrant Likely }; 117c6d4d657SGrant Likely 118c6d4d657SGrant Likely gpt@650 { // General Purpose Timer 119dcccb37eSGrant Likely compatible = "mpc5200b-gpt","mpc5200-gpt"; 120c6d4d657SGrant Likely device_type = "gpt"; 12105cbbc69SGrant Likely cell-index = <5>; 122c6d4d657SGrant Likely reg = <650 10>; 123c6d4d657SGrant Likely interrupts = <1 e 0>; 1245c1992f8SKumar Gala interrupt-parent = <&mpc5200_pic>; 125c6d4d657SGrant Likely }; 126c6d4d657SGrant Likely 127c6d4d657SGrant Likely gpt@660 { // General Purpose Timer 128dcccb37eSGrant Likely compatible = "mpc5200b-gpt","mpc5200-gpt"; 129c6d4d657SGrant Likely device_type = "gpt"; 13005cbbc69SGrant Likely cell-index = <6>; 131c6d4d657SGrant Likely reg = <660 10>; 132c6d4d657SGrant Likely interrupts = <1 f 0>; 1335c1992f8SKumar Gala interrupt-parent = <&mpc5200_pic>; 134c6d4d657SGrant Likely }; 135c6d4d657SGrant Likely 136c6d4d657SGrant Likely gpt@670 { // General Purpose Timer 137dcccb37eSGrant Likely compatible = "mpc5200b-gpt","mpc5200-gpt"; 138c6d4d657SGrant Likely device_type = "gpt"; 13905cbbc69SGrant Likely cell-index = <7>; 140c6d4d657SGrant Likely reg = <670 10>; 141c6d4d657SGrant Likely interrupts = <1 10 0>; 1425c1992f8SKumar Gala interrupt-parent = <&mpc5200_pic>; 143c6d4d657SGrant Likely }; 144c6d4d657SGrant Likely 145c6d4d657SGrant Likely rtc@800 { // Real time clock 146dcccb37eSGrant Likely compatible = "mpc5200b-rtc","mpc5200-rtc"; 147c6d4d657SGrant Likely device_type = "rtc"; 148c6d4d657SGrant Likely reg = <800 100>; 149c6d4d657SGrant Likely interrupts = <1 5 0 1 6 0>; 1505c1992f8SKumar Gala interrupt-parent = <&mpc5200_pic>; 151c6d4d657SGrant Likely }; 152c6d4d657SGrant Likely 153c6d4d657SGrant Likely mscan@900 { 154c6d4d657SGrant Likely device_type = "mscan"; 155dcccb37eSGrant Likely compatible = "mpc5200b-mscan","mpc5200-mscan"; 15605cbbc69SGrant Likely cell-index = <0>; 157c6d4d657SGrant Likely interrupts = <2 11 0>; 1585c1992f8SKumar Gala interrupt-parent = <&mpc5200_pic>; 159c6d4d657SGrant Likely reg = <900 80>; 160c6d4d657SGrant Likely }; 161c6d4d657SGrant Likely 162c6d4d657SGrant Likely mscan@980 { 163c6d4d657SGrant Likely device_type = "mscan"; 164dcccb37eSGrant Likely compatible = "mpc5200b-mscan","mpc5200-mscan"; 16505cbbc69SGrant Likely cell-index = <1>; 1660d0f4bc7SDomen Puncer interrupts = <2 12 0>; 1675c1992f8SKumar Gala interrupt-parent = <&mpc5200_pic>; 168c6d4d657SGrant Likely reg = <980 80>; 169c6d4d657SGrant Likely }; 170c6d4d657SGrant Likely 171c6d4d657SGrant Likely gpio@b00 { 172dcccb37eSGrant Likely compatible = "mpc5200b-gpio","mpc5200-gpio"; 173c6d4d657SGrant Likely reg = <b00 40>; 174c6d4d657SGrant Likely interrupts = <1 7 0>; 1755c1992f8SKumar Gala interrupt-parent = <&mpc5200_pic>; 176c6d4d657SGrant Likely }; 177c6d4d657SGrant Likely 1780d0f4bc7SDomen Puncer gpio-wkup@c00 { 179dcccb37eSGrant Likely compatible = "mpc5200b-gpio-wkup","mpc5200-gpio-wkup"; 180c6d4d657SGrant Likely reg = <c00 40>; 181c6d4d657SGrant Likely interrupts = <1 8 0 0 3 0>; 1825c1992f8SKumar Gala interrupt-parent = <&mpc5200_pic>; 183c6d4d657SGrant Likely }; 184c6d4d657SGrant Likely 185c6d4d657SGrant Likely spi@f00 { 186c6d4d657SGrant Likely device_type = "spi"; 187dcccb37eSGrant Likely compatible = "mpc5200b-spi","mpc5200-spi"; 188c6d4d657SGrant Likely reg = <f00 20>; 189c6d4d657SGrant Likely interrupts = <2 d 0 2 e 0>; 1905c1992f8SKumar Gala interrupt-parent = <&mpc5200_pic>; 191c6d4d657SGrant Likely }; 192c6d4d657SGrant Likely 193c6d4d657SGrant Likely usb@1000 { 194c6d4d657SGrant Likely device_type = "usb-ohci-be"; 195dcccb37eSGrant Likely compatible = "mpc5200b-ohci","mpc5200-ohci","ohci-be"; 196c6d4d657SGrant Likely reg = <1000 ff>; 197c6d4d657SGrant Likely interrupts = <2 6 0>; 1985c1992f8SKumar Gala interrupt-parent = <&mpc5200_pic>; 199c6d4d657SGrant Likely }; 200c6d4d657SGrant Likely 201c6d4d657SGrant Likely bestcomm@1200 { 202c6d4d657SGrant Likely device_type = "dma-controller"; 203dcccb37eSGrant Likely compatible = "mpc5200b-bestcomm","mpc5200-bestcomm"; 204c6d4d657SGrant Likely reg = <1200 80>; 205c6d4d657SGrant Likely interrupts = <3 0 0 3 1 0 3 2 0 3 3 0 206c6d4d657SGrant Likely 3 4 0 3 5 0 3 6 0 3 7 0 207c6d4d657SGrant Likely 3 8 0 3 9 0 3 a 0 3 b 0 208c6d4d657SGrant Likely 3 c 0 3 d 0 3 e 0 3 f 0>; 2095c1992f8SKumar Gala interrupt-parent = <&mpc5200_pic>; 210c6d4d657SGrant Likely }; 211c6d4d657SGrant Likely 212c6d4d657SGrant Likely xlb@1f00 { 213dcccb37eSGrant Likely compatible = "mpc5200b-xlb","mpc5200-xlb"; 214c6d4d657SGrant Likely reg = <1f00 100>; 215c6d4d657SGrant Likely }; 216c6d4d657SGrant Likely 217c6d4d657SGrant Likely serial@2000 { // PSC1 218c6d4d657SGrant Likely device_type = "serial"; 219dcccb37eSGrant Likely compatible = "mpc5200b-psc-uart","mpc5200-psc-uart"; 220c6d4d657SGrant Likely port-number = <0>; // Logical port assignment 22105cbbc69SGrant Likely cell-index = <0>; 222c6d4d657SGrant Likely reg = <2000 100>; 223c6d4d657SGrant Likely interrupts = <2 1 0>; 2245c1992f8SKumar Gala interrupt-parent = <&mpc5200_pic>; 225c6d4d657SGrant Likely }; 226c6d4d657SGrant Likely 22705cbbc69SGrant Likely // PSC2 in ac97 mode example 22805cbbc69SGrant Likely //ac97@2200 { // PSC2 22905cbbc69SGrant Likely // device_type = "sound"; 230dcccb37eSGrant Likely // compatible = "mpc5200b-psc-ac97","mpc5200-psc-ac97"; 23105cbbc69SGrant Likely // cell-index = <1>; 23205cbbc69SGrant Likely // reg = <2200 100>; 23305cbbc69SGrant Likely // interrupts = <2 2 0>; 2345c1992f8SKumar Gala // interrupt-parent = <&mpc5200_pic>; 23505cbbc69SGrant Likely //}; 236c6d4d657SGrant Likely 237c6d4d657SGrant Likely // PSC3 in CODEC mode example 23805cbbc69SGrant Likely //i2s@2400 { // PSC3 23905cbbc69SGrant Likely // device_type = "sound"; 24005cbbc69SGrant Likely // compatible = "mpc5200b-psc-i2s"; //not 5200 compatible 24105cbbc69SGrant Likely // cell-index = <2>; 24205cbbc69SGrant Likely // reg = <2400 100>; 24305cbbc69SGrant Likely // interrupts = <2 3 0>; 2445c1992f8SKumar Gala // interrupt-parent = <&mpc5200_pic>; 24505cbbc69SGrant Likely //}; 246c6d4d657SGrant Likely 24705cbbc69SGrant Likely // PSC4 in uart mode example 248c6d4d657SGrant Likely //serial@2600 { // PSC4 249c6d4d657SGrant Likely // device_type = "serial"; 250dcccb37eSGrant Likely // compatible = "mpc5200b-psc-uart","mpc5200-psc-uart"; 25105cbbc69SGrant Likely // cell-index = <3>; 252c6d4d657SGrant Likely // reg = <2600 100>; 253c6d4d657SGrant Likely // interrupts = <2 b 0>; 2545c1992f8SKumar Gala // interrupt-parent = <&mpc5200_pic>; 255c6d4d657SGrant Likely //}; 256c6d4d657SGrant Likely 25705cbbc69SGrant Likely // PSC5 in uart mode example 258c6d4d657SGrant Likely //serial@2800 { // PSC5 259c6d4d657SGrant Likely // device_type = "serial"; 260dcccb37eSGrant Likely // compatible = "mpc5200b-psc-uart","mpc5200-psc-uart"; 26105cbbc69SGrant Likely // cell-index = <4>; 262c6d4d657SGrant Likely // reg = <2800 100>; 263c6d4d657SGrant Likely // interrupts = <2 c 0>; 2645c1992f8SKumar Gala // interrupt-parent = <&mpc5200_pic>; 265c6d4d657SGrant Likely //}; 266c6d4d657SGrant Likely 26705cbbc69SGrant Likely // PSC6 in spi mode example 26805cbbc69SGrant Likely //spi@2c00 { // PSC6 26905cbbc69SGrant Likely // device_type = "spi"; 270dcccb37eSGrant Likely // compatible = "mpc5200b-psc-spi","mpc5200-psc-spi"; 27105cbbc69SGrant Likely // cell-index = <5>; 27205cbbc69SGrant Likely // reg = <2c00 100>; 27305cbbc69SGrant Likely // interrupts = <2 4 0>; 2745c1992f8SKumar Gala // interrupt-parent = <&mpc5200_pic>; 27505cbbc69SGrant Likely //}; 276c6d4d657SGrant Likely 277c6d4d657SGrant Likely ethernet@3000 { 278c6d4d657SGrant Likely device_type = "network"; 279dcccb37eSGrant Likely compatible = "mpc5200b-fec","mpc5200-fec"; 280b147d93dSDomen Puncer reg = <3000 400>; 281c6d4d657SGrant Likely mac-address = [ 02 03 04 05 06 07 ]; // Bad! 282c6d4d657SGrant Likely interrupts = <2 5 0>; 2835c1992f8SKumar Gala interrupt-parent = <&mpc5200_pic>; 284b147d93dSDomen Puncer phy-handle = <&phy0>; 285b147d93dSDomen Puncer }; 286b147d93dSDomen Puncer 287b147d93dSDomen Puncer mdio@3000 { 288b147d93dSDomen Puncer #address-cells = <1>; 289b147d93dSDomen Puncer #size-cells = <0>; 290b147d93dSDomen Puncer device_type = "mdio"; 291b147d93dSDomen Puncer compatible = "mpc5200b-fec-phy"; 292b147d93dSDomen Puncer reg = <3000 400>; // fec range, since we need to setup fec interrupts 293b147d93dSDomen Puncer interrupts = <2 5 0>; // these are for "mii command finished", not link changes & co. 294b147d93dSDomen Puncer interrupt-parent = <&mpc5200_pic>; 295b147d93dSDomen Puncer 296b147d93dSDomen Puncer phy0:ethernet-phy@0 { 297b147d93dSDomen Puncer device_type = "ethernet-phy"; 298b147d93dSDomen Puncer reg = <0>; 299b147d93dSDomen Puncer }; 300c6d4d657SGrant Likely }; 301c6d4d657SGrant Likely 302c6d4d657SGrant Likely ata@3a00 { 303c6d4d657SGrant Likely device_type = "ata"; 304dcccb37eSGrant Likely compatible = "mpc5200b-ata","mpc5200-ata"; 305c6d4d657SGrant Likely reg = <3a00 100>; 306c6d4d657SGrant Likely interrupts = <2 7 0>; 3075c1992f8SKumar Gala interrupt-parent = <&mpc5200_pic>; 308c6d4d657SGrant Likely }; 309c6d4d657SGrant Likely 310c6d4d657SGrant Likely i2c@3d00 { 311c6d4d657SGrant Likely device_type = "i2c"; 312dcccb37eSGrant Likely compatible = "mpc5200b-i2c","mpc5200-i2c","fsl-i2c"; 31305cbbc69SGrant Likely cell-index = <0>; 314c6d4d657SGrant Likely reg = <3d00 40>; 315c6d4d657SGrant Likely interrupts = <2 f 0>; 3165c1992f8SKumar Gala interrupt-parent = <&mpc5200_pic>; 3175cae84c9SDomen Puncer fsl5200-clocking; 318c6d4d657SGrant Likely }; 319c6d4d657SGrant Likely 320c6d4d657SGrant Likely i2c@3d40 { 321c6d4d657SGrant Likely device_type = "i2c"; 322dcccb37eSGrant Likely compatible = "mpc5200b-i2c","mpc5200-i2c","fsl-i2c"; 32305cbbc69SGrant Likely cell-index = <1>; 324c6d4d657SGrant Likely reg = <3d40 40>; 325c6d4d657SGrant Likely interrupts = <2 10 0>; 3265c1992f8SKumar Gala interrupt-parent = <&mpc5200_pic>; 3275cae84c9SDomen Puncer fsl5200-clocking; 328c6d4d657SGrant Likely }; 329c6d4d657SGrant Likely sram@8000 { 330c6d4d657SGrant Likely device_type = "sram"; 331dcccb37eSGrant Likely compatible = "mpc5200b-sram","mpc5200-sram","sram"; 332c6d4d657SGrant Likely reg = <8000 4000>; 333c6d4d657SGrant Likely }; 334c6d4d657SGrant Likely }; 3351b3c5cdaSKumar Gala 3361b3c5cdaSKumar Gala pci@f0000d00 { 3371b3c5cdaSKumar Gala #interrupt-cells = <1>; 3381b3c5cdaSKumar Gala #size-cells = <2>; 3391b3c5cdaSKumar Gala #address-cells = <3>; 3401b3c5cdaSKumar Gala device_type = "pci"; 341dcccb37eSGrant Likely compatible = "mpc5200b-pci","mpc5200-pci"; 3421b3c5cdaSKumar Gala reg = <f0000d00 100>; 3431b3c5cdaSKumar Gala interrupt-map-mask = <f800 0 0 7>; 3441b3c5cdaSKumar Gala interrupt-map = <c000 0 0 1 &mpc5200_pic 0 0 3 // 1st slot 3451b3c5cdaSKumar Gala c000 0 0 2 &mpc5200_pic 1 1 3 3461b3c5cdaSKumar Gala c000 0 0 3 &mpc5200_pic 1 2 3 3471b3c5cdaSKumar Gala c000 0 0 4 &mpc5200_pic 1 3 3 3481b3c5cdaSKumar Gala 3491b3c5cdaSKumar Gala c800 0 0 1 &mpc5200_pic 1 1 3 // 2nd slot 3501b3c5cdaSKumar Gala c800 0 0 2 &mpc5200_pic 1 2 3 3511b3c5cdaSKumar Gala c800 0 0 3 &mpc5200_pic 1 3 3 3521b3c5cdaSKumar Gala c800 0 0 4 &mpc5200_pic 0 0 3>; 3531b3c5cdaSKumar Gala clock-frequency = <0>; // From boot loader 3541b3c5cdaSKumar Gala interrupts = <2 8 0 2 9 0 2 a 0>; 3551b3c5cdaSKumar Gala interrupt-parent = <&mpc5200_pic>; 3561b3c5cdaSKumar Gala bus-range = <0 0>; 3571b3c5cdaSKumar Gala ranges = <42000000 0 80000000 80000000 0 20000000 3581b3c5cdaSKumar Gala 02000000 0 a0000000 a0000000 0 10000000 3591b3c5cdaSKumar Gala 01000000 0 00000000 b0000000 0 01000000>; 3601b3c5cdaSKumar Gala }; 361c6d4d657SGrant Likely}; 362